Linux系统中的用户管理(二)
五、用户和用户组建立及删除
1.监控用户建立的命令:watch -n 数字
watch -n 1 :每秒钟执行一次,n表示频率,1表示每秒
watch -n 1 “ tail -n 3 /etc/passwd /etc/group " ##监控命令,使tail命令每隔一段时间执行一次
【ctrl】+【c】:退出监控界面
2.useradd -u / -g / -G / -c / -d / -M / -s username
(1)useradd -u id username ##指定用户的用户id
(2)useradd -g id username ##指定用户的初始组id
(3)useradd -G id username ##指定用户的附加组id
(4)useradd -c id username ##指定用户说明
(5)useradd -d 地址 username ##指定用户家目录
(5)useradd -M username ##不建立家目录
(6)useradd -s 地址 username ##指定用户shell
3.userdel -r username ##删除用户的系统配置文件
4.groupadd (-g id)groupname ##建立用户组并指定用户组id / 组建立
groupadd groupname ##建立组
groupadd -g id 组名 ##建立用户组并指定用户组id
5.groupdel groupname ##组删除
六、用户和用户组的信息管理
1.usermod -l /-u /-g /-G /-aG /-c /-d /-md /-s /-L /-U
(1)usermod -l 更改后用户名 原始用户名 ###更改用户名称
(2)usermod -u id username ###更改用户id
(3)usermod -g id username ###更改主组id
(4)usermod -G id username ###更改用户附加组身份
(5)usermod -aG id username ###添加用户附加组身份
(6)usermod -G “” username ###删除用户附加组身份
(7)usermod -c “内容” username ###更改用户说明
(8)usermod -c “” username ###删除用户说明
(9)usermod -d ###更改家目录指向
(10)usermod -md ###更改家目录指向同时更改家目录名称
(11)usermod -s ###更改默认shell
(12)usermod -L ####冻结账号
(13)usermod -U ####解锁
2.groupmod -g ##更改用户组id
七、用户认证信息管理
/etc/shadow文件内容说明:
9列
用户名称 :用户密码的加密字符 :用户密码最后一次被更改时间 :密码最短有效期 :密码最长有效期 :密码过期前警告期 :账号非活跃期 :账号到期时间 :用户自定义(未使用)
1.用户名称
passwd -S 用户名 ###查看密码状态
2.用户密码的加密字符
passwd 用户名 ##超级用户更改密码
passwd ##普通用户更改密码
非交互式修改密码:只有超级用户可以执行“echo 密码 | passwd --stdin 用户名”
3.冻结认证
(1)passwd -l 用户名 ##冻结账号认证
(2)passwd -u 用户名 ##解冻账号认证
4.密码删除
passwd -d 用户名 ###
5.密码使用天数
(1)passwd -e 用户名 ##修改密码使用天数,默认使用时间为0
(2)chage -d 数字 用户名 ##修改密码使用天数,从1970年1月1日算起
5.密码最短有效期
(1)passwd -n 数字 用户名 ###用户在数字天内不能改密码
(2)chage -m 数字 用户名 ###用户在数字天内不能改密码
6.密码最长有效期
(1)passwd -x 数字 用户名 ###数字天内必须修改密码
(2)chage -M 数字 用户名 ##数字天内必须更新密码否则会被冻结
7.密码过期前警告期
(1)passwd -w 数字 用户名 ##账号过期前警告
(2)chage -W 数字 用户名 ###账号过期前警告
8.认证非活跃天数
(1)passwd -i 数字 用户名 ##修改认证非活跃天数
(2)chage -i 数字 用户名 ###修改认证非活跃天数
(3)-1 表示无认证非活跃天数
9.账号认证到期时间
chage -E “2020-05-11” ##到2020-05-11这天账号会被冻结
10.未启用功能
八、用户权力下放
在系统中普通用户无法执行系统管理命令,如果需要普通用户执行系统管理动作,需要root用户来进行授权
三种情况
username hostname =(newusername) 命令地址
westoslee用户 在localhost .localdomain主机=(超级用户身份) 执行useradd命令
lee用户 在localhost .localdomain主机=(超级用户身份) 执行useradd命令和userdel命令
west用户 在localhost .localdomain主机=(超级用户身份) 免密 执行useradd命令和userdel命令
九、Test
在系统中完成以下用户操作
1.建立用户组 shengchan,caiwu,jishu 并满足以下要求:
(1)shengchan组id为8000;
(2)caiwu组id为8001;
(3)jishu组id为8002
groupadd -g 8000 shengchan
groupadd -g 8001 caiwu
groupadd -g 8002 jishu
2.建立 westoslee , linux , lee , westosadmin 等用户完成以下要求:
(1)westoslee用户的附加组为shengchan和jishu;
(2)lee的主组为caiwu,附加组为技术,lee的uid和gid必须一致;
(3)linux为系统账号不能直接被操作者使用;
(4)westosadmin用户不属于以上三个部门,但是可以在系统中自由的管理用户
(1) useradd -G shengchan,jishu westoslee
(2) useradd -g 8001 lee
usermod -aG 8002 lee
usermod -u 8001 lee
或 usermod -u 8001 -g 8001 -G jishu lee
(3) useradd -M -s /sbin/nologin linux
(4) useradd weestosadmin
visudo
3.要求:
(1)以上用户密码均为 westoslee , 并要求用户首次登陆时强制修改密码
(2)设定以上用户密码必须在30天内进行修改,并在过期前2天发出警告求接讲师王机
(1)
echo westoslee | passwd --stdin westoslee
echo westoslee | passwd --stdin lee
echo westoslee | passwd --stdin linux
echo westoslee | passwd --stdin westosadmin
passwd -e westoslee 或 chage -d 0 westoslee
passwd -e lee 或 chage -d 0 lee
passwd -e linux 或 chage -d 0 linux
passwd -e westosadmin 或 chage -d 0 westosadmin
(2)
passwd -x 30 -w 2 westoslee 或 chage -M 30 -W 2 westoslee
passwd -x 30 -w 2 lee 或 chage -M 30 -W 2 lee
passwd -x 30 -w 2 linux 或 chage -M 30 -W 2 linux
passwd -x 30 -w 2 westosadmin 或 chage -M 30 -W 2 westosadmin
测试:
id westoslee
id linux
id lee
id westosadmin
tail /etc/shadow:查看 5字段密码最长有效期 和 6字段过期警告