Подготовка ОС для установки Avanpost DS Server

ВНИМАНИЕ:

В данной инструкции приведены команды для трех операционных систем: REDOSASTRA 1.7; 2.12.ALT
Для шагов с отличающимися в зависимости от ОС действиями указаны команды для всех трех ОС. Необходимо выполнять команды только для используемой вами ОС.

Для установки на ОС Astra 1.8 требуется выполнить действия по одной из инструкций:

ВАЖНО!

Контроллеры в пределах одного домена должны быть развернуты на одинаковых ОС.

ВАЖНО!

Установка серверной части Avanpost DS на ОС ASTRA с графической оболочкой FLY не поддерживается. При установке PowerDNS данная оболочка перестает работать и ломает ОС.

ВАЖНО!

У каждого контроллера должен быть статический ip адрес.
В качестве DNS сервера на каждом контроллере необходимо указать 127.0.0.1

Перед установкой Avanpost DS Server на контроллер домена необходимо подготовить сервер. Для это нужно подключиться к нему по SSH и выполнить шаги:

После выполнения всех шагов можно переходить к установке Avanpost DS Server на контроллер по одной из инструкций:

Шаг 1. Добавить репозитории яндекс и отключить стандартные репозитории (Только для ОС Astra)

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

RedOS
НЕ выполняем данный шаг на RedOS
Astra 

1.1. Установить пакеты основных центров сертификации из стандартных репозиториев Astra Linux. 

sudo apt install ca-certificates

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

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

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

/etc/apt/sources.list.d/debian.list
deb  https://mirror.yandex.ru/debian/ bullseye main contrib non-free
deb-src  https://mirror.yandex.ru/debian/ bullseye main contrib non-free

1.4. Добавить ключи репозиториев.

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 605C66F00D6C9793
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6ED0E7B82643E131
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0E98404D386FA1D9

1.5. Открыть для редактирования файл "/etc/apt/sources.list".

sudo nano /etc/apt/sources.list

1.6. Закомментировать все репозитории в файле "/etc/apt/sources.list" (как минимум на время установки Avanpost DS).

Пример файла /etc/apt/sources.list
# Astra Linux repository description https://wiki.astralinux.ru/x/0oLiC

#deb cdrom:[OS Astra Linux 1.7.5 1.7_x86-64 DVD ]/ 1.7_x86-64 contrib main non-free
#deb https://download.astralinux.ru/astra/stable/1.7_x86-64/repository-main/ 1.7_x86-64 main contrib non-free
#deb https://download.astralinux.ru/astra/stable/1.7_x86-64/repository-update/ 1.7_x86-64 main contrib non-free

#deb https://download.astralinux.ru/astra/stable/1.7_x86-64/repository-base/ 1.7_x86-64 main contrib non-free
#deb https://download.astralinux.ru/astra/stable/1.7_x86-64/repository-extended/ 1.7_x86-64 main contrib non-free
#deb https://download.astralinux.ru/astra/stable/1.7_x86-64/uu/last/repository-update/ 1.7_x86-64 main contrib non-free

1.7. Очистить сохраненные списки пакетов, содержащие информацию из ранее использовавшихся репозиториев.

