一.切换用户命令su
su 用户名 切换用户,只是新起一个进程,和之前的进程没有关系,之前进程并没有消失,
su - 用户名 以普通用户的初始环境进行切换普通用户,这么切换,环境变量会重置成普通用户的环境变量。
root切普户不用密码,普户切root需要root密码,这种切换方式一般不使用,不规范。
二.pam_wheel认证
如果任意一个普通用户拿到root密码都可以切换到root用户,是非常危险的。
我们想要让个别用户有权利切换root,而其他用户无权访问root,这时就需要启动pam_wheel认证
(1).查看程序是否支持pam模块
ls /etc/pam.d | grup su
(2).启用pam_wheel认证模块
vim /etc/pam.d/su
(3).将注释去掉,启用功能
(4).查看安全组wheel
(5).新建账户zhangsan
(5).添加用户到安全组中
gpasswd -a zhangsan wheel
三.sudo提权
不让你知道root的密码,还能让你干root才能干的活,前提是要在sudo的配置文件/etc/sudoers里进行授权。/etc/sudoers配置文件的安全级别非常高,root都是只读权限,想去修改sudo的配置文件只能用命令visudo,如果用chmod将它的权限改了,那么整个sudo就不能用了。
总结:sudo申请提权的前提是visudo里要给普户授权了才能申请提权 。如果root授权了就提权成功,每次申请提权都要输普户自己的密码。
sudo -l 看当前用户有什么权限。。第一个ALL是所有ip地址,第二个ALL是所有主机名,一般我们可以不写,第三个ALL是所有命令。如果我们给普户yu授权了所有权限,一般来说root能用的权限普通提权用户也都能用。我们也可设置它只能在某个ip或网段登录,或者设定它只能用哪些命令和不能用哪些命令格式/sbin/* , ! /sbin/reboot , ! /sbin/.......先允许它/sbin/的所有都能用,再用逗号隔开,叹号取反后跟不让他使用的命令。先允许,再拒绝,这就是权限授权规则。在工作中,授权要最小化。
命令visudo 或者 vim /etc/sudoers
记录格式:用户 主机名列表=命令程序列
(1).新建一个用户lisi,确定lisi权限
(2).修改配置文件
visudo
(3).修改权限
格式:lisi localhost=/usr/sbin/useradd
(4).验证lisi用户能否使用useradd命令
sudo useradd wangwu