Я установил OpenLDAP на Centos 7 и попытался создать пользователя с правами администратора. Но я получил ошибку на ldap_modify
. Ниже приведены мои шаги:
Установите OpenLDAP и запустите его:
sudo yum install openldap openldap-servers openldap-clients -y
systemctl start slapd.service
Создать admin.ldif
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}CRiUMh5UM8/chPHbfc2Se2JA8Quc5F1P
dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth"
read by dn.base="cn=ldapadmin,dc=demo,dc=local" read by * none
dn: olcDatabase={2}bdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=demo,dc=local
dn: olcDatabase={2}bdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=ldapadmin,dc=demo,dc=local
dn: olcDatabase={2}bdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}CRiUMh5UM8/chPHbfc2Se2JA8Quc5F1P
dn: olcDatabase={2}bdb,cn=config
changetype: modify
add: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange by
dn="cn=ldapadmin,dc=demo,dc=local" write by anonymous auth by self write by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=ldapadmin,dc=demo,dc=local" write by * read
Запустите ниже командной строки:
ldapmodify -Y EXTERNAL -H ldapi:/// -f /root/demo/users/admin.ldif
Тогда я получил эту ошибку:
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "olcDatabase={2}bdb,cn=config"
ldap_modify: No such object (32)
matched DN: cn=config
У меня не было этой ошибки в другой системе, использующей Centos 7, поэтому мне интересно, что здесь происходит.
Пожалуйста помоги.