su -l root 权限被拒绝

su -l root 权限被拒绝

我有centos7作为Windows 7上的虚拟机。除了root之外,我在那段时间创建了另一个用户“john”。一段时间后,我忘记了 root 密码,并将其重置为单用户提示符。从那时起,每当我以“john”身份登录时,我就无法执行此操作su -l root。我明白了permission denied。我以 root 身份登录并使用以下内容更改了 sudoer 文件:

root ALL=(ALL) ALL
admin ALL=/bin/su
Defaults: admin rootpw
john ALL=(ALL) ALL

然后我将 john 添加到wheel组并更新/etc/pam.d/su为:

auth required pam_wheel.so use_uid

su -l john另外,当我以“root”身份登录时,我无法执行此操作。感谢这里的任何帮助。

/var/log/secure显示:

Mar 6 .... localhost su: PAM(other) no module name supplied
Mar 6 .....localhost su: PAM(other) illegal module type: @include
Mar 6 .....localhost su: PAM pam_parse: expecting return value: [...common-session]

曼尼

答案1

看来您在 PAM 中可能存在一些配置错误。检查 /etc/pam.d 以了解最近的更改。为了快速检查,您可以执行以下操作:

for i in /etc/pam.d/* ; do rpm -qf $i; done | sort -u | sed -e 's/-[0-9]*.*//' | while read p; do echo "Verrifing package $p"; rpm -V $p ; done

这基本上会打印所有拥有 /etc/pam.d 中文件的包。接下来我使用 sed 删除它们的版本标记,最后我使用 rpm -V 它将磁盘上的文件与 rpm 包中的文件进行比较。

如果检测到任何更改,它将以以下形式打印在屏幕上:

S.5....T.  c /etc/pam.d/su-l

标志位的含义如下(man rpm

S 文件大小不同
M 模式不同(包括权限和文件类型)
5 摘要(以前的 MD5 总和)不同
D 设备主/次编号不匹配
L readLink(2) 路径不匹配
U 用户所有权不同
G组所有权不同
T mTime 不同
P能力不同

如果您发现有更改的文件,您可以检查它是否是您所做的更改以及是否有错误。您可能想要移动有问题的配置文件并重新安装拥有它的软件包yum reinstall pkg_name

相关内容