[Linux安全运维] Linux用户以及权限管理

Linux用户以及权限管理

Linux用户和组

用户信息文件pasawd

/etc/passwd文件用于存储用户的信息

在这里插入图片描述

:用于分割不同的字段信息

字段示例(第一行)含义说明
1root用户名
2x密码占位符x代表用户有密码
存储在shadow文件中
无内容代表用户登录系统不需要密码
30UID身份标识
0,超级管理员
>1000,普通用户
1~1000,程序用户
40GID基本组ID
5root用户的身份信息大名(不用)
6/root用户家目录超管:/root
普通用户:/home/用户名
7/bin/bash默认命令解释器

用户密码文件shadow

在这里插入图片描述

主要构成与用户信息文件passwd类似,:用于分割不同的字段信息。

字段示例含义说明
1root用户名
2 5 5 5SXarRt…密码明文sha-512 HASH 散列算法
salt值
加密后的密文
3密码修改时间密码最近一次的修改时间(天)
40密码最短有效期最短有效期之内不能修改密码
root用户不受此限制
599999密码最长有效期密码可以使用的最长时间
建议设为90天
67密码过期时间密码过期前7天会有警告提示
7密码的不活跃期过了密码有效期但没有修改密码
不活跃期,仍然可以登录系统
8账户失效时间距离账户失效过去的时间(天)
9未分配功能

密码明文

密码明文分为三部分,使用$分割。

字段实例说明
15算法
2SXarRtT9F4OOitwd随机生成密钥
3eJxja8QLcrRnJp6W7tFKAF5ZHfBlmedGD/XArIht.ED明文

shadow密码爆破

使用python中的crypt包来进行爆破密码

在这里插入图片描述

组信息文件group

组信息存放在/etc/group中。

在这里插入图片描述

概念

先创建组,再创建用户

  • 用户必须有且只有一个基本组。
  • 若是创建用户的时候没有指定基本组,会先创建一个与用户同名的组再创建用户。
  • 一个用户可以有多个附加组。
  • 基本组内没有用户,才能被删除。

组信息格式:

dai:x:1000:dai
字段实例含义说明
1dai组名用户组的名称(字母和数字组成)
2x密码
31000GID组ID
4dai组群用户

组相关操作

  1. 建立组

    命令:groupadd命令:

    -g:指定gid号

    groupadd group1
    
    groupadd group1 -g 2000
    

    在这里插入图片描述
    在这里插入图片描述

  2. 删除组

    命令:groupdel命令:

    groupdel group1
    
  3. 更新组

    命令:groupmod命令:

    groupmod group1 -g 3000
    

    在这里插入图片描述

用户信息管理

用户管理

  1. 建立用户

    命令:useradd创建用户命令:

    -u:指定UID

    -g:指定基本组

    -G:指定附加组

    -s:指定用户登录的命令解释器

    -M:不创建家目录

  2. 修改用户

    命令:usermod修改用户命令

  3. 删除用户

    命令:userdel删除用户命令:

    -r:在删除用户的同时,删除家目录

用户密码管理

  1. 查看用户密码状态

    passwd -S [用户]
    

在这里插入图片描述

字段说明
dai用户名
PS密码状态:
NP,没有密码
PS,有可用密码
LK,密码锁定
1969-12-31创建时间
0最短有效期
99999最长有效期
7警告时间
-1失效时间:
-1,表示没有失效时间
  1. 删除用户密码

    passwd -d dai
    
  2. 设置用户密码

    passwd dai
    
  3. 锁定用户

    passwd -1 dai
    
  4. 解锁用户

    passwd -u dai
    

权限管理

权限查看

查看文件和目录权限:

​ 命令:ls -lh查看文件或目录的权限

在这里插入图片描述

字段示例说明
1drwxr -xr -x.文件或目录权限
23文件的节点数(文件)
子目录的个数(目录)
3root所有者
4root所有组
5101文件大小
6Jul修改时间
73
813:55
9abrt文件名/目录名

权限表达:

字段示例说明
1d文件类型:
d,目录
l,符号链接
c,字符型设备
b,块设备
2rwx所有者权限
3r -x所有组权限
4r -x其他用户权限
5.

权限说明:

权限文件目录
r列出内容
w修改目录中文件
x执行进入

权限验证:

命令:ls -l file用于权限验证

权限修改

命令:chmod

chmod 对象 运算符 权限 文件或目录

文件所属

命令:chown

-R:递归修改

chown 修改后的所属者 目标文件/目录

sudo

使哪一个用户执行哪一个命令

sudoers

配置文件:/etc/sudoers

在这里插入图片描述

sudoers文件:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/40331.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端三件套开发模版——产品介绍页面

今天有空,使用前端三件套html、css、js制作了一个非常简单的产品制作页面,与大家分享,希望可以满足大家应急的需求。本页面可以对产品进行“抢购”、对产品进行介绍,同时可以安排一张产品的高清大图,我也加入了页面的背…

JAVA实现二分查找,斐波那契数列,深度优先搜索详情教程【包含代码】

本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯 转载说明:务必注明来源(注明:作者:王文峰…

Ubuntu查看opencv版本c++

✗命令行中直接输入: pkg-config --modversion opencv✔命令行中直接输入: pkg-config --modversion opencv4注解:附上在markdown中打勾,对号和打叉。使用时将&和#之间的空格去掉,这里只是为了不让CSDN自动转换才…

vue3单个页面进行防抖节流

防抖 <template><button id"submitButton" ref"submitButton">GET</button> </template><script lang"ts" setup> import { ref, onMounted } from vue;// 防抖函数 function debounce(func: () > void, dela…

小白尝试某程机票信息爬取

实训课需要机票数据集&#xff0c;网上没有&#xff0c;所以我选择爬取数据 此过程可谓经历的九九八十一难&#xff0c;也参考了不少大佬的文章&#xff0c;在此特别记录一下 弯路不多说&#xff0c;我直接讲成功的方法 找到请求url 通过控制台&#xff0c;最后确认下面的 …

基于Java中的SSM框架实现物流管理系统项目【项目源码+论文说明】

基于Java中的SSM框架实现物流管理系统演示 摘要 企业的发展离不开物流的运输&#xff0c;在一个大型的企业中&#xff0c;商品的生产和建设&#xff0c;推广只是前期的一些工作&#xff0c;在后期的商品销售和物流方面的建立&#xff0c;才能让一个企业得到大力的发展。 企业…

基于Linux/ARM/单片机利用状态机对多个按键进行扫描实现短按或者长按

1&#xff09;Linux/ARM/单片机入门级按键扫描程序设计&#xff0c;分享给将要学习或者正在学习Linux/ARM/单片机开发的同学。 2&#xff09;内容属于原创&#xff0c;若转载&#xff0c;请说明出处。 3&#xff09;提供相关问题有偿答疑和支持。 学习Linux/ARM/单片机的同学…

docker部署简单的Kafka

文章目录 1. 拉取镜像2. 运行创建网络运行 ZooKeeper 容器运行 Kafka 容器 3. 简单的校验1. 检查容器状态2. 检查 ZooKeeper 日志3. 检查 Kafka 日志4. 使用 Kafka 命令行工具检查5. 创建和删除测试主题 1. 拉取镜像 选择一组兼容性好的版本。 docker pull bitnami/kafka:3.6…

Facebook:数字社交的引领者与创新者

自2004年诞生以来&#xff0c;Facebook从一个校园网络项目迅速成长为全球最大的社交媒体平台&#xff0c;彻底改变了我们与世界互动的方式。作为数字社交的引领者和创新者&#xff0c;Facebook不仅在技术层面上不断突破&#xff0c;也在社会和文化领域留下了深刻的印记。本文将…

【论文解读】CVPR2024:DUSt3R: Geometric 3D Vision Made Easy

论文“”https://openaccess.thecvf.com/content/CVPR2024/papers/Wang_DUSt3R_Geometric_3D_Vision_Made_Easy_CVPR_2024_paper.pdf 代码&#xff1a;GitHub - naver/dust3r: DUSt3R: Geometric 3D Vision Made Easy DUSt3R是一种旨在简化几何3D视觉任务的新框架。作者着重于…

Docker的架构原理

例子可以想象成一个买手机的场景 clien可以想象 你个人 docker deamon &#xff1a;店员 images&#xff1a; 样机 regisitry&#xff1a; 手机仓库 container: 使用的手机 首先我要在店员买一个手机&#xff0c;店员发现是样机&#xff0c;但是仓库有&#xff0c;&…

11 docker安装redis

目录 安装redis 1. 配置redis配置文件redis.conf 1.1. 找到redis.conf文件 1.2. 配置文件 2. 启动容器 3. 测试redis-cli连接 4. 证明docker使用的是指定的配置文件 安装redis 1. 配置redis配置文件redis.conf 1.1. 找到redis.conf文件 宿主机创建目录/app/redis在/a…

双非怎么进大厂?

https://www.nowcoder.com/share/jump/2764630231719583704126 大家好&#xff0c;我是白露啊。 今天我们要分享一个非常励志的故事&#xff0c;它证明了双非背景的毕业生也可以通过努力和坚持&#xff0c;进入梦想中的大厂。 下面是这位网友的真实经历&#xff0c;希望能为正…

泰安再见,泰山OFFICE还会再见

路过泰安&#xff0c;遇见彩虹。怀念和感恩在泰山信息科技的万丈豪情。 泰山OFFICE&#xff0c;还是要复活。

提升Android Studio开发体验:使用Kelp插件实现颜色和图标预览

提升Android Studio开发体验&#xff1a;使用Kelp插件实现颜色和图标预览 在Android开发中&#xff0c;自动补全功能对于提高开发效率至关重要。然而&#xff0c;默认的Android Studio并不能预览颜色和图标&#xff0c;这使得开发者在选择资源时常常感到困惑。本文将介绍如何使…

LNMP架构搭建Discuz论坛

LNMP架构是一种用于搭建Web服务器环境的常用架构&#xff0c;由Linux、Nginx、MySQL和PHP组成 组成功能Linux作为操作系统的基础&#xff0c;提供稳定的环境Nginx作为反向代理服务器&#xff0c;处理客户端的请求并将他们转发给后端的应用服务器MySQL作为关系型数据库管理系统…

7.2 数据结构

作业 #include <stdio.h> #include <string.h> #include <stdlib.h> struct student {char name[32];int age;double score; }s[3];void stu_input(struct student *s,int n) {printf("请输入%d个学生的信息&#xff08;姓名&#xff0c;年龄&#xff0…

【服装识别系统】图像识别+Python+人工智能+深度学习+算法模型+TensorFlow

一、介绍 服装识别系统&#xff0c;本系统作为图像识别方面的一个典型应用&#xff0c;使用Python作为主要编程语言&#xff0c;并通过TensorFlow搭建ResNet50卷积神经算法网络模型&#xff0c;通过对18种不同的服装&#xff08;‘黑色连衣裙’, ‘黑色衬衫’, ‘黑色鞋子’, …

Meta 发布 Meta 3D Gen 文本生成3D模型

Meta推出了 Meta 3D Gen &#xff08;3DGen&#xff09;&#xff0c;这是一种用于文本到 3D 资产生成的最先进的快速管道。3DGen 可在一分钟内提供具有高提示保真度和高质量 3D 形状和纹理的 3D 资产创建。 它支持基于物理的渲染 &#xff08;PBR&#xff09;&#xff0c;这是…

网口串口(Serialport)服务器

文章所用工具http://t.csdnimg.cn/2gIR8http://t.csdnimg.cn/2gIR8 搭建服务器界面 操作配置文件保存方式类 public string FileName { get; set; }public IniHelper(string name) {this.FileName name; //在构造函数中给路径赋值} 1 先导入c语言进行读取操作ini文件的方法 …