Сложность развертывания 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 адресов клиентов, настройкой сетевых папок и тд. делал для своего удобства.
Комментарии (28)
alex103
10.07.2023 20:28+3ALD Pro – решение для управления службой каталогов (альтернатива MS Active Directory). Предназначено для централизованного управления Linux-подобных систем: управления доменом, управления объектами домена, мониторинга и отчетности.
Где купить?
Понятно... Идём в карту партнеров
Упс..
(улыбнуло)
FotoHunter
10.07.2023 20:28Вы не упомянули что это и для чего ????
ALD Pro - это замена Windows AD с возможностью удалённого саппорта клиентов. Из аналогов можно упомянуть FreeIPA, SambaDC и возможно РедАдм Про(пока в стадии закрытого тестирования).
Я проделывал этот квест. Целиком и полностью с вами согласен, что документация у Астры не для слабаков, в ней очень много чего отсутствует из расчёта "тыжадмин, ты знаешь, как тут должно быть", но не всегда то как должно быть очевидно. Начиная с дистрибутива - я вот не знал, что 1.7 и 2.12 - это РАЗНЫЕ ветки(продукты) , а не разные версии одной ОС. Это очевидно сделано, чтобы враг не догадался. Ветка 2.12 доступна для свободного скачивания и при этом практически не обновляется и не разрабатывается. ALD и ALD Pro - два совершенно разных продукта. То, что вы написали про "обновление" - это очередной адский угар от астры, но это сделано для стабильности работы т. к. прелусмотреть всё и обеспечивать обратную совместимость и работу со всеми версиями всех входящих в состав компонентов слишком сложно.
cat_chi
10.07.2023 20:28+2Начиная с дистрибутива - я вот не знал, что 1.7 и 2.12 - это РАЗНЫЕ ветки(продукты) , а не разные версии одной ОС
Есть ощущение, что это меняется чаще, чем выходят новые версии. Ещё год назад ветка 1.7 была новее, чем 2.12, и 1.7 можно было скачать свободно. Если я совсем с ума не сошёл.
Ветка 2.12 была заморожена.
Сейчас же 2.12 как будто снова поддерживается, а 1.7 свободно скачать нельзя.
В общем, маркетинг у Астры на уровне. Доносят информацию так, чтобы уж точно никто ни о чём не догадался.
FotoHunter
10.07.2023 20:28-1Вы путаете КОММЕРЧЕСКОЙ являлась 1.6 (цыфра 1 в номере означает коммерческая ветка, 2 бесплатная, а 4 arm - это же так "очевидно") потом с 1.6 коммерсов начали переводить на 1.7, которая "спрятана" на том же ftp - только но зная название файла его можно скачать ???? Ну и frozen - это стабильно замороженный релиз в который только патчи безопасности uu можно обновлять. Идеология названий и версий в духе военных с их секретностью ????
cat_chi
10.07.2023 20:28+1Что конкретно я путаю? :) Из того, что вы написали, ничего не противоречит тому, что я сказал. И про 1.6 я ничего не писал. И про frozen тоже.
Да, 1.7 – коммерческая версия, но раньше она предоставлялась в трёх редакциях – "Орёл" (незащищённый), "Воронеж" и "Смоленск". И её вполне можно было скачать. Сейчас же на сайте вижу только Воронеж и Смоленск, и репозитории все закрыты.
2.12 – это какая-то древняя бесплатная версия, которая была заморожена и не поддерживалась. И непонятно зачем она вообще была доступна, т.к. эффект от неё был исключительно негативный – люди скачивали, плевались от древних версий софта, и забывали про Астру как про страшный сон. Год назад было так. А сейчас я на сайте у Астры вижу свежее обновление для неё. Загадочно.
P.S. А, понял, что вас сбило с толку. Нет, я просто криво выразился в предыдущем комментарии. Я не писал про то, что 2.12 была коммерческой. Я имел в виду, что она была допотопным говном, забытым и заброшенным.
demon_sl Автор
10.07.2023 20:28Варианты исполнения дистрибутивов Astra Linux:
https://wiki.astralinux.ru/pages/viewpage.action?pageId=147161744
cat_chi
10.07.2023 20:28Открываем ссылку про CE:
Создатель Александр Левдонский, отредактировано 30.03.22
Март 2022. А я говорю о ситуации, какой она была год назад (лето-осень 2022) и о ситуации сейчас.
Последняя версия Astra CE в вики по этой ссылке – 2.12.44. Последняя версия Astra CE, доступная для скачивания – 2.12.46 от апреля 2023.
Не понимаю, что вы этой ссылкой хотели сказать. Хотя табличка версий для SE полезная, там хотя бы видно, где какие версии ядра. Правда, минорные релизы (типа 1.7.2, 1.7.3, 1.7.4) там совсем не указаны, а жаль.
demon_sl Автор
10.07.2023 20:28Вчера вышло оперативное обновление 1.7.4.UU1, ADLPro по прежнему на 1.7.3 и обновлять нельзя (
yds
10.07.2023 20:28+1Спасибо за статью. Действительно много подводных камней)
Проблему с дефисами в именах хостов на семинаре сказали что вроде победили. NTP я бы настраивал в первую очередь. Скоро выйдет версия 2.0.
Пишите еще. Ваш опыт очень полезен.
demon_sl Автор
10.07.2023 20:28Спасибо! Буду рад делиться полученным опытом!
В NTP проблема проявляется в закрытом от интернета контуре, нужно либо вручную настроить chrony, либо выполнить команду в salt, иначе, что бы не прописали на web портале не будет иметь эффекта.
AsphaltHero_0
10.07.2023 20:28+1Чтож. Импортозамещение грядет. Скоро многим придется присесть на дикобраза.
trojan218
10.07.2023 20:28Автор жги ещё!
Тема актуальна, если будут багреппорт в сторону разрабов, то вообще топчек!
Johan_Palych
10.07.2023 20:28+1Не запускать apt apgrade, вообще ни где и ни когда!
"Никогда и нигде не играйте со спичками и зажигалками..." Поправьте apgrade.
Рабочий стол Fly (он же гном)
Какой Gnome? https://wiki.astralinux.ru/kb/rabochij-stol-fly-238762790.html
Требования к серверу и клиентам одинаковые — основная причина saltstack
Компонентная схема ALD Pro(https://www.aldpro.ru) : FreeIPA, Reprepo, TFTP + PXE, Zabbix, Grafana, SaltStack
Документация в свободном доступе: https://www.aldpro.ru/docs/ https://www.aldpro.ru/docs/manual_admin.pdf
Просто ставим компоненты без ALD Pro и saltstack.
В сетке предприятия есть клиенты на Windows. Выбор за Ansible.
Установка и настройка взаимодействия связки Foreman-Puppet, Foreman-Ansible
https://wiki.astralinux.ru/pages/viewpage.action?pageId=57444668В проде для высокой доступности FreeIPA желательны минимум 2 реплики.
https://freeipa.org/page/Deployment_Recommendations#servers-replicas
Generally it is recommended to have at least 2-3 replicas in each datacenter.
Ставим по инструкции:
Контроллер ЕПП FreeIPA в Astra Linux
https://wiki.astralinux.ru/pages/viewpage.action?pageId=27362143apt-mirror - однозначный выбор!
Создание репозиториев для операционной системы Astra Linux Special Edition 1.7 в закрытом сегменте
https://wiki.astralinux.ru/pages/viewpage.action?pageId=199148426Установка системы мониторинга Zabbix на Astra Linux SE
https://wiki.astralinux.ru/pages/viewpage.action?pageId=38699775Johan_Palych
10.07.2023 20:28Забыл добавить:
Подготовка инфраструктуры PXE на Astra Linux
https://wiki.astralinux.ru/pages/viewpage.action?pageId=263031254
vasilisc
10.07.2023 20:28+2Я уже устал тикеты создавать про установку и работу ALD Pro. Придётся внедрять в рамках импортозамещения и пока рассматриваем как инструмент IdM и то страшно.
Кому интересны мои заметки
http://vasilisc.com/notes-ald-pro
eugenebliznyuk
10.07.2023 20:28Как раз вашими заметками при подготовке к внедрению у заказчика пользовались, спасибо, пригодились.
demon_sl Автор
10.07.2023 20:28+1 ) то же заглядывал молодец! + накопилось еще много всего, что в документах не указано, будем писать сами ))
NoOne
10.07.2023 20:28+1ALD Pro основан на Free IPA. Насколько я знаю, до последнего времени в Free IPA не было Organizational Unit ("Подразделение").
Как с этим в ALD Pro?
demon_sl Автор
10.07.2023 20:28+1Да, ALDPro приложение, которое управляет комбайном из разного ПО, основа IPA и Salt + ПО для дополнительной функциональности как в коменте выше от Johan_Palych (+сервер логов), задумка мне нравится, местами есть болячки, их быстро правят, что до подразделения, в ALDPro оно есть, а в IPA нет.
Пока, сущность подразделения (это уже придумка Рубитеха), сводится к применению групповой политики, но к сожалению, не воспринимает группы компьютеров, добавлять то можно, но групповая политика применяется к подразделению в составе которого есть компьютеры / пользователи, а для группы компьютеров это уже не работает.
IsKaropki
А что такое ALDPro? Вдруг и мне нужно.