RH124-Linux系统中的用户管理

Linux系统中的用户管理

一.用户及用户组存在的意义:

1.用户存在的意义:

对于一个系统而言,系统的资源是有限的,要合理的分配资源,在解决资源分配时必须要有多个资源相互配合。

项目 作用
account 身份
author 授权
auth 认证

上述表格是Linux系统中的3A认证,3A机制组成系统中最底层的安全架构

2.用户组存在的意义:

用户组是一个逻辑容器,对用户进行归类和统一授权

二.用户及用户组在系统中的存在方式:

[1]电脑对数字敏感<----->人类对于字符串敏感
电脑中用户存在id<----->人类中每个人都有自己的名称
所以:id就是名称
[2]必须要记录到文件当中用户才能存在:
用户就是 /etc/passwd文件中的一行字符
用户组的存在方式就是 /etc/group文件中的第一行
[3]用户id范围:0-65535(2^16 -1)
id为0:linux超级用户
id为1-999:linux系统自用
id为1000-65535:用户级
[4]用户设定规则都在 /etc/login.defs

三.用户切换:

1.用户查看:

对于用户的查看,常用whoami和id命令来查看:

命令 效果
whoami 查看当前用户
id 查看用户id信息
id -u 查看用户的用户id
id -g 查看用户主组id
id -G 查看用户的所有组id
id -n 显示名称

[1]whoami查看当前用户:
在这里插入图片描述
[2]id命令:
在这里插入图片描述

2.用户切换:

命令 效果
su - username 切换用户环境

注:
[1]如果root ----> 普通用户,不需要输入后者密码
普通用户 ----> root,需要输入密码
普通用户1 ----> 普通用户2,需要密码
[2]在做用户切换时,当使用完毕用户身份要记得及时用 exitlogout命令退出,不要在一个shell中反复执行su命令,在一个shell中反复执行su命令会导致环境错乱。
在这里插入图片描述

四.用户涉及到的系统配置文件:

文件名 内容
/etc/passwd 用户身份信息文件,内容:用户名称:用户密码:用户id:用户主组id:用户说明:用户家目录:用户默认shell
/etc/group 组身份信息文件:内容:组名称:组密码:组id:组的附加成员
/etc/shadow 用户认证信息文件
/etc/skel/.* 用户环境配置文件模板
/home/username 用户家目录

文件/etc/passwd,包含用户身份信息:
在这里插入图片描述
文件/etc/group,包含组身份信息:
在这里插入图片描述
文件/etc/shadow,包含用户信息认证:
在这里插入图片描述

五.用户和用户组的建立和删除:

使用/usr/sbin/中的useradd,userdel,groupadd,groupdel分别可以执行用户的建立和删除,以及用户组的建立和删除,在对于用户信息进行管理时可以监控/etc/passwd,对于用户组来说可以监控/etc/group,所以针对以下实验可以设置监控:

watch -n 1 "tail -n 4 /etc/passwd /etc/group;echo=======;ls -l /home"

对于用户的新建和删除:

命令 效果
useradd username 用户建立
useradd -u id username uid
useradd -g id username 主组id
useradd -G id username 附加组id
useradd -d dir username 指定用户家目录
useradd -M username 建立用户时不建立家目录
useradd -c word uaername 指定用户说明
useradd -s shell username 指定用shell
userdel -r username 删除用户 -r 删除用户的系统配置文件

对于用户组的建立和删除:

命令 效果
groupadd groupname 组建立
groupadd -g id groupname 指定组名称
groupdel groupname 组删除

实验:
[1]useradd新建用户以及参数效果,结合userdel一起实验:
useradd用于直接新建用户,在监控界面也会有所变化:
在这里插入图片描述
useradd -u id可以指定用户的uid:在这里插入图片描述
useradd -g id指定主组id:
在这里插入图片描述
useradd -G id指定副组id:
在这里插入图片描述
useradd -d dir指定用户家目录:
在这里插入图片描述
useradd -M不建立家目录:
在这里插入图片描述
useradd -c增加用户说明:
在这里插入图片描述
useradd -s shell指定shell:
在这里插入图片描述

[2]groupadd新建用户组,结合groupdel一起实验:
groupadd用于直接新建用户组:
在这里插入图片描述
groupadd -g id指定组的名称:
在这里插入图片描述

六.用户和用户组的信息管理:

usermod和groupmod可以用于用户信息和用户组信息的管理:

命令 效果
usermod -l 更改用户名称
usermod -u 更改用户id
usermod -g 更改主组id
usermod -G 更改副组id
usermod -aG 添加用户附加组身份
usermod -c 更改用户说明
usermod -d 更改家目录指向
usermod -md 更改家目录指向同时更改家目录名称
usermod -s 更改默认shell
usermod -L 冻结账号
usermod -U 解锁
groupmod -g 更改用户组id

