su命令的隐患——用户提权

我们知道,在多用户的Linux操作系统中可以使用su命令来进行用户的切换

[root@promote ~]# su - test 
Last login: Thu Nov 14 07:11:33 EST 2019 on pts/0
[test@promote ~]$ 

注:su username 和 su - username的区别是切换用户后su - username会直接跳到user的家目录,而su username还会留在切换用户前的目录。

可以看到,利用su命令从root用户切换到了test用户,同样,任何一个用户在知道其他用户密码的情况下(root用户切换其他用户不需要密码)也可以用su命令去切换。

但这样也带来一个问题,任何用户都可以通过su命令无限次地去尝试切换为其他用户以试出其他用户的密码,显然这样是不安全的,应该给su命令进行一些限制。那就要用到我们的pam_wheel认证模块。

pam_wheel认证模块只允许个别用户使用su命令来进行用户的切换:将授权使用su命令的用户添加到wheel组中,修改/etc/pam.d/su认证配置文件来启动pam_wheel认证。

用户添加到wheel组

[root@promote ~]# gpasswd -a test wheel		#将wheel组设置成test的附加组
Adding user test to group wheel
[root@promote ~]# id test
uid=1000(test) gid=1000(test) groups=1000(test),10(wheel)

修改/etc/pam.d/su文件,开启pam_wheel认证

[root@promote ~]# sed -i '/pam_wheel.so use_uid/s/#//' /etc/pam.d/su	#将含有pam_wheel.so use_uid的行中的"#"去掉
[root@promote ~]# cat /etc/pam.d/su
#%PAM-1.0
auth		sufficient	pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth		sufficient	pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
auth		required	pam_wheel.so use_uid	#去掉注释,开启pam_wheel认证
auth		substack	system-auth
auth		include		postlogin
account		sufficient	pam_succeed_if.so uid = 0 use_uid quiet
account		include		system-auth
password	include		system-auth
session		include		system-auth
session		include		postlogin
session		optional	pam_xauth.so

用test用户su一下root用户来验证

[test@promote ~]$ su - root 
Password: 
Last login: Thu Nov 14 07:19:10 EST 2019 on pts/0
[root@promote ~]# 				#成功登录到root,说明可以使用su命令

下面我们来创建一个用户test1,他不属于wheel组,看看能否使用su命令

[test1@promote ~]$ su - test
Password: 
su: Permission denied
[test1@promote ~]$ su - root
Password: 
su: Permission denied

登录失败,提示信息为permission denied,说明不能使用su命令,pam_wheel认证起作用了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值