Настройка BIND9 для Linux AD-DC на Ubuntu 18.04 — тот этап с которого начинается всё действо после того, как мы провели первичную настройку Ubuntu Server 18.04. Без настройки bind9 мы не сможем инициализировать Linux AD-DC на Ubuntu Server 18.04. Также в принципе дела обстоят и во всех остальных операционных системах на которых можно поднять Linux AD-DC. Исключением конечно же является инициализация контроллера домена с помощью SAMBA INTERNAL DNS. Но в данной серии статей пойдёт речь об инициализации контроллера домена на Ubuntu Server 18.04 с использованием BIND9 DLZ и ISC-DHCP сервера.
Почему статья о настройке bind9 для Linux AD-DC на Ubuntu 18.04
А не например не Ubuntu 20? Сразу же стоит отметить что под Ubuntu 18.04 или Ubuntu 20.04 тут подразумевается в первую очередь Ubuntu Server 18.04 и Ubuntu Server 20.04. Но нужно понимать что настройка Linux AD-DC что для Ubuntu 18.04 Desktop что для Ubuntu Server 18.04 будет абсолютно идентичная по набору команд и устанавливаемых пакетов. Просто я не делаю больших различий между Ubuntu Server и ubuntu Desktop и для серверной нагрузки за исключением сервера терминалов я использую Ubuntu Server, банально с целью экономии ресурсов потребляемых виртуальными машинами.
Текущее состояние Ubuntu 20.04
Дак вот, в статье говорится про настройку Linux AD-DC для Ubuntu 18.04 потому что совсем недавно, в июне-июле 2020 года, Samba выпустили новую версию, которая пожалуй является переломной в плане технологий используемых для обновления DNS записей в локальной зоне контроллера домена. Если раньше и в данной статье для этих целей использовалась утилита nsupdate. Начиная с недавнего времени Samba начала использовать для этого утилиту samba-tool. Поэтому инструкции разработанные для Ubuntu 18.04, основывающиеся на установке самых последних версий пакетов из репозиториев Ubuntu 18.04, не подходят для Ubuntu 20.04 ввиду разных подходов в работе с DNS зоной.
Так же в репозиториях Ubuntu 20.04 находится bind9 версии 9.16.x. В свою очередь на момент написания статьи, самый последний dlz модуль доступный при установке Samba4 совместим с bind 9.12.x. И если с версией bind9 9.14.x этот модуль DLZ ещё работал без ошибок, то с версией 9.16.x и утилитой samba-tool, syslog сервера начинает пестрить ошибками, ссылающимися именно на код DLZ модуля. Взвесив все за и против я решил отложить адаптацию инструкций по настройке Linux AD-DC для Ubuntu 20 и сосредоточиться на обновлении и актуализации этих же инструкций для Ubuntu 18.04. Я слабо верю что обновления пакетов доставляемые в эти дни в Ubuntu 20.04 могут добраться и до репозиториев Ubuntu 18.04. А спустя пол года-год, когда все обновления по большей части устаканятся, можно будет адаптировать данную инструкцию и для Ubuntu 20.
Цель статьи — Настройка BIND9 для Linux AD-DC
Цель данной статьи — не только актуализировать информацию предыдущей. Эта статья будет с блекджеком и блудницами. Если ранее при настройке домен инициализировался с помощью samba_internal DNS сервера и был способен лишь контролировать авторизацию и обслуживать dns имена присоединённых к нему клиентов, в этой статье будут использоваться BIND9 + dhcpd и все вытекающие прелести, такие как автоматическое создание DNS A-записей в локальной зоне, для устройств получивших адрес по DHCP. То есть любых устройств, а не только членов домена. Изначально я планировал оформить информацию в виде одной статьи. Но наученный горьким опытом сложности поддержания таких статей, я опубликую этот мануал в виде 5 отдельных статей, создав тем самым 5 тематических постов со своими ветками обсуждений каждый. Нуждающийся же да превозможет :). Не стесняйтесь задавать вопросы в комментариях в том месте где вы увидели этот мануал. Если это одна из площадок где я размещаю контент, то я обязательно отвечу.
-
Установка Ubuntu Server 18.04
Полезные команды после установки# Обновить систему sudo apt update && sudo apt dist-upgrade -y # Установить набор сетевых утилит включающий привычный многим ifconfig sudo apt install net-tools # Узнать текущий ip адрес ip addr show ifconfig # Узнать текущий шлюз по умолчанию ip route show
-
Задаём имя сервера
Имя сервера нужно задавать ДО инициализации контроллера домена.
-
Задаём статический IP
Контроллер домена обязательно должен быть со статическим IP адресом, банально потому что если он сменит свой адрес, домен перестанет функционировать.
-
Версии ключевых пакетов использованных в статье
С недавних пор версии пакетов стали фатально важными при воспроизведении инструкции потому вот:
- Samba4: Version 4.7.6-Ubuntu
- bind9 (named): BIND 9.11.3-1ubuntu1.13-Ubuntu (Extended Support Version) <id:a375815>
-
Настройка BIND9 для Linux AD-DC — Часть 1
Примечательно, что начинается установка домена с установки DNS сервера, пакета, распространяемого отдельно от samba4. Можно и потом, но таки в этом случае придётся делать дополнительные телодвижения. Дабы этого избежать сперва надо установить bind и провести его частичную настройку. Установим, создадим зоны, проведём первичную конфигурацию
-
Ставим BIND9_DLZ
sudo apt install bind9
Прежде всего проверяем версию bind
named -v
На момент написания, в репозитории Ubuntu 18.04 была версия 9.11.3
-
Смотрим где bind держит named.conf
named -V | grep sysco
В результате увидим что-то типа этого:
—sysconfdir=/etc/bind — это папка где лежит файл named.conf
-
Смотрим где днс сервер держит кеш
sudo cat /etc/passwd | grep bind
В результате видим что-то типа этого:
Директория /var/cache/bind понадобится нам при дальнейшей настройке -
Проверяем named.conf
nano /etc/bind/named.conf
В результате видим:
Нам понадобятся файлы выделенные красным
-
Правим named.conf.options
В первую очередь делаем бэкап и правим файл
sudo cp /etc/bind/named.conf.options /etc/bind/named.conf.options_bak sudo nano /etc/bind/named.conf.options
Удаляем его содержимое и заменяем следующим:
# Глобальные настройки options { auth-nxdomain yes; directory "/var/cache/bind"; #Папка с кешем bind notify no; empty-zones-enable no; tkey-gssapi-keytab "/var/lib/samba/private/dns.keytab"; minimal-responses yes; # IP адреса и подсети от которых будут обрабатываться запросы allow-query { 127.0.0.1; 192.168.1.0/24; #Текущая локальная сеть ag-dc-1.adminguide.lan }; # IP адреса и подсети от которых будут обрабатываться рекурсивные запросы # (Зон не обслуживаемых этим DNS сервером) allow-recursion { 127.0.0.1; 192.168.1.0/24; #Текущая локальная сеть ag-dc-1.adminguide.lan }; # Перенаправлять запросы, на которые нет информации в локальной зоне # на следующие сервера: forwarders { 192.168.1.1; #IP адрес DNS форвардера 8.8.8.8; #IP адрес DNS форвардера 8.8.4.4; #IP адрес DNS форвардера }; # Запрет на трансфер зоны allow-transfer { none; }; }; -
Правим named.conf.default-zones
sudo cp /etc/bind/named.conf.default-zones /etc/bind/named.conf.default-zones_bak sudo nano /etc/bind/named.conf.default-zones
Удаляем его содержимое и заменяем следующим:
# Корневые сервера # (Необходимы для рекурсивных запросов) zone "." { type hint; file "named.root"; }; # localhost zone zone "localhost" { type master; file "master/localhost.zone"; }; # 127.0.0. zone. zone "0.0.127.in-addr.arpa" { type master; file "master/0.0.127.zone"; }; -
Переходим разделу: «Контроллер домена Ubuntu — Настройка — Часть 1»
На данном этапе мы сделали всё необходимое. Теперь можно приступить к установке и конфигурации samba4
-
В данный момент весь текстовый контент на неделю раньше публикуется в моём Zen блоге . Там же проходят русскоязычные премьеры видеоуроков 🙂
Так же видео публикуются на Youtube канале, но там проходят сперва англоязычные премьеры 🙂




