Базовая настройка openldap с использованием конфигурации slapd.d

Я пытаюсь настроить тестовый сервер openldap, раньше не работал с openldap. Я использую стандартный пакет openldap-servers на машине, основанной на redhat (используя Oracle Linux). Я установил пакеты и запустил сервер.

Теперь я понятия не имею, как заставить сервер делать что-то полезное; Я не могу просмотреть его с помощью luma ("Нет такого объекта" при попытке получить доступ к записи верхнего уровня), документы openldap тупы относительно того, как вы на самом деле приводите сервер в базовое рабочее состояние, и всей информации в Интернете. это для старого файла slapd.conf, а не для новых slapd.d и cn = config.

Как заставить работать пакет openldap, упакованный в ваниль, где я могу найти root dn в luma?

2 ответа

Решение

Я чувствую твою боль.

Попробуйте это (он протестирован на Scientific Linux 6.5, поэтому он должен работать и на OL):

  • Установите серверы OpenLDAP: yum install openldap-servers openldap-clients)
  • Начните slapd: service slapd start (и возможно chkconfig slapd on)
  • Создать пароли для cn=config и ваш обычный администратор LDAP с slappasswd, Обратите внимание на вывод этого.
  • Создайте файл LDIF со следующим содержимым:
dn: olcDatabase = {0} config, cn = config
изменить тип: изменить
добавить: olcRootPW
olcRootPW: {SSHA} TXcmvaldskl312012cKsPK1cY2321 + aj

dn: olcDatabase = {2} bdb, cn = config
изменить тип: изменить
добавить: olcRootPW
olcRootPW: {SSHA}TXcmvaldskl312012cKsPK1cY2321+aj
-
заменить: olcRootDN
olcRootDN: cn=admin,dc= ваш, dc = базовый,dc=com
-
заменить: olcSuffix
olcSuffix: dc= ваш, dc = базовый, dc = com
  • Значения для olcRootPW следует заменить на вывод slappaswd Вы отметили ранее.
  • Естественно, olcSuffix а также olcRootDN должен быть адаптирован к вашему новому базовому DN.
  • Передайте все это на сервер LDAP с помощью следующей команды:

    ldapmodify -a -Q -Y EXTERNAL -H ldapi:/// -f yourfile.ldif

После этого вы сможете подключиться к обоим cn=config а также dc=your,dc=base,dc=com через LDAP.

Прежде чем запускать сервер OpenLDAP, вам нужно сначала настроить несколько вещей.

Базовая конфигурация

Вам необходимо настроить пользователя root и пароль, а также определить базовый DN. В slapd.conf найдите строки, следующие за строками, и установите для них нужные значения.

suffix "dc=example,dc=com"
rootdn "cn=root,dc=example,dc=com"

Обычно ваш базовый DN (определяется как suffix в файле) - это компоненты вашего доменного имени, разделенные запятыми и начинающиеся с префикса dc=, Так, faultserver.ru может стать dc=serverfault,dc=com, Ваш rootdn должен быть под этим суффиксом.

Вам также необходимо изменить строку, которая определяет пароль пользователя root. Вы можете установить его в виде текста или использовать slappasswd создать хеш. Затем вам нужно поместить либо значение открытого текста, либо значение хеширования из slappasswd в строке, которая выглядит так:

rootpw myultrasecurepassword

Schemas

Это хорошая идея, чтобы начать думать о схемах, которые вы хотите использовать. Схема определяет атрибуты, которые может иметь объект, поэтому вам необходимо включить схемы, которые содержат необходимые вам атрибуты. Эти схемы включены в верхней части slapd.conf и вот те, которые здесь обычно являются абсолютными базовыми схемами, которые вам понадобятся:

include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema

Эти пути используются в Arch Linux, поэтому вам может потребоваться настроить их под Oracle Linux.

Около slapd.conf против slapd.d

OpenLDAP перешел из автономной конфигурации (сделано в slapd.conf) для онлайн-конфигурации, хранения данных в специальном cn=config дерево найдено в slapd.d, Модификация ldif файлы в slapd.d Это болезненный процесс, поэтому его гораздо проще редактировать. slapd.conf как указано выше, затем преобразовать это в новый slapd.d формат.

Сначала удалите все в slapd.d, Затем выполните следующую команду, убедившись, что изменили пути к Oracle Linux:

slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/

Затем просто установите владельца для своего пользователя и группы LDAP в этом каталоге рекурсивно, и вы должны быть готовы к работе. Это нужно делать каждый раз, когда вы редактируете slapd.conf - просто не забудьте остановить сервер OpenLDAP перед этим!

Начальный прогон

Прежде чем вы сможете использовать каталог, вам нужно создать базовое DN (и пользователя root). Создать .ldif файл, содержащий строки, подобные следующим:

dn: dc=example,dc=com
objectclass: dcObject
objectclass: organization
o: example.com
dc: example

dn: cn=root,dc=example,dc=com
objectclass: organizationalRole
cn: root

Теперь запустите сервер OpenLDAP. Нам просто нужно поместить эту информацию в каталог LDAP:

ldapadd -D "cn=root,dc=example,dc=com" -W -f initial.ldif

Очевидно, измените корневой DN и имя файла ldif, чтобы соответствовать тому, что у вас есть.

Теперь у вас должен быть настроен и готов к заполнению рабочий каталог LDAP!


Вики Arch Linux является отличным источником информации по этой теме - смотрите https://wiki.archlinux.org/index.php/OpenLDAP и https://wiki.archlinux.org/index.php/LDAP_Authentication если вы хотите узнать больше.

Другие вопросы по тегам