OpenLDAP версии:
# slapd -V @(#) $OpenLDAP: slapd 2.4.23 (Feb 3 2014 19:11:35) $ [email protected]:/builddir/build/BUILD/openldap-2.4.23/openldap-2.4.23/build-servers/servers/slapd
Работает на:
# cat /etc/redhat-release CentOS release 6.5 (Final)
Необходимо изменить пароль для доступа к cn=config
.
Находим файл конфигурации, в котором прописан нужный пользователь:
# grep -ER "root.*cn=config" /etc/openldap/slapd.d/ /etc/openldap/slapd.d/cn=config/olcDatabase={9}bdb.ldif:creatorsName: cn=root,cn=config /etc/openldap/slapd.d/cn=config/olcDatabase={9}bdb.ldif:modifiersName: cn=root,cn=config /etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif:olcRootDN: cn=root,cn=config /etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif:modifiersName: cn=root,cn=config
Тут нас интересует вот эта строка результата:
/etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif:olcRootDN: cn=root,cn=config
Проверяем содержимое – есть ли в нём лоигн и пароль:
# cat /etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif | grep Root olcRootDN: cn=root,cn=config olcRootPW:: e01ENX1ZNm53Nm51NWdGQjVhMlNlaFVnWVJRPT0=
Создаём нвоый пароль:
# slappasswd -h {SSHA} New password: Re-enter new password: {SSHA}sCnjH9Swfy5WfJ5c6t+JpTDlZMw1mI1Z
Редактируем файл /etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif
и меняем:
olcRootPW:: e01ENX1ZNm53Nm51NWdGQjVhMlNlaFVnWVJRPT0=
на
olcRootPW: {SSHA}sCnjH9Swfy5WfJ5c6t+JpTDlZMw1mI1Z
Перезапускаем OpenLDAP:
# service slapd restart Stopping slapd: [ OK ] Starting slapd: [ OK ]
Проверяем:
# ldapsearch -x -D 'cn=root,cn=config' -b 'cn=config' -W olcDatabase={0}config -LLL Enter LDAP Password: dn: olcDatabase={0}config,cn=config objectClass: olcDatabaseConfig olcDatabase: {0}config olcAccess: {0}to * by * none olcAddContentAcl: TRUE olcLastMod: TRUE olcMaxDerefDepth: 15 olcReadOnly: FALSE olcRootDN: cn=root,cn=config olcRootPW: {SSHA}DBjHWlmWolHO/LS8Us8daqHaLy0l85+1 olcSyncUseSubentry: FALSE olcMonitoring: FALSE
Готово.