Linux的wheel组:LINUX下用户使用su命令切换用户报错su: Permission denied
通常情况下,一般用户通过执行“su -”命令、输入正确的root密码,可以登录为root用户来对系统进行管理员级别的配置。
但是,为了更进一步加强系统的安全性,有必要建立一个管理员的 组,只允许这个组的用户来执行“su -”命令登录为root用户,而让其他组的用户即使执行“su -”、输入了正确的root密码,也无法登录为root用户。在UNIX和Linux下,这个组的名称通常为“wheel”。
一、禁止非whell组用户切换到root
1、 修改/etc/pam.d/su配置
[root@db01 ~]# vi /etc/pam.d/su ← 打开这个配置文件#auth required /lib/security/$ISA/pam_wheel.so use_uid ← 找到此行,去掉行首的“#”
2、 修改/etc/login.defs文件
[root@db01 ~]# echo “SU_WHEEL_ONLY yes” >> /etc/login.defs ← 添加语句到行末以上操作完成后,可以再建立一个新用户,然后用这个新建的用户测试会发现,没有加入到wheel组的用户,执行“su -”命令,即使输入了正确的root密码,也无法登录为root用户
3、 添加一个用户woo,测试是否可以切换到root
[root@db01 ~]# useradd woo[root@db01 ~]# passwd wooChanging password for user woo. New UNIX password: BAD PASSWORD: it is WAY too shortRetype new UNIX password: passwd: all authentication tokens updated successfull
4、通过woo用户登录尝试切换到root
[woo@db01 ~]$ su - root ← 即使密码输入正确也无法切换Password: su: incorrect password [woo@db01 ~]$
5: 把root用户加入wheel组再尝试切换,可以切换
[root@db01 ~]# usermod -G wheel woo ← 将普通用户woo加在管理员组wheel组中[root@db01 ~]# su - woo[woo@db01 ~]$ su - root ← 这时候我们看到是可以切换了 Password: [root@db01 ~]#
二、添加用户到管理员,禁止普通用户su到root
6、添加用户,并加入管理员组,禁止普通用户su到root,以配合之后安装OpenSSH/OpenSSL提升远程管理安全
[root@db01 ~]# useradd admin[root@db01 ~]# passwd adminChanging password for user admin.New UNIX password: BAD PASSWORD: it is too shortRetype new UNIX password: passwd: all authentication tokens updated successfully.[root@db01 ~]# usermod -G wheel admin (usermod -G wheel admin 或 usermod -G10 admin(10是wheel组的ID号)) [root@db01 ~]# su - admin [admin@db01 ~]$ su - rootPassword: [root@db01 ~]#
方法一:wheel组也可指定为其它组,编辑/etc/pam.d/su添加如下两行
[root@db01 ~]# vi /etc/pam.d/suauth sufficient /lib/security/pam_rootok.so debug auth required /lib/security/pam_wheel.so group=wheel
方法二:编辑/etc/pam.d/su将如下行#符号去掉
[root@db01 ~]# vi /etc/pam.d/su#RedHat#auth required /lib/security/$ISA/pam_wheel.so use_uid ← 找到此行,去掉行首的“#”#CentOS5#auth required pam_wheel.so use_uid ← 找到此行,去掉行首的“#”
#保存退出即可============
[root@db01 ~]# echo "SU_WHEEL_ONLY yes" >> /etc/login.defs ← 添加语句到行末
以orguser身份登录后执行命令
su - newuser
输入正确的密码以后,报错:
Account locked due to 216 failed logins
su: Permission denied
网上资料说检查su命令的setuid属性位,这个是正常的。
再查,发现系统为了提高安全性,有一个控制su权限的wheel组。
当su权限做了限制以后,只有wheel组的用户才能正常切换
所以,就把用户加到wheel组里面就行了:
usermod -aG wheel orguser
这个问题其实出现好久,但是没有找到其中的规律,
因为,我们一般是先登录用户A,这个用户属于wheel组。
然后A用户su切换到用户B,B用户不属于wheel组。
关键的地方来了:B用户此时可以su!
后来测试发现,登A切B可以SU,直接登B不可以!终于确定是wheel组的问题。
About Me
|
........................................................................................................................ ● 本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除 ● 本文在个人微 信公众号( DB宝)上有同步更新 ● QQ群号: 230161599 、618766405,微信群私聊 ● 个人QQ号(646634621),微 信号(db_bao),注明添加缘由 ● 于 2020年7月 在西安完成 ● 最新修改时间:2020年7月 ● 版权所有,欢迎分享本文,转载请保留出处 ........................................................................................................................ ● 小麦苗的微店: https://weidian.com/s/793741433?wfr=c&ifr=shopdetail ● 小麦苗出版的数据库类丛书: http://blog.itpub.net/26736162/viewspace-2142121/ ● 小麦苗OCP、OCM、高可用、DBA学习班: http://blog.itpub.net/26736162/viewspace-2148098/ ● 数据库笔试面试题库及解答: http://blog.itpub.net/26736162/viewspace-2134706/ ........................................................................................................................ 请扫描下面的二维码来关注小麦苗的微 信公众号( DB宝)及QQ群(230161599、618766405)、添加小麦苗微 信(db_bao), 学习最实用的数据库技术。
........................................................................................................................ |
