![无法使用 passwd 更改用户密码。错误“passwd:抱歉”](https://linux22.com/image/598697/%E6%97%A0%E6%B3%95%E4%BD%BF%E7%94%A8%20passwd%20%E6%9B%B4%E6%94%B9%E7%94%A8%E6%88%B7%E5%AF%86%E7%A0%81%E3%80%82%E9%94%99%E8%AF%AF%E2%80%9Cpasswd%EF%BC%9A%E6%8A%B1%E6%AD%89%E2%80%9D.png)
我有一个 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(黄页)。然后查看问题是否已消失。