Рейтинг:0

Репликация OpenLDAP push через прокси - Руководство по настройке syncrepl

флаг cn

У меня есть некоторый базовый опыт взаимодействия с OpenLDAP и устранения неполадок, а также 389-ds, но у меня нет большого опыта их установки или настройки Сервер OpenLDAP.

Моя цель состоит в том, чтобы настроить репликацию с первичного устройства внутри доверенной сети наружу на Реплика, находящаяся в ненадежной сети, без предоставления реплике прямого доступа к первичной из-за потоков брандмауэра и сетевых требований. Это справедливо даже для начальное подключение, поэтому простая конфигурация RefreshAndPersist не будет работать.

Я читал, что можно настроить репликацию на основе push с использованием прокси, например что:

  • Прокси устанавливается как «скрытая» база данных на тот же сервер, что и начальный
  • Прокси-сервер настраивает репликацию с основным с помощью RefreshAndPersist.
  • Затем прокси-сервер может вытолкнуть данные из реплики.

Я просмотрел и перечитал много отрывков из этого документ: https://www.openldap.org/doc/admin24/replication.html Я также следовал этому базовому руководству по настройке основного сервера с репликацией. возможность: https://ubuntu.com/server/docs/service-ldap-replication

С чем у меня возникли проблемы, так это с поиском полезного руководства, которое проведет меня через процесс установки и настройки прокси, как я описал выше.

В своих исследованиях и попытках настроить это я научился загружать и включать модули, включать ведение журнала и настраивать поддержку TLS.

В настоящее время у меня есть OpenLDAP 2.4, работающий на Ubuntu 20.04 из репозиториев Ubuntu (slapd и ldap-utils, установленные с помощью apt).

Вот модули, которые в настоящее время включены:

root@davidw-ldap-provider-with-proxy:~# slapcat -n 0 | grep olcModuleLoad
olcModuleLoad: {0}back_mdb
olcModuleLoad: {1}пкэш
olcModuleLoad: {2}back_ldap
olcModuleLoad: {3}синкпров
olcModuleLoad: {4}back_monitor
олкмодулелоад: {5}rwm

Вот настройка ведения журнала:

root@davidw-ldap-provider-with-proxy:~# ldapsearch -Y EXTERNAL -H ldapi:/// -b 'cn=config' -D 'cn=config' -s base -LLL -W olcLoglevel
Введите пароль LDAP: 
SASL/ВНЕШНЯЯ аутентификация запущена
Имя пользователя SASL: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
САСЛ ССФ: 0
DN: cn=config
олклоглевел: синхронизация
olcLogLevel: статистика

В приведенном выше выводе мы видим, что у меня есть back_ldap (серверная часть OpenLDAP) и синхронизация (оверлей) модули загружены. Я сейчас пытаюсь следовать руководству на https://www.pixelstech.net/article/1509263631-OpenLDAP-Proxy----slapd-conf для настройки прокси. Я добавил в /etc/ldap/ldap.conf следующее:

путь к модулю /usr/lib/ldap
модуль загрузки back_bdb.la

база данных ldap
только для чтения да
протокол-версия 3
перепривязать как пользователя
uri: "ldapi:///"
суффикс "dc=ma,dc=us,dc=example,dc=com"
оверлей

Я пытаюсь преобразовать это в ldif с помощью следующей команды, которая выдает ошибку, что «ldap» является нераспознанным типом базы данных:

root@davidw-ldap-provider-with-proxy:~# slaptest -f /etc/ldap/ldap.conf -F /etc/ldap/slapd.d/
Неизвестный тип базы данных (ldap)
61ccaacf /etc/ldap/ldap.conf: строка 21: <database> не удалось инициализировать (ldap)
slaptest: неправильный каталог конфигурации!

Вопросы

  1. Почему я получаю это Неизвестный тип базы данных сообщение об ошибке, даже если мы можем доказать, что серверная часть ldap загружена?
  2. Как только я получу настройку прокси, где я могу найти полезные инструкции для выполнения оставшихся требований моего проекта? Я отправил несколько писем в список рассылки openldap по адресу https://lists.openldap.org/hyperkitty/list/[email protected]/thread/UDTYKW6AEDR2ALY43V2DQZSL7AVTG5GB/, так как я довольно застрял, и действительно не знаю, как двигаться вперед. Некоторое время я пытался скомпилировать версию 2.5 из исходного кода, но не смог продвинуться с этой конфигурацией так же далеко, как смог получить с помощью пакетов Ubuntu, поэтому я вернулся к попыткам настройки. со стандартными пакетами от apt.
Рейтинг:0
флаг cn

Ответ на мой первый вопрос заключается в том, что я совершил глупую ошибку. В файле ldap.conf у меня было следующее:

путь к модулю /usr/lib/ldap
модуль загрузки back_bdb.la

база данных ldap

я загружал back_bdb модуль, а не back_ldap модуль. мне нужно было изменить модуль загрузки ценность для back_ldap.la.

Глупая ошибка, вероятно, вызванная тем, что вы слишком долго смотрели на эти файлы конфигурации.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.