我有一个 FreeBSD 服务器,遇到了一个奇怪的问题。每次有人尝试更改密码时,都会出现此问题
~$ passwd
Changing local password for <USER>
Old Password:
passwd: sorry
根帐户不受影响。
我在日志中找不到任何线索。我没有使用 LDAP 进行身份验证,并且服务器在监狱中运行。
答案1
源代码非常简短和简单,只需片刻就能在 FreeBSDpasswd
实用程序中找到打印该特定消息的唯一位置。
具体来说,当 PAM 无法对用户进行身份验证时,就会发生这种情况。换句话说,以下情况之一:
- 您输入了错误的旧密码。
passwd
没有适当的权限;它必须是 setuid root。- 您的本地 PAM 设置严重损坏;如果出现这种情况,则没有人能够登录。
我猜是 2。
答案2
这可能是 NIS 的问题。检查 nsswitch.conf 并禁用 NIS 或 YP(黄页)。然后查看问题是否已消失。