实验室用户增多,服务器上账户凌乱,sudo权限已经管不住了,为此特意学习了一下账户管理
1. 限制普通用户通过su 登录到root账户 使用root账户进行管理
- cd /etc/pam.d
- cp su su.backup
- vim su
把红线标注的地方注释去掉,可以查看上边的说明,去掉注释后,除非用户属于root组才可以使用su,或者可以在这一行后边添加 group=foo,这样foo组的成员可以使用su命令,但是有副作用。 验证:
2. 限制普通用户通过sudo su 登录到root账户
vi /etc/login.defs在文件末尾添加 SU_WHEEL_ONLY yes 保存文件- visudo
- 在用户后添加 !/bin/su ,如:zh ALL=(ALL:ALL) ALL ,!/bin/su
但是现在还有一个问题,普通用户拥有sudo权限,还可以修改visudo文件,这是无法忍受的。
3. 使用用户组管理权限(最佳方式)
- 创建用户组(groupadd命令),-g 指定一个GID
- 添加(新建)用户到该用户组(gpasswd命令) ,如Student、sudo等
下面为admin 、sudo用户组权限设置,限制用户组admin,sudo禁止使用命令passwd,visudo,useradd,userdel等命令,同时可以使用其它命令
%admin ALL=/usr/sbin/*,/sbin/*,/usr/bin/*,!/usr/bin/passwd,!/usr/sbin/visudo,!/usr/sbin/useradd,!/usr/sbin/userdel
%sudo ALL=/usr/sbin/*,/sbin/*,/usr/bin/*,!/usr/bin/passwd,!/usr/sbin/visudo,!/usr/sbin/useradd,!/usr/sbin/userdel
把你要限制的用户组(如sudo)改为上边这样就可以了。
|