Назад | Перейти на главную страницу

как установить пароль администратора на openldap 2.4

Я начинаю работать с openLdap 2.4, и у меня небольшие проблемы, все примеры, которые я вижу, похоже, относятся к предыдущим версиям, в которых использовался текстовый файл конфигурации slapd.conf, но из того, что я вижу в обсуждениях по v2.4, это было устарело.

Я подумал, что, возможно, мне нужно добавить пользователя и войти в систему как он> но когда я пытаюсь запустить команду ldapadd, я получаю приглашение ввести пароль:

Enter LDAP Password: 
ldap_bind: Invalid credentials (49)

Примечания: Я установил сервер openldap через yum (в Fedora 15) и установил phpldapadmin, но также могу попробовать что-то в командной строке, если у кого-то есть предложения.

После установки и запуска я получаю следующий ответ от поиска:

# ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts
# extended LDIF
# LDAPv3
# base <> with scope baseObject
# filter: (objectclass=*)
# requesting: namingContexts 
dn:
namingContexts: dc=my-domain,dc=com    
# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1

Я рад удалить и переустановить сервер, если это поможет, может ли кто-нибудь дать ссылку на советы, которые подходят для версии 2.4 для новой установки?

Это старый вариант, но вопросы и ответы на них часто появляются при поиске. Сначала запустите slappasswd, чтобы сгенерировать пароль.

slappasswd 
New password: ************
Re-enter new password: *************
{SSHA}OM5mbC3/kQPAg8MH6FOqXkATjLjt2IZ2

Затем используйте это значение для заполнения конфигурации вашего бэкенда.

ldapmodify -Q -Y EXTERNAL -H ldapi:/// << E0F
dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}qUoTRPwppaedqHQTgYOPYWokr3SiXjbK
E0F

Ваш DNS может отличаться от указанного здесь. Базы данных конфигурации находятся в RHEL7 в /etc/openldap/slapd.d/cn=config. Теперь вы можете войти в систему, используя rootdn по умолчанию.

При желании вы можете установить собственное значение для корневого dn:

ldapmodify -Q -Y EXTERNAL -H ldapi:/// << E0F
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=manager,dc=example,dc=com
E0F

slapd.conf по-прежнему работает в OpenLDAP 2.4, однако в документации он может быть «не выделен».

Вот мое рабочее решение:

ldapsearch -LLL -Y EXTERNAL -H  ldapi:/// -b cn=config olcRootDN=cn=admin,dc=my,dc=company,dc=com dn olcRootDN olcRootPW

Теперь создайте новый пароль:

NEW_PWD={{TYPE_NEW_PASSWORD_HERE}}

PWD_HASH=$(slappasswd -s ${NEW_PWD})
echo "Your password hash is \"${PWD_HASH}\"."

Вставьте следующий код:

ldapmodify -Y EXTERNAL -H ldapi:/// << E0F
dn: olcDatabase={1}mdb,cn=config
replace: olcRootPW
olcRootPW: ${PWD_HASH}
E0F

Ты получишь:

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
dn: olcDatabase={1}mdb,cn=config
olcRootDN: cn=admin,dc=my,dc=company,dc=com
olcRootPW: {SSHA}k1S8N/A4eb7Ds8oBgAhb9TmPfVT9vl2U

Чтобы исправить два пароля доступа (старый и новый), вставьте:

OLD_PWD=admin

ldappasswd -h localhost -p 389 -x -D "cn=admin,dc=my,dc=company,dc=com" -w "${OLD_PWD}" -a "${OLD_PWD}" -s "${NEW_PWD}"