slapd со схемой mozillaAbPersonAlpha
Я борюсь со схемой mozillaAbPersonAlpha в конфигурации opendsap с открытым ключом opensuse (на основе slapd.conf, а не на основе cn=config olc). Каталог slapd.d существует, но он пуст
$ slapd -V
$ @(#) $OpenLDAP: slapd 2.4.46 $
opensuse-buildservice@opensuse.org
Это slapd.conf:
# Этот файл (slapd.conf) является файлом статической конфигурации демона сервера OpenLDAP. # # OpenLDAP daemon (slapd.service) поддерживает два стиля конфигурации: # - Простая настройка с этим файлом # - Онлайн конфигурация (OLC) # # Вы можете выбрать стиль конфигурации, установив его в: # /etc/sysconfig/openldap OPENLDAP_CONFIG_BACKEND="files|ldap" # Если значение установлено в "файлы", этот файл конфигурации будет использоваться. # Если установлено значение "ldap", этот файл конфигурации будет полностью игнорироваться, и # будет загружена конфигурация OLC из /etc/openldap/slapd.d. # # Если вы решили использовать онлайн-конфигурацию, прочитайте дополнительные инструкции в: # /etc/openldap/slapd.conf.olctemplate # # Не стесняйтесь настраивать этот файл в соответствии с вашими потребностями и запускать OpenLDAP # демон сервера, выполнив: # systemctl start slapd.service # # Чтобы убедиться, что служба LDAP работает правильно, попробуйте следующую команду: # ldapsearch -x -D cn= Менеджер, dc = my-domain, dc = com -w secret -s base namingContexts # # Смотрите slapd.conf(5) для получения подробной информации о параметрах конфигурации. # См. /Etc/openldap/slapd.conf.example для получения дополнительных примеров. # Этот файл не должен быть доступен для чтения всем. # pidfile /run/slapd/slapd.pid argsfile /run/slapd/slapd.args # Следующие файлы схемы часто полезны включают /etc/openldap/schema/core.schema включают /etc/openldap/schema/cosine.schema include /etc/openldap/schema/inetorgperson.schema include /etc/openldap/schema/rfc2307bis.schema включить /etc/openldap/schema/yast.schema include /etc/openldap/schema/mozillaAbPersonAlpha.schema # Загрузить модули бэкэнда, такие как движки базы данных modulepath / usr / lib64 / openldap moduleload back_mdb.la #moduleload back_hdb.la #moduleload back_bdb.la # Очень важно: определить ACL для авторизации доступа клиента # Настройки по умолчанию позволяют rootdn читать и писать, в то время как другие пользователи # может прочитать всю базу данных или изменить свой собственный пароль. # Если ACL отсутствует, каждому будет разрешено читать базу данных. # rootdn всегда может читать и писать все. доступ к dn.base="" * прочитано доступ к dn.base="cn=Subschema" * прочитано доступ к attrs=userPassword,userPKCS12 самостоятельно написать * автор доступ к attrs=shadowLastChange самостоятельно написать * прочитано доступ к * * прочитано # Определить базу данных LDAP база данных mdb maxsize 1073741824 суффикс "dc=woodz,dc=eu" rootdn "cn=admin,dc=woodz,dc=eu" # Пожалуйста, избегайте использования открытого текста для пароля root # Смотрите slappasswd(8) для инструкций по созданию соленого + хешированного пароля rootpw {SSHA}... # Каталог базы данных должен существовать до запуска демона OpenLDAP # Каталог должен принадлежать пользователю ldap, и рекомендуется разрешение 0700 каталог /var/lib/ldap # Индексы для поддержания индекс objectClass eq # Настоятельно рекомендуется использовать TLS для защиты связи между клиентами LDAP и сервером. # Для включения TLS вам потребуется сертификат CA, сертификат сервера и ключ сертификата, а также # запишите их пути ниже, убедитесь, что файлы читаются пользователем "ldap". # Сервер будет поддерживать StartTLS на стандартном порту 389. # Чтобы также обслуживать LDAPS через порт 636, установите OPENLDAP_START_LDAPS="yes" в /etc/sysconfig/openldap. #TLSProtocolMin 3.1 #TLSCipherSuite HIGH:!SSLv3:!SSLv2:!ADH #TLSCACertificateFile /my/ca.crt #TLSCertificateFile /my/tls.crt #TLSCertificateKeyFile /my/tls.key
Мой тестовый сценарий:
abook_test.ldif файл для импорта:
dn: cn = кто-то,ou=mail,dc=woodz,dc=eu objectClass: top objectClass: inetOrgPerson objectClass: mozillaAbPersonAlpha данное имя: некоторые sn: one cn: кто-то почта: some@one.com
Команда для импорта:
$ ldapadd -x -D cn = admin, dc = woodz, dc = eu -c -W -f /home/woodz/path/to/abook_test.ldif
результат:
добавление новой записи "cn=some one,ou=mail,dc=woodz,dc=eu" ldap_add: неверный синтаксис (21) дополнительная информация: objectClass: значение #2 недопустимо для синтаксиса
если я уберу строку
objectClass: mozillaAbPersonAlpha
тогда ответ:
добавление новой записи "cn = some one, ou = mail, dc = woodz, dc = eu"
так что сделал импорт при опущении строки.
Это почему? Есть ли еще какой-нибудь секрет конфигурации? Такое ощущение, что файл схемы mozillaAbPersonAlpha.schema загружен неправильно. Но изменение имени файла приводит к ошибке slapd при перезапуске, которая обычно говорит мне, что она действительно загружает схему.
Файл mozillaAbPersonAlpha.schema поставляется из MailNews
Любая помощь, что проверить дальше очень ценится.