sudo rm -rf /var/lib/apt/lists/*
Alt
НЕ выполняем данный шаг на Alt 

Шаг 2. Обновить список пакетов.

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

RedOS
sudo dnf makecache
Astra 
sudo apt update

Если обновление списка пакетов прошло с ошибками вида:

Пример ошибки
W: Ошибка GPG: http://archive.debian.org/debian stretch Release: Следующие подписи не могут быть проверены,
так как недоступен открытый ключ: NO_PUBKEY 8B48AD6246925553 NO_PUBKEY 7638D0442B90D010 NO_PUBKEY EF0F382A1A7B6500

Значит следует добавить ключи. Для этого необходимо выполнить команду ниже для каждого ключа из текста ошибки, заменяя в команде [Открытый ключ репозитория] на ключ из ошибки.

Шаблон команды
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys [Открытый ключ репозитория]
Команды по ошибке из примера выше
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8B48AD6246925553
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7638D0442B90D010
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EF0F382A1A7B6500
Alt
sudo apt-get update

Шаг 3. Задать имя сервера.

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

Шаблон
sudo hostnamectl set-hostname [FQDN]
sudo sed -i '1i 127.0.0.1 [FQDN]' /etc/hosts

Заменить [FQDN] на желаемое полное доменное имя сервера (FQDN), на котором производится установка.

В примере задается hostname "ds01.avanpost.local".

Пример
sudo hostnamectl set-hostname ds01.avanpost.local
sudo sed -i '1i 127.0.0.1 ds01.avanpost.local' /etc/hosts

В конфиге "/etc/hosts", первой стракой должно быть значение "127.0.0.1 [FQDN]".

Пример заполненного конфига /etc/hosts
cat /etc/hosts

#Вывод команды:
127.0.0.1 ds01.avanpost.local   #127.0.0.1 [FQDN]
#127.0.0.1 localhost
[::1] ds01.avanpost.local

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

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

RedOS
sudo dnf install openssl tar nginx xmlsec1 xmlsec1-openssl wget curl pdns pdns-backend-ldap pdns-recursor bind-utils
Astra 
sudo apt install openssl nginx xmlsec1 libxmlsec1-openssl wget curl pdns-server pdns-backend-ldap pdns-recursor dnsutils

Во время установки пакетов в консоли будет запрошена информация. Необходимо отвечать согласно таблице:

ВопросОтвет
Restart services during package upgrades without asking? [yes/no]yes
Файл настройки "/etc/locale/alias" изменен с момента установки. Автор пакета предоставил обновленную версию. Что нужно сделать?
По умолчанию сохраняется текущая версия файла настройки.
*** locale.alias (Y/I/N/O/D/Z) [по умолчанию N] ?
N
Alt
sudo apt-get install openssl tar nginx libxmlsec1 libxmlsec1-openssl wget curl pdns pdns-backend-ldap pdns-recursor bind-utils

Шаг 5. Перевести SELinux в режим "permissive" и перезагрузить сервер. (Только для ОС RedOS) 

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

RedOS
sudo sed -i "s/SELINUX=enforcing/SELINUX=permissive/" /etc/selinux/config
reboot
Astra 
НЕ выполняем данный шаг на Astra
Alt
НЕ выполняем данный шаг на Alt 

Если требуется оставить SELinux включенным, то необходимо разрешить на нем нужные порты для сервиса "PDNS":

TCP: 53

UDP: 53

Подробнее о настройке SELinux см. статью "7.15. Настройка SELinux на контроллере домена Avanpost DS".

Если "pdns" и "pdns-recursor" находятся на разных хостах, необходимо дополнительно открыть порт TCP: 5300 

Шаг 6. Отключить firewall. (Только для ОС RedOS и Alt) 

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

RedOS
sudo systemctl disable --now firewalld
Astra 
НЕ выполняем данный шаг на Astra
Alt
sudo systemctl disable --now iptables

Если требуется оставить firewall включенным, то необходимо разрешить на нем нужные порты.

  • Для сервиса "ADS":

TCP: 80, 88, 389, 443, 464, 636, 4008, 7890, 8080, 25489, 41005, 48900, 48910

UDP: 88, 123, 464

  • Для сервиса "PDNS":

TCP: 53

UDP: 53

Подробнее о настройке firewalld см. статью "7.14. Настройка firewalld на контроллере домена Avanpost DS".

Если "pdns" и "pdns-recursor" находятся на разных хостах, необходимо дополнительно открыть порт TCP:5300 

Шаг 7. Остановить сервис "systemd-resolved". (Только для ОС RedOS) 

Примечание

В REDOS из коробки установлен сервис "systemd-resolved", он слушает 53 порт.

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

RedOS

7.1. Отключить и остановить службу "systemd-resolved".

sudo systemctl disable --now systemd-resolved.service

7.2. Поместить в раздел [main] "/etc/NetworkManager/NetworkManager.conf" строку:
DNS=none

Открыть /etc/NetworkManager/NetworkManager.conf
sudo nano /etc/NetworkManager/NetworkManager.conf

7.3. Удалить символическую ссылку "/etc/resolv.conf"

sudo rm /etc/resolv.conf

7.4. Создать новый конфигурационный файл "/etc/resolv.conf" и вписать в него актуальные настройки.

sudo touch /etc/resolv.conf && sudo nano /etc/resolv.conf
Astra 
НЕ выполняем данный шаг на Astra
Alt
НЕ выполняем данный шаг на Alt 

Шаг 8. Остановить сервис "named". (Только для ОС Alt) 

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

RedOSНЕ выполняем данный шаг на RedOS
Astra 
НЕ выполняем данный шаг на Astra
Alt
sudo systemctl disable --now named

После выполнения всех шагов можно переходить к установке Avanpost DS Server на контроллер по одной из инструкций:

Обсуждение