用户smithj列在/etc/sudoers文件中:
root ALL=(ALL) ALL smithj ALL=(ALL) ALL
smithj通过腻子login到系统中。 他试图sudo但得到这个:
sudo adduser jonesjp Sorry, try again. Sorry, try again. Sorry, try again. sudo: 3 incorrect password attempts
他从来没有被提示input密码。 这是在CentOS 6上。
这曾经工作,但另一个pipe理员做了一些未知的变化,导致这一点,他不可用。
有些事情要检查:
让用户运行“sudo -l”。 这只是要求sudo告诉你你有什么权限。 如果你不能pipe理这个,authentication的根本问题可能与sudo本身是分开的。
将/etc/pam.d/sudo与其他function系统(或备份)进行比较。
将/etc/pam.d/system-auth与其他function系统(或备份)进行比较。 对这个系统的微妙变化可能会引起粗糙的故障排除问题。
查看/etc/pam.d/system-auth并查看是否正在使用pam_access.so模块。 如果是这样,您需要检查/etc/security/access.conf中是否允许smithj(除非另有文件由pam模块指定)。 一个潜在的棘手问题是,如果允许帐户从远程IP访问,而不是本地访问; 这最终允许远程login,但本地操作,如cron作业和sudoauthentication失败。
smithj是否通过密码login? 或通过键? 确保他们可以使用密码login以缩小问题的范围。 如果他们无法在任何地方成功使用他们的密码,请开始查看针对/ etc / passwd,/ etc / shadow,/etc/nsswitch.conf以及与您正在使用的目录相关的任何configuration文件的更改LDAP,NIS,AD)。
如果您有一个正在运行的caching守护进程(可能是nscd或sssd),请重新启动守护进程('sudo service nscd restart')。 这些守护进程因有问题而臭名昭着。
我在RH Like自定义系统上遇到了这个问题,文件/etc/pam.d/sudo不存在。
我只是链接到/etc/pam.d/system-auth,它的工作原理:
root@fws1:~ # ln -s /etc/pam.d/system-auth /etc/pam.d/sudo
检查你的/etc/pam.conf文件。 解决我不得不补充的问题
############################# # SUDO service ############################# sudo auth required pam_authtok_get.so sudo auth required pam_dhkeys.so sudo auth sufficient pam_unix_auth.so sudo auth required pam_login_auth.so sudo account required pam_roles.so sudo account required pam_projects.so sudo account required pam_unix_account.so sudo account required pam_login_auth.so
检查sudoers: files /etc/nsswitch.conf文件,然后检查用户帐户的/etc/passwd和/etc/shadow 。
我configuration了LDAP,并且用户不存在于本地文件中,因此服务器正在LDAP中寻找身份validation的错误。
Sudo和LDAPconfiguration是完全不同的主题。
我从零开始编译sudo for Linux有一个类似的问题。 有没有正确的安装pam,我不得不重新编译sudo –without-pam。 所以我解决了这个问题,肯定是安全的。