![是什么原因导致运行 passwd 和使用该密码登录之间存在延迟?](https://linux22.com/image/66230/%E6%98%AF%E4%BB%80%E4%B9%88%E5%8E%9F%E5%9B%A0%E5%AF%BC%E8%87%B4%E8%BF%90%E8%A1%8C%20passwd%20%E5%92%8C%E4%BD%BF%E7%94%A8%E8%AF%A5%E5%AF%86%E7%A0%81%E7%99%BB%E5%BD%95%E4%B9%8B%E9%97%B4%E5%AD%98%E5%9C%A8%E5%BB%B6%E8%BF%9F%EF%BC%9F.png)
我有一台 RHEL 6.6 服务器,我发现它有奇怪的行为。当我使用命令更改密码时passwd
,/etc/passwd
文件会毫无问题地更新(通过时间戳检查确认)。但是,我需要大约 6 分钟才能使用该新密码。无论我使用login
、sshd
、 还是,都会存在这种延迟su
。
我继承了这个系统,但我找不到任何与其他不显示此行为的服务器不同的自定义内容。 AD 桥接已打开,但条目设置为使用files
第一个 before winbind
。
回答问题:没有ncsd
服务。sssd
已停止。我要更改的用户是本地用户,而不是AD(包括用户root
)。
答案1
检查您的 PAM 配置,具体来说,我认为问题是本地用户也有 kerberos 密码,并且 kerberos 检查在 pam 文件中位于 unix 之前,并且您有多个 kdc(由 AD 域控制器实现)并且您使用的 kdc 与您检查密码的 kdc 不同,用于更新密码,从而导致延迟,因为密码分布在多个控制器上。
答案2
/etc/shadow
如果密码存储在本地,那么密码应该存储在其中,对吗?
在 RHEL 上,这可能是由于缓存造成的。要么nscd
正在sssd
运行?
你可以尝试service nscd status
或者service sssd status
.如果您不需要其中任何一个并且它们正在运行,请尝试使用 重新启动或停止它们service nscd/sssd restart/stop
。
chkconfig SERVICE off
如果您不需要它们并且不希望它们在启动时启动,则可以使用它们。