在 CentOS 上通过 pam_ldap 使用 SSHA 对 ApacheDS 进行身份验证

在 CentOS 上通过 pam_ldap 使用 SSHA 对 ApacheDS 进行身份验证

当用户密码使用 SSHA 或 SHA 加密时,我很难让 CentOS 通过 ApacheDS 对用户进行身份验证。Crypt 工作正常,但由于其他服务的限制,我确实需要通过 SSHA 进行身份验证。

有其他人遇到过这个问题吗?我肯定我遗漏了什么,但我看不到允许 pam_ldap 通过 SSHA 进行身份验证的设置值。

干杯,-Ed

答案1

抱歉,我已经知道问题出在哪里了。

即使您没有在 /etc/pam.d/system-auth 中添加相关更改,您也可以使用 userPassword 中的 {crypt} 对 posixAccount 进行身份验证。我对此感到很困惑。

一旦我补充说:

auth        sufficient    pam_ldap.so use_first_pass
account     sufficient    pam_ldap.so
password    sufficient    pam_ldap.so ssha use_authtok use_first_pass
session     optional      pam_ldap.so

它可以很好地处理每个 posixAccount 中的 {SHA} 和 {SSHA} 加密的用户密码。

此外,奇怪的是,getent shadow <user>只有当您在 posixAccount 中有一个 {crypt} 加密的用户密码时,才会显示密码。其他情况下,它永远不会显示。

干杯,-Ed

相关内容