Я пытаюсь настроить Openldap v2.4 на Centos 7. Я установил slapd
и настроили сервер. Я создал пароль и добавил в свою конфигурацию с помощью команды изменения. Все это работает нормально, и я могу добавить услугу и ввести свой пароль при появлении запроса. У меня проблема, когда я перезапускаю службу через systemctl restart/start slapd
что мой пароль не распознан. Я получаю следующую ошибку:
ldapadd -x -W -D "cn=ldapadm,dc=nrdevopspoc,dc=com" -f base.ldif
Enter LDAP Password:
ldap_bind: Invalid credentials (49)
Что мне здесь не хватает?
Я в основном выполнил следующие шаги:
yum install openldap openldap-servers openldap-clients
Затем я запустил систему через systemctl start slapd
. Затем я установил пароль slapd через slappasswd и скопировал ключ SSHA. Затем я создал файл конфигурации db со следующим:
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=itzgeek,dc=local
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=ldapadm,dc=itzgeek,dc=local
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootPW
olcRootPW: {SSHA}d/thexcQUuSfe3rx3gRaEhHpNJ52N8D3
Затем я изменяю ldap db на
ldapmodify -Y EXTERNAL -H ldapi:/// -f db.ldif
Это сработало нормально и принял пароль. На этом этапе я перезапустил сервис slapd через systemctl restart slapd
.
Каждый раз, когда я снова запускаю команду изменения, я получаю недопустимые учетные данные, и он не принимает мой пароль ldap, как это было до перезапуска.
Согласно вашему редактированию:
Вы должны использовать cn=ldapadm,dc=itzgeek,dc=local
как ваш binddn, а не cn=ldapadm,dc=nrdevopspoc,dc=com
. То есть, если ваш файл "base.ldif" пытается изменить itzgeek,dc=local
.
Если вы пытаетесь сделать больше cn=config
манипуляции, вы все равно должны использовать ldapmodify -Y EXTERNAL -H ldapi:///
, так как не похоже, что вы заменили по умолчанию cn=config
контроль доступа.