Настройка PowerDNS на контроллере домена Astra 1.8

Для полноценной работы большинства функций в доменной сети требуется DNS сервер.
Avanpost DS выступает в качестве хранилища записей для DNS сервера PowerDNS и позволяет создавать записи в базе в том числе через веб-интерфейс администратора.

Для настройки DNS-сервера PowerDNS на контроллере домена Avanpost DS необходимо выполнить шаги:

Шаг 1. Установить необходимые пакеты.

Для этого требуется:

1.1. Создать файл "/etc/apt/sources.list.d/pdns.list" и открыть его для редактирования.

sudo nano /etc/apt/sources.list.d/pdns.list

1.2. Добавить в файл "/etc/apt/sources.list.d/pdns.list" две записи о новых репозиториях.:

deb [signed-by=/etc/apt/keyrings/auth-49-pub.asc] http://repo.powerdns.com/debian bookworm-auth-49 main
deb [signed-by=/etc/apt/keyrings/rec-52-pub.asc] http://repo.powerdns.com/debian bookworm-rec-52 main

1.3. Создать файл "/etc/apt/preferences.d/auth-49" и открыть его для редактирования.

sudo nano /etc/apt/preferences.d/auth-49

1.4. Добавить в файл "/etc/apt/preferences.d/auth-49" строки:

Package: auth*
Pin: origin repo.powerdns.com
Pin-Priority: 600

1.5. Создать файл "/etc/apt/preferences.d/rec-52" и открыть его для редактирования.

sudo nano /etc/apt/preferences.d/rec-52

1.6. Добавить в файл "/etc/apt/preferences.d/rec-52" строки:

Package: rec*
Pin: origin repo.powerdns.com
Pin-Priority: 600

1.7. Выполнить команды для обновления списка пакетов:

sudo install -d /etc/apt/keyrings; curl https://repo.powerdns.com/FD380FBB-pub.asc | sudo tee /etc/apt/keyrings/rec-52-pub.asc && \
sudo install -d /etc/apt/keyrings; curl https://repo.powerdns.com/FD380FBB-pub.asc | sudo tee /etc/apt/keyrings/auth-49-pub.asc && \
sudo apt-get update

1.8. Установить пакеты:

sudo apt install pdns-server pdns-backend-ldap pdns-recursor dnsutils

Шаг 2. Выключить сервисы "pdns" и "pdns-recursor".

Для этого необходимо выполнить команды:

sudo systemctl stop pdns
sudo systemctl stop pdns-recursor

Шаг 3. Включить автоматическое управление конфигурационными файлами PowerDNS.

Для этого необходимо:

3.1. Открыть для редактирования файл конфигурации Avanpost DS "/opt/avanpost/ads/config/config.yaml".

sudo nano /opt/avanpost/ads/config/config.yaml

3.2. Добавить строки в файл:

Строки для добавления
service_control:
  dns_control: true

Шаг 4. Настроить автоматическое управление конфигурационными файлами PowerDNS.

Конфигурационный файл "/etc/krb5.conf" и файл "/etc/krb5.keytab" должны иметь права 644. Для выставления прав требуется выполнить команды:

sudo chmod 644 /etc/krb5.conf
sudo chmod 644 /etc/krb5.keytab

При загрузке Avanpost DS будет проверять конфигурационные файлы PowerDNS. Если были внесены какие-либо изменения вручную, то конфигурационные файлы будут восстановлены. Поэтому дальнейшие изменения конфигурационных файлов "pdns.conf" и "recursor.conf" следует выполнять из веб-интерфейса Avanpost DS. 

Шаг 5. Выдать ACL разрешения на директории PowerDNS.

Для этого необходимо выполнить команды:

sudo setfacl -m u:ads:rwx /etc/powerdns
sudo setfacl -m u:ads:rw /etc/powerdns/pdns.conf /etc/powerdns/recursor.conf
sudo mkdir -p /var/lib/pdns
sudo chown pdns:pdns /var/lib/pdns

Шаг 6. Включить и запустить сервисы "pdns", "pdns-recursor", "ads".

Для этого необходимо выполнить команды:

sudo systemctl enable --now pdns pdns-recursor
sudo systemctl restart ads.service

Шаг 7. Добавить параметр сервера PowerDNS в конфигурацию.

(при условии, что включена автоматическая настройка конфигурации pdns)Для этого необходимо:

7.1. Нажать  в разделе "DNS" веб-интерфейса Avanpost DS.

7.2. В открывшемся окне добавить в конец поля "Настройки авторитативного DNS сервера (pdns.conf)" строку:

zone-cache-refresh-interval=0

7.3. Нажать .

Шаг 8. Проверить DNS записи зоны прямого просмотра.

Для этого необходимо выполнить команду по шаблону, подставив свои значения:

Шаблон команды
dig srv _ldap._tcp.[Домен2ур].[Домен1ур]

Заменить [Домен1ур] на свой домен первого уровня.

Заменить [Домен2ур] на свой домен второго уровня.

Пример команды
dig srv _ldap._tcp.avanpost.local

В выводе команд обязательно должны быть записи типа "SRV".

Пример вывода команды
dig srv _ldap._tcp.avanpost.local
;; ANSWER SECTION:
_ldap._tcp.avanpost.local. 1500    IN      SRV     0 0 389 ds01.avanpost.local.
_ldap._tcp.avanpost.local. 1500    IN      SRV     0 0 389 ds02.avanpost.local.

Можно проверить работу сервисов "pdns" и "pdns-recursor" с помощью команд:

dig srv _ldap._tcp.avanpost.local -p 5300   #[pdns]
dig srv _ldap._tcp.avanpost.local -p 53     #[pdns-recursor]

Шаг 9. Проверить DNS записи зоны обратного просмотра.

 Для этого необходимо выполнить команду по шаблону, подставив свои значения:

Шаблон команды
dig -x [IP PDNS сервера]

Заменить [IP PDNS сервера] на IP адрес контроллера домена.

Пример команды
dig -x 192.168.1.11

Можно проверить работу сервисов "pdns" и "pdns-recursor" с помощью команд:

dig -x 192.168.1.11 -p 5300    #[pdns]
dig -x 192.168.1.11 -p 53      #[pdns-recursor]

После выполнения всех шагов развертывание Avanpost DS на контроллере завершено.

Можно переходить к разворачиванию Avanpost DS на следующем контроллере или к Этапу 2 "Интеграция Avanpost DS с прикладными системами".

Обсуждение