普通用户无法su到root用户的解决方法
今日在使用普通用户登录后切换root账号遇到问题,在切换root账号时输入正确的密码但提示无权限:
[4a@hljydywfzcsxt1-5 ~]$ su - root
Password:
su: Permission denied
经过测试使用正确的密码可以直接登录root账号,这说明我们的密码没有问题。问题应该出在这个普通账号的设置上。
在网上查询各种资料后发现这与这台主机做了安全设置有关系。
问题在于设置PAM模块,PAM(Pluggable Authentication Modules)负责系统中很多应用程序的登录认证,包括sshd、vsftpd、su等。例如ssh登录认证配置文件是/etc/pam.d/sshd用户可根据需要配置相应的认证规则。你也可以为自己的其他应用配置PAM认证。
查看/etc/pam.d/su文件,我们可以发下有这么一行
auth sufficient pam_wheel.so trust use_uid
这就是控制普通用户是否可以进行su操作的选项。
解决方法有2种:
1、登录root账号,输入usermod -G wheel 用户名
将无法su的普通用户加入到wheel组
2、将auth sufficient pam_wheel.so trust use_uid 这一行注释掉。
例如#auth required pam_wheel.so use_uid