Я установил LDAP, BIND9 и Bind9-dyndb-ldap на 18,04 серверах. Добавленный схема BIND к LDAP; добавленный зона и некоторые сервер записи DNS в LDAP. Добавленный "dyndb" разделяют к named.conf, настраивая ldap информацию о возможности соединения.
...
dyndb "bind9-dyndb" "/usr/lib/bind/ldap.so" {
uri "ldap://ldap.example.com";
base "ou=dns,dc=example,dc=com";
auth_method "simple";
bind_dn "cn=admin,dc=example,dc=com";
password "MyPassword";
};
...
Я могу искать свой ldap использование имени пользователя и пароля, данного с помощью "ldapsearch". Я также смог работать вокруг проблемы конфигурации AppArmor, которая не позволила "/usr/lib/bind/ldap.so" использования BIND9.
Теперь, когда я пытаюсь запустить bind9, я получаю следующую ошибку в системном журнале:
Dec 21 21:42:20 ltserver1 named[17111]: cannot parse settings for 'named.conf for database bind9-dyndb': not found
Dec 21 21:42:20 ltserver1 named[17111]: dynamic database 'bind9-dyndb' configuration failed: not found
Dec 21 21:42:20 ltserver1 named[17111]: loading configuration: not found
Dec 21 21:42:20 ltserver1 named[17111]: exiting (due to fatal error)
Я озадачен относительно того, как отладить это далее. Любые "указатели" относительно того, что сделать, значительно ценились бы!
Я не нашел учебных руководств, показывающих недавний bind9-dyndb-ldap/BIND9 примеры конфигурации (новый, который я нахожу, для Ubuntu 16.04, и это все еще использует "Базу динамических данных" вместо "dyndb"). Я чувствую, что блуждаю в темноте. Любая помощь была бы очень полезна!
ОБНОВЛЕНИЕ: РЕШЕННЫЙ я нашел эту ссылку Bugzilla в Red Hat: https://bugzilla.redhat.com/show_bug.cgi? id=1436268
Если server_id не определяется, он отказывает.
Так, добавил я просто
server_id "[hostname of the machine]"
к dyndb разделу моего named.conf файла, и это запустило право.
Надеюсь, это поможет.
Исходное сообщение
Я обновляю от Гостеприимного до Бионического и имею ту же самую проблему и почти идентичную конфигурацию как Ваш. Лучше всего я могу сказать, я переписал свой файл конфигурации в новый dyndb формат. Должен был изменить форматы опции от:
arg "uri ldaps://example.com"
кому:
uri "ldaps://example.com"
Единственной разницей является мой пароль, закрывается кавычки, как директива для неупомянутой строки (хотя это не жалуется, если заключено в кавычки).
Какой уровень отладки я установил, я, кажется, больше не получаю детали, что он не может проанализировать что-то. Все те являются действительными директивами конфигурации, таким образом, я озадачен!
Так как это все создается в докере, я могу всегда использовать Гостеприимное изображение, поскольку мои более старые изображения контейнера DNS создают и развертываются прекрасный с более старыми пакетами, но я хотел бы выяснить, какую часть конфигурации этот не любит.
Если это имеет значение я действительно заставлял это выкладывать ожидаемую грамматику для dyndb LDAP модуль, хотя это было все, что я ожидал.
22-Jan-2019 01:29:03.990 expected grammar:
auth_method <quoted_string>;
base <quoted_string>;
bind_dn <quoted_string>;
connections <integer>;
directory <quoted_string>;
dyn_update <boolean>;
fake_mname <quoted_string>;
krb5_keytab <quoted_string>;
krb5_principal <quoted_string>;
ldap_hostname <quoted_string>;
password <string>;
reconnect_interval <integer>;
sasl_auth_name <quoted_string>;
sasl_mech <quoted_string>;
sasl_password <quoted_string>;
sasl_realm <quoted_string>;
sasl_user <quoted_string>;
server_id <quoted_string>;
sync_ptr <boolean>;
timeout <integer>;
uri <quoted_string>;
verbose_checks <boolean>;