Я использую centos 6.7 для создания сервера LDAP, но пользователь по-прежнему не может изменить свой пароль.
Ошибка при попытке пользователя изменить пароль:
[john2@servergw ~]$ passwd
Changing password for user john2.
Enter login(LDAP) password:
New password:
Retype new password:
LDAP password information update failed: Insufficient access
Retype new password:
вот мой /etc/openldap/slapd.conf на стороне сервера:
access to attrs=userPassword,shadowLastChange
by self write
by anonymous auth
by * none
access to *
by self write
by * read
Мой /etc/pam.d/passwd на стороне клиента:
password required pam_cracklib.so retry=3
password sufficient pam_ldap.so use_authtok
password sufficient pam_unix.so nullok use_authtok md5 shadow
password required pam_deny.so
#%PAM-1.0
auth include system-auth
account include system-auth
password substack system-auth
Пожалуйста помоги
попробуйте использовать этот ACL в вашем файле olcDatabase = {2} bdb.ldif
olcAccess: {0}to attrs=userPassword by self write by dn.base="cn=admin,dc=domain,dc=com" write by anonymous auth by * none
Использование dn.base позволяет ему написать пароль. Некоторые предлагают создать пользователя, единственная роль которого - делать это, но я обнаружил, что использование dn.base обычно хорошо работает.