Я пытаюсь настроить openldap на ubuntu 12.04, следуя этому руководству https://help.ubuntu.com/12.04/serverguide/openldap-server.html
Когда я попытался включить TLS на сервере, создав самоподписанный сертификат, как описано в руководстве выше, я получил следующую ошибку
команда, которую я запустил
ldapmodify -Y EXTERNAL -H ldapi:/// -f /etc/ssl/certinfo.ldif
Содержимое файла ldif
dn: cn=config
add: olcTLSCACertificateFile
olcTLSCACertificateFile: /etc/ssl/certs/cacert.pem
-
add: olcTLSCertificateFile
olcTLSCertificateFile: /etc/ssl/certs/ldap01_slapd_cert.pem
-
add: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/ssl/private/ldap01_slapd_key.pem
Сообщение об ошибке
ldap_modify: Inappropriate matching (18)
additional info: modify/add: olcTLSCertificateFile: no equality matching rule
После нескольких часов поиска в Google я не нашел ничего, что могло бы рассказать об этой ошибке. У кого-нибудь есть дополнительная информация по этому поводу?
Эти SINGLE-VALUE
. Использовать replace
вместо того add
.
Также обратите внимание, что изменения атрибутов могут потребовать перезапуска slapd
. (Не все настраивается во время выполнения, как хотелось бы.)
Вероятно, ваша схема:
attributeTypes: ( 1.3.6.1.4.1.4203.1.12.2.3.0.70 NAME 'olcTLSCertificateFile' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
attributeTypes: ( 1.3.6.1.4.1.4203.1.12.2.3.0.71 NAME 'olcTLSCertificateKeyFile' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
Небольшое объяснение: ldapmodify
add
причины slapd
чтобы убедиться, что вы не вводите пару атрибутов valie дважды, выполняя сопоставление равенства. Насколько я могу судить, он должен использовать 2.5.13.6 NAME 'caseExactOrderingMatch'
, но я не уверен, что когда-либо пробовал add
для этих атрибутов. Такое поведение может быть совершенно нормальным.