Сложность развертывания ALDPro является следствием документации, есть подводные камни, о которых принято умалчивать. Поэтому кратко и по делу.
В рассматриваемом примере производится развертывание контроллера домена ALDPro, версии 1.4.1 (последней на момент написания) на версию Astra Linux SE 1.7.3 (frozen).
К сожалению, на хабре не нашлось ни одной верной статьи на эту тему )) то забудут о чем-то упомянуть, то репозиториев нужно чуть ли не все, а это важные моменты.
Не стоит ставить старые версии, так как обновление ALDPro и ОС на новую версию - тот еще квест.
Требования
Требования к серверу и клиентам одинаковые — основная причина saltstack. Важно соблюсти все требования в этом спойлере!
Для Astra Linux SE существуют 3 репозитория:
Основной репозиторий (main) он же iso
Базовый репозиторий (base) (содержит в себе main)
Расширенный репозиторий (extended) (не сертифицированные пакеты, без оптимизации под встроенные средства безопасности)
Для каждого репозитория существует репозиторий срочных обновлений (uu в url)
Для каждого репозитория существует репозиторий аппаратно зависимых компонентов. (для установки ALD не актуально на текущий момент).
Так же есть две ветки stable и frozen.
Для разворачивания ALD Pro - требуется использовать только ветки frozen! Только base и extended! Без срочных обновлений сторонних репозиториев!
Каких либо проверок во время установки нет, поэтому рекомендуется ставить на чистую установку, попытки экспериментов приведут к частично нерабочему ALDPro.
Подробности по репозиториям тут.
Требования !
Дистрибутив только Astra Linux SE x86_64
Версия дистрибутива только 1.7.2 или 1.7.3
Ядро только generic.
Мандатный доступ можно отключить.
Репозитории только frozen 1.7.2 или 1.7.3.
Не запускать apt upgrade, вообще ни где и ни когда!
Имя домена и имя сервера - без заглавных букв и без символов.
Версии ОС на сервере и клиенте должны совпадать (то есть если сервер 1.7.3 то и клиент должен быть версии на 1.7.3!
Пароль минимум 9 символов, но нельзя использовать символ $
Можно развернуть только сам контроллер домена без группы серверов.
DHCP сервер не обязательный, обновление А записей клиентов будет работать.
В процессе установки ОС можно убрать все, кроме рабочего стола fly и системных утилит.
Галочки безопасности то же можно все снять.
Уровень защищенности для сервера максимальных, для клиентов - любой.
Версии ALD
Версия ALDPro - 1 и имеет обновление (последнее 1.4.1). Скоро выйдет v2.
Имейте ввиду что обновление с 1.х до последней хоть и заявлено - не пройдет безболезненно и без участия технической поддержки, если вы не разработчик Python и Django. Лично я не хочу тратить время на дебаг кода.
Спасибо за замечания в комментариях, что еще важно, не путать ALD (samba ad) с ALDPro (FreeIPA), а версию Astra Linux SE (special edition) с CE (common edition).
Версии уровней защищенности (Орел, Смоленск, Воронеж) - больше юридические отличая, так как бинарно дистрибутивы не отличаются. Как впрочем и сервер от рабочей станции, дистрибутив один и тот же.
В описном примере использовался дистрибутив: 1.7.3-03.11.2022_15.53
Подготовка
Прежде чем приступить к разворачиванию ALD Pro, необходимо подготовить среду операционной системы, пропустим процесс установки, так как он тривиален, важно лишь отметить, что в процессе установки выбирать максимальный уровень защищенности, а авто настройку сети лучше отключать , что бы не мучится после, но это можно сделать и позже. Важно! Рабочий стол Fly (он же гном) - обязательный компонент! В целом (упрощенно) не менее 8Гб ОЗУ и не менее 50Гб HDD/SSD.
Если сетевое подключение настраивалось в network-manager - отключите его!
sudo systemctl stop network-manager
sudo systemctl disable network-manager
sudo apt remove network-manager-gnome
Настройте сеть на использование статического адреса в /etc/network/interfaces
sudo nano /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.0.10
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 77.88.8.8 x.x.x.x y.y.y.y
dns-search ald.domain.ru
#domain example.com # когда всего один домен но лучше опцию выше
В документации требует указывать и dns, но по факту создайте файл /etc/resolv.conf и внесите в него данные dns (nameserver 1.1.1.1 или любой).
sudo nano /etc/resolv.conf
nameserver 1.1.1.1
search ald.domain.ru
Укажите имя будущего контроллера ALDPro
sudo hostnamectl set-hostname dc01.ald.domain.ru
Помните! Если нужна интеграция или миграция из MS AD - ни каких заглавных букв и символов включая дефисы и нижние подчеркивания!
Дальше идем в /etc/hosts
sudo nano /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.0.10 dc01.ald.domain.ru dc01
127.0.1.1 dc01 #(может заглючить salt если убрать, но могу ошибатся не копал глубоко)
Подключаем репозитории ОС и ALDPro
sudo nano /etc/apt/sources.list
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.3/repository-base 1.7_x86-64 main non-free contrib
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.3/repository-extended 1.7_x86-64 main contrib non-free
sudo nano /etc/apt/sources.list.d/aldpro.list
deb https://dl.astralinux.ru/aldpro/stable/repository-main/ 1.4.1 main
deb https://dl.astralinux.ru/aldpro/stable/repository-extended/ generic main
Создаем файл приоритета
sudo nano /etc/apt/preferences.d/aldpro
Package: *
Pin: release n=generic
Pin-Priority: 900
Намеренно не пишу готовые команды добавления строчек в файлы.
На последок можно проверить уровень защищенности, команда должна вернуть 2 :
sudo astra-modeswitch get
Когда уровень защищенности ниже 2, переустанавливать не нужно, достаточно ввести команду (подробности тут):
sudo astra-modeswitch set 2
Обновляем и перезагружаем!
sudo apt update && sudo apt dist-upgrade -y
Важно использовать именно такую команду и нельзя использовать apt upgrade!
Для обычных версий, не сервера и не клиентов ALDPro используется astra-update -A -r -T
ПС Специально тикет заводил для уточнения )).
sudo reboot
Установка ALDPro
Чек лист перед началом установки:
Объем оперативной памяти не менее 8 ГБ (для первого контроллера);
ОС Astra Linux функционирует на максимальном уровне защищенности;
В файле /etc/hostname указано корректное имя в формате FQDN;
В файл /etc/hosts указаны корректные данные первого контроллера домена;
В файл /etc/apt/sources.list указаны репозитории ОС Astra Linux frozen;
В файле /etc/apt/sources.list.d/aldpro.list указаны репозитории;
Присутствует файл приоритета /etc/apt/preferences.d/aldpro;
Сетевой интерфейс имеет статический IP-адрес;
Доступность репозиториев для установки.
Важно соблюдать все пункты и требования выше под спойлером!
Процесс установки:
Установите портал управления ALDPro (он подтянет все остальное):
sudo DEBIAN_FRONTEND=noninteractive apt-get install -q -y aldpro-mp
После окончания не перезагружаться! Скорректируйте записи в resolv.conf
sudo nano /etc/resolv.conf
nameserver 127.0.0.1
search ald.domain.ru
и перезапустите сеть
sudo systemctl restart networking
И выполняем продвижение сервера до роли контроллера домена командой :
sudo /opt/rbta/aldpro/mp/bin/aldpro-server-install.sh -d ald.domain.ru -n dc01 -p MyPa$$word --ip 192.168.0.10 --no-reboot
где:
dc01 - имя контроллера домена;
ald.domain.ru - имя домена;
192.168.0.10 - IP адрес контроллера домена, который настраивали ранее;
MyPa$$word - пароль доменного администратора (admin).
перед выполнением желательно проверить nslookup или ping как полное имя так и без суффикса.
Готово! Подождите минутку две и можно перезагружать.
После перезагрузки авторизуйтесь на сервере в сеансе рабочего стола под учетной записью доменного администратора (admin), пароль указанный в команде продвижения. В браузере по умолчанию откроется страничка портала (без прозрачной авторизации). Имя вводить без суффикса домена. В случае, когда после перезагрузки в окне авторизации сессии рабочего стола не отображается выбор домена или локального хоста - нажмите Alt+U.
Установка закончена, но это еще не все!
Далее на контроллере домена обязательно нужно подправить NTP, конфиг BIND, монтирование USB для клиентов домена, создать правила ограничения доступа к серверам, добавить еще один контроллер, назначить роли для инженеров, которые смогут добавлять компьютеры в домен не имея возможность войти на сам контроллер и поменять настройки, настроить правила авто добавления для группы компьютеров и создать кастомные политики salt для установки и настройки дополнительного ПО. Можно так же запретить локальный вход на компьютерах домена.
Если публикация интересна и ее пропустят, напишу серию публикаций по дальнейшей настройке и обновлению. Выложу скрипт автоматической установки сервера и клиентов, с дополнительными опциями как переименование компьютера в домене, обновление IP адресов клиентов, настройкой сетевых папок и тд. делал для своего удобства.