1.用户及用户组存在的意义
1)用户存在的意义
系统资源是有限的,如何合理分配系统资源?
在这个问题解决时必须要有多个资源来配合
(1)身份 account
(2)授权 author
(3)认证 authentication
3A机制:3A机制组成了系统中最底层安全架构
2)用户组存在的意义
用户组是一个逻辑容器
对用户进行归类和统一授权
2.用户及用户组在系统中的存在方式
电脑对数字敏感, 用户的ID
人类对字符串敏感 用户的名称
id和名称的对应关系必须要记录在文件中才能存在
用户就是/etc/passwd文件中的一行字符
用户组就是/etc/group文件中的一行字符
id 命令查看
3.用户切换
1) 用户ID的查看
*whomai 查看当前用户
*id 查看用户id信息
-u 查看用户的用户id
-g 查看用户的主组id
-G 查看用户所有组的id
-n 查看名称(不能单独使用,必须配合其他使用 -nu -ng...)
2) 用户切换
su - username
- 切换用户环境(到当前用户家目录)
username 如果是root到commonuser,不需要密码
commonuser到任何一个用户,需要密码
注意:在做用户切换时当使用完毕用户身份请及时退出(exit),不要在一个shell里反复执行su命令,执行会导致环境错乱,执行缓慢
4.用户涉及到的系统配置文件
/etc/passwd 用户身份信息文件
用户名称:用户密码(移植):用户id:用户主组id:用户说明:用户家目录:用户默认shell
/etc/group 组身份信息文件
组名称:组密码:组id:组的附加成员
/etc/skel/.* 用户环境配置模板,默认开启shell的配置
/etc/shadow 用户认证信息文件
/etc/username 用户家目录
5.用户和用户组建立及删除
监控用户建立的命令
watch -n 1 "tail -n 4 /etc/passwd /etc/group;echo ===;ls -l /home"
(1)用户建立
useradd username 用户建立
-u uid 2^16=0~65535
0 超级用户 1~200 系统预留账户 201~999 系统用户 1000~60000 用户级用户
/etc/login.defs 记录用户建立的默认规则
-d 用户家目录
-s 使用的shell
userdel -r username 用户删除 -r 删除用户系统配置文件
删除前:
删除后:
(2)组建立与删除
groupadd groupname 组建立
groupdel groupname 组删除
实验中,操作完一个用户参数,就删掉,在操作下一个
6.用户和用户组信息管理
usermod -l 改变组名称
usermod -g 更改主组id
usermod -aG 添加用户附加组身份
usermod -aG " " 去掉用户附加组身份
usermod -md 更改家目录指向和目录名称
7.用户认证信息管理
监控shadow watch -n 1 "tail -n 1 /etc/shadow;echo "===status==="; passwd -S lee
(1)用户名称
passwd -s westos 查看密码状态
passwd -u westos 解锁账号认证
(2)用户加密字符
passwd westos 只有root可以执行 "echo 123 | passwd --stdin westos"
passwd 普通用户改密码,要输入用户原始密码,在输入新密码,8位以上无序数字+无序字母组合
(3)密码使用天数
从1970年1月1日到今天
passwd -e westos 修改默认时间为0,改为0之后,登陆之前强制改一次密码
change -d 0 westos
(4)密码最短有效期
passwd -n 1 westos 改为1, 在一天内不能改密码
change -m 1 westos
(5)密码最长有效期
有效期内用户必须更新密码,否则会被冻结
passwd -x 20 westos
chage -M 20 westos
(6)密码过期警告
passwd -w 3 westos
change -W 3 westos 过期前几天警告
(7)认证非活跃天数
passwd -i westos 账号过期后还能使用的天数,账号认证最大时间超过后还能用多久
chage -I westos
(8)账号到期时间 到这个时间点马上过期
change -E “2020-9-18” 到这天账号会被冻结
8. 用户权力下放