usermod -l 更改用户名称:
在这里插入图片描述
usermod -u更改用户id:
在这里插入图片描述
usermod -g更改主组id:
在这里插入图片描述
usermod -G更改副组id以及usermod -aG添加用户附加组身份:
在这里插入图片描述
usermod -c更改用户说明:
在这里插入图片描述
usermod -d更改家目录指向:
在这里插入图片描述
usermod -md更改家目录指向同时更改家目录名称:
在这里插入图片描述
usermod -s更改默认shell:
在这里插入图片描述
usermod -L冻结账号以及usermod -U解锁:
在这里插入图片描述

七.用户认证信息管理:

1.用户名称:

命令 效果
passwd -S westos 查看密码状态

在这里插入图片描述

2.用户加密字符:

对于用户加密字符,在/etc/shadow可以查看用户认证信息,shadow文件只有root用户可以查看,其他用户都是只读,实际上该文件是用户登陆时与用户登陆名进行比对,用于系统查看:
对于/etc/shadow的说明:每一行内容共有8位有效位数:
在这里插入图片描述
格式为:用户名称:用户密码加密字符:用户密码最后一次被修改的时间:密码最短有效期:密码最长有效期:密码过期前:警告期:账号非活跃期:账号到期时间:用户自定义位(第九位)
所以在对于用户加密字符修改时应先设定监控,监控命令:

tail -n 3 /etc/shadow

对于用户的密码passwd:加密分为对称和非对称加密:非对称加密:加密跟解密的时采用的方式不同(如:开门)对称加密采用的方式相同(如:指纹)
普通用户只能用passwd进行交互修改密码,超级用户可以用非交互方法进行修改,用echo和管道修改
企业8系统passwd跟usermod在更改锁定状态时优先级相同,在企业8之前的系统中二者级别不同
以下介绍修改用户加密字符的指令:

命令 效果
passwd 用户更改密码

在这里插入图片描述

命令 操作
echo newpasswd 管道 passwd --stdin user 超级用户更改其他用户密码(非交互模式)

在这里插入图片描述

命令 效果
passwd -l user 冻结账号认证
passwd -u user 解锁账号认证
passwd -d user 密码删除
passwd -e user 修改默认使用时间
chage -d day user 修改默认使用时间为day(默认使用时间为从1970-1-1算到今天的时间,如果day是0,则账号必须修改密码才能登录系统
passwd -n day user 密码最短有效期,即在day内不可更改密码
chage -m day user 密码最短有效期,即在day内不可更改密码
passwd -x day user 密码最长有效期,即在day内用户必须更新密码否则会被冻结
chage -M day user 密码最长有效期,即在day内用户必须更新密码否则会被冻结
passwd -w day user 密码过期警告,day为账号过期前的警告时间
chage -W day user 密码过期警告,day为账号过期前的警告时间
passwd -i day user 认证非活跃天数,账号认证最大时间超过后还能用多久
chage -I day user 认证非活跃天数,账号认证最大时间超过后还能用多久
chage -E “2021-2-2” 到2021-2-2这天会被冻结

[1]passwd -l user冻结passwd -u user解冻:
在这里插入图片描述
[2]passwd -d user密码删除:
在这里插入图片描述
[3]passwd -e和chage -d修改默认使用时间:
在这里插入图片描述
[4]passwd -n和chage -m修改密码最短有效期:
在这里插入图片描述

[5]passwd -x和chage -M修改密码最长有效期:
在这里插入图片描述

[6]passwd -w和chage -W修改密码过期警告:
在这里插入图片描述

[7]passwd -i和chage -I修改认证非活跃天数:
在这里插入图片描述

[8]chage -E修改冻结时间:
在这里插入图片描述

八.用户权力下放:

在Linux系统中普通用户无法执行系统管理命令,如果需要普通用户执行系统管理动作,则需要root用户来进行授权,普通用户授权方式:“sudo”
作用:可以使普通用户使用指定的用户身份运行命令
授权方法:

命令 效果
visudo 编辑/etc/sudoers并提供语法检测

在文件的100行进行编辑,方便修改以及代码规范性编辑,修改格式:

username hostname=(newusername) NOPASSWD:/command1, /command2

注:/command1和/command2之间必须要用逗号+空格来隔开
例:westos用户在linux.westos.com使用超级用户免密执行useradd和userdel:

westos linux.westos.com=(root) NOPASSWD:/usr/sbin/useradd, /usr/sbin/userdel

测试实验:
权力下放至westos用户并执行useradd和userdel:
先在root用户下配置文件,后登录westos用户用sudo 相应命令执行相应命令:
先用root用户编辑用户权力配置文件:
在这里插入图片描述
再登录该用户并进行测试:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_46702804/article/details/112975265
今日推荐