我在 SLES 11SP4 上配置了 LDAP 服务器(使用 YaST),并创建了 3 个用户。我可以从 root 用户 su 到任何用户,但无法以任何用户身份登录或更改其密码。
当我尝试在 /var/log/messages 中登录(使用 su 作为标准用户)时,我有:
suse1 su: pam_ldap: error trying to bind as user "uid=user3,dc=linux" (Invalid credentials)
suse1 su: FAILED SU (to user3) root on /dev/pts/0
当我尝试更改 /var/log/messages 中的密码时:
suse1 passwd[5864]: pam_unix2(passwd:chauthtok): user "user1" does not exist in /etc/passwd or NIS
suse1 passwd[5864]: pam_ldap: error trying to bind as user "uid=user1,dc=linux" (Invalid credentials)
我的/etc/pam.d/common-password:
password requisite pam_pwcheck.so nullok cracklib
password sufficient pam_unix2.so use_authtok nullok
password required pam_ldap.so try_first_pass use_authtok
我的/etc/pam.d/common-auth:
auth required pam_env.so
auth sufficient pam_unix2.so
auth required pam_ldap.so use_first_pass
我无法找出问题所在,并且我使用的密码肯定是正确的。感谢您的任何提示。
答案1
就我而言,如果有帮助的话,我忘记将ldap
模块添加到/etc/nsswitch.conf
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.
passwd: compat ldap
group: compat ldap
shadow: compat ldap
gshadow: files ldap