运维之Linux中的用户管理
1.用户切换
1.用户查看
whomai
查看当前用户
id
查看用户id信息
- -u 查看用户的用户id
- -g 查看用户主组id
- -G 查看用户所有的组的id
- -n 显示名称
2.用户切换
su - username
切换用户环境
如果root ----> commonuser 不需要后者密码
commonuser ----> root 需要密码
commonuser ----> commonuser 需要密码
注意:在做用户切换时当使用完毕用户身份及时退出
不要在一个shell中反复执行su命令
在一个shell中反复执行su命令会导致环境错乱
2.用户涉及到的系统配置文件
- /etc/passwd 用户身份信息文件
七列内容:用户名称;用户密码;用户id;用户主组id;用户说明;用户家目录;用户默认shell
- /etc/group 组身份信息文件
四列内容:组名称;组密码;组id;组的附加成员
- /etc/skel/.* 用户环境配置文件模板
- /etc/shadow 用户认证信息文件
- /home/username 用户家目录
3.用户和用户组建立及删除
建立监控用户的命令 |
---|
watch -n 1 “tail -n 4 /etc/passwd /etc/groupecho =======ls -l /home” |
- useradd username 用户建立
- -u id username uid 2**16=0-65535
(0 表示超级用户
1-200 系统预留id
201-999 系统用户
1000-60000 用户级用户
/etc/login.defs 记录用户建立的默认)
-g id username
主组id
-G id username
附加组id
-d dir username
指定用户家目录
-c word username
指定用户说明
-s shell username
指定用shell - userdel -r username
用户删除 -r 删除用户的系统配置文件 - groupadd groupname
组建立
-g id groupname
指定组名称 - groupdel groupname
组删除
示例:建立id为666,主组id为666的用户han
监控用户示例:
4.用户和用户组的信息管理
- usermod
-l更改用户名称
-u更改用户id
-g更改主组id
-G 更改用户附加组身份
-aG 添加用户附加组身份
-c 更改用户说明
-d 更改家目录指向
-md 更改家目录指向同时更改家目录名称
-s 更改默认shell
-L 冻结账号
-U 解锁 - groupmod -g
更改用户组id
示例:一顿操作猛如虎
5.用户认证信息管理
1.用户名称
- passwd -S username
查看密码状态
2.用户加密字符
更改密码
在超级用户里写个脚本给我的普通用户修改密码
监控用户han的密码状况:
- passwd username
只有root可以执行 “echo 123 | passwd --stdin username” - passwd
普通用户改密码
Changing password for user username.
Current password: #输入原始密码
New password: ##输入新密码(8位以上无序数字+无序字母组合)
Retype new password: ##重复输入
passwd: all authentication tokens updated successfully.
冻结认证
-
passwd -l username
冻结账号认证 -
passwd -u username
解锁账号认证
密码删除
-
passwd -d 用户 密码使用天数
*从1970-1-1算其到今天的时间 -
passwd -e username
修改默认使用时间为0
- chage -d 0 username
账号必须改密码才能登陆系统
密码最短有效期
- passwd -n 1 username
用户在1天内不能改密码
- chage -m 1 username
密码最长有效期
- passwd -x 40 username
40天内用户必须更新密码否则会被冻结 - chage -M 30 用户
密码过期警告
- passwd -w 2 username
账号过期前警告时间 - chage -W 1 username
认证非活跃天数
- passwd -i 2 用户
账号认证最大时间超过后还能用多久 - chage -I 1 用户
账号认证到期时间
- chage -E “2020-05-11” username
到2020-5-11这天账号会被冻结
未启用功能
6.用户权力下放
在系统中普通用户时无法执行系统管理命令的
如果需要普通用户执行系统管理动作那么需要root用户来进行授权
普通用户授权方式 “sudo”
作用:
可以使普通用户使用指定的用户身份运行命令
示例可以看到当前为普通用户时权利被拒绝
授权方法:
- visudo
用户名(uername) 主机名=(获得到的用户身份:root) 命令(代码)
此图所示授权方法需要密码
如果不想输入密码
- hostname 获取主机名