Вопрос или проблема
Может кто-то помочь мне решить эту ошибку?
5c18d91d ldif_read_file: ошибка контрольной суммы на "/etc/openldap/slapd.d/cn=config.ldif"
5c18d91d olcRootPW: значение #0: <olcRootPW> может быть установлено только когда rootdn находится под суффиксом
5c18d91d ошибка конфигурации при обработке cn=config: <olcRootPW> может быть установлено только когда rootdn находится под суффиксом
slaptest: плохой конфигурационный файл!
мой olcDatabase\=\{2\}hdb.ldif
это :
dn: olcDatabase={2}hdb
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: {2}hdb
olcDbDirectory: /var/lib/ldap
olcRootDN: cn=admin,dc=10.6.113.60
olcSuffix: dc=10.6.113.60
olcDbIndex: objectClass eq,pres
olcDbIndex: ou,cn,mail,surname,givenname eq,pres,sub
structuralObjectClass: olcHdbConfig
entryUUID: cd57a4aa-85c3-1038-887e-196d6c686da6
creatorsName: cn=config
createTimestamp: 20181126123738Z
entryCSN: 20181126123738.098670Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20181126123738Z
Вы вручную редактировали файл LDIF, что является вашей первой ошибкой, хотя в каждом из этих файлов есть предупреждение вверху, говорящая не делать этого.
Вторая ошибка говорит вам, что корневой DN должен а) быть установлен на что-то и б) находиться под суффиксом базы данных, который является cn=config
, например, cn=manager,cn=config
.
Я подозреваю, что вы вручную установили пароль в /etc/openldap/slapd.d/cn=config.ldif
, что и вызвало обе ошибки.
Ответ или решение
Ошибка, которую вы видите – "
-
Контекст ошибки:
Сообщение об ошибке сообщает нам, что значение для параметраolcRootPW
может быть задано только в том случае, если корневой DN (olcRootDN
) помещён под соответствующий суффикс (olcSuffix
). По умолчанию, корневой DN должен совпадать с одной из базовых DN (с суффиксами), которые вы определяете в конфигурации вашего сервера LDAP. -
Ваша текущая конфигурация:
В вашем файлеolcDatabase={2}hdb.ldif
задано следующее:olcRootDN: cn=admin,dc=10.6.113.60 olcSuffix: dc=10.6.113.60
Здесь корневой DN (
cn=admin,dc=10.6.113.60
) неправильно настроен, так как он фактически не соответствует поводу именования в контексте вашего серверного окружения. Для корректной работыolcRootDN
должен быть определён в пределах контекста ("базы") данной базы данных. -
Решение проблемы:
Судя по вышеописанному, рекомендуется выполнить следующее:- Если вы намеревались задать пароль для
cn=admin,dc=10.6.113.60
, вам следует также удостовериться, что этот DN действительно существует в вашем LDAP-храниле. - Если корневой DN должен быть определён как
cn=manager,dc=10.6.113.60
, то замените строку:olcRootDN: cn=admin,dc=10.6.113.60
на:
olcRootDN: cn=manager,dc=10.6.113.60
- Если вы намеревались задать пароль для
-
Правила редактирования конфигурации:
Будьте осторожны с редактированием LDIF файлов напрямую. Этот тип файлов может быть сложно редактировать вручную без понимания всей структуры и потенциальных зависимостей. Для всех изменений в конфигурации сервера OpenLDAP рекомендуется использовать инструменты, такие какldapmodify
, которые помогут избежать ошибок при сохранении структуры данных. -
Проверка конфигурации:
После внесения изменений проверьте конфигурацию сервера:slaptest -f /etc/openldap/slapd.d/cn=config.ldif
Если ошибок не обнаружено, перезапустите службу OpenLDAP:
systemctl restart slapd
Следуя вышеописанным шагам, вы сможете устранить проблемы с конфигурацией OpenLDAP и успешно настроить корневой DN и соответствующий ему пароль.