Сложность развертывания 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

Чек лист перед началом установки:

  1. Объем оперативной памяти не менее 8 ГБ (для первого контроллера);

  2. ОС Astra Linux функционирует на максимальном уровне защищенности;

  3. В файле /etc/hostname указано корректное имя в формате FQDN;

  4. В файл /etc/hosts указаны корректные данные первого контроллера домена;

  5. В файл /etc/apt/sources.list указаны репозитории ОС Astra Linux frozen;

  6. В файле /etc/apt/sources.list.d/aldpro.list указаны репозитории;

  7. Присутствует файл приоритета /etc/apt/preferences.d/aldpro;

  8. Сетевой интерфейс имеет статический IP-адрес;

  9. Доступность репозиториев для установки.

Важно соблюдать все пункты и требования выше под спойлером!

Процесс установки:

Установите портал управления 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)


  1. IsKaropki
    10.07.2023 20:28

    А что такое ALDPro? Вдруг и мне нужно.


  1. antonstovpets
    10.07.2023 20:28
    +2

    Это дебиан и точка


  1. alex103
    10.07.2023 20:28
    +3

    ALD Pro – решение для управления службой каталогов (альтернатива MS Active Directory). Предназначено для централизованного управления Linux-подобных систем: управления доменом, управления объектами домена, мониторинга и отчетности.

    Где купить?

    Понятно... Идём в карту партнеров

    Упс..

    (улыбнуло)


  1. FotoHunter
    10.07.2023 20:28

    Вы не упомянули что это и для чего ????

    ALD Pro - это замена Windows AD с возможностью удалённого саппорта клиентов. Из аналогов можно упомянуть FreeIPA, SambaDC и возможно РедАдм Про(пока в стадии закрытого тестирования).

    Я проделывал этот квест. Целиком и полностью с вами согласен, что документация у Астры не для слабаков, в ней очень много чего отсутствует из расчёта "тыжадмин, ты знаешь, как тут должно быть", но не всегда то как должно быть очевидно. Начиная с дистрибутива - я вот не знал, что 1.7 и 2.12 - это РАЗНЫЕ ветки(продукты) , а не разные версии одной ОС. Это очевидно сделано, чтобы враг не догадался. Ветка 2.12 доступна для свободного скачивания и при этом практически не обновляется и не разрабатывается. ALD и ALD Pro - два совершенно разных продукта. То, что вы написали про "обновление" - это очередной адский угар от астры, но это сделано для стабильности работы т. к. прелусмотреть всё и обеспечивать обратную совместимость и работу со всеми версиями всех входящих в состав компонентов слишком сложно.


    1. cat_chi
      10.07.2023 20:28
      +2

      Начиная с дистрибутива - я вот не знал, что 1.7 и 2.12 - это РАЗНЫЕ ветки(продукты) , а не разные версии одной ОС

      Есть ощущение, что это меняется чаще, чем выходят новые версии. Ещё год назад ветка 1.7 была новее, чем 2.12, и 1.7 можно было скачать свободно. Если я совсем с ума не сошёл.

      Ветка 2.12 была заморожена.

      Сейчас же 2.12 как будто снова поддерживается, а 1.7 свободно скачать нельзя.

      В общем, маркетинг у Астры на уровне. Доносят информацию так, чтобы уж точно никто ни о чём не догадался.


      1. FotoHunter
        10.07.2023 20:28
        -1

        Вы путаете КОММЕРЧЕСКОЙ являлась 1.6 (цыфра 1 в номере означает коммерческая ветка, 2 бесплатная, а 4 arm - это же так "очевидно") потом с 1.6 коммерсов начали переводить на 1.7, которая "спрятана" на том же ftp - только но зная название файла его можно скачать ???? Ну и frozen - это стабильно замороженный релиз в который только патчи безопасности uu можно обновлять. Идеология названий и версий в духе военных с их секретностью ????


        1. cat_chi
          10.07.2023 20:28
          +1

          Что конкретно я путаю? :) Из того, что вы написали, ничего не противоречит тому, что я сказал. И про 1.6 я ничего не писал. И про frozen тоже.

          Да, 1.7 – коммерческая версия, но раньше она предоставлялась в трёх редакциях – "Орёл" (незащищённый), "Воронеж" и "Смоленск". И её вполне можно было скачать. Сейчас же на сайте вижу только Воронеж и Смоленск, и репозитории все закрыты.

          2.12 – это какая-то древняя бесплатная версия, которая была заморожена и не поддерживалась. И непонятно зачем она вообще была доступна, т.к. эффект от неё был исключительно негативный – люди скачивали, плевались от древних версий софта, и забывали про Астру как про страшный сон. Год назад было так. А сейчас я на сайте у Астры вижу свежее обновление для неё. Загадочно.

          P.S. А, понял, что вас сбило с толку. Нет, я просто криво выразился в предыдущем комментарии. Я не писал про то, что 2.12 была коммерческой. Я имел в виду, что она была допотопным говном, забытым и заброшенным.


          1. NoOne
            10.07.2023 20:28

            Таки нет. Орёл - и есть 2.12


            1. cat_chi
              10.07.2023 20:28
              +1

              1.7 в редакции без защиты – это тоже Орёл


              1. NoOne
                10.07.2023 20:28
                +1

                Таки да, согласен, был не прав.

                Как я понимаю, от отдельной ветки 2.12 (Орел) отказались и перешли в одну 1.7 с разными уровнями защиты.


      1. demon_sl Автор
        10.07.2023 20:28

        Варианты исполнения дистрибутивов Astra Linux:

        https://wiki.astralinux.ru/pages/viewpage.action?pageId=147161744


        1. 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) там совсем не указаны, а жаль.


          1. demon_sl Автор
            10.07.2023 20:28

            Для 1.7.х и для 4.7.x указаны, под спойлером по ссылке, а вот по остальным нет ((


          1. demon_sl Автор
            10.07.2023 20:28

            Вчера вышло оперативное обновление 1.7.4.UU1, ADLPro по прежнему на 1.7.3 и обновлять нельзя (


  1. yds
    10.07.2023 20:28
    +1

    Спасибо за статью. Действительно много подводных камней)

    Проблему с дефисами в именах хостов на семинаре сказали что вроде победили. NTP я бы настраивал в первую очередь. Скоро выйдет версия 2.0.

    Пишите еще. Ваш опыт очень полезен.


    1. demon_sl Автор
      10.07.2023 20:28

      Спасибо! Буду рад делиться полученным опытом!

      В NTP проблема проявляется в закрытом от интернета контуре, нужно либо вручную настроить chrony, либо выполнить команду в salt, иначе, что бы не прописали на web портале не будет иметь эффекта.


  1. xxxkms
    10.07.2023 20:28

    А мне вот интересно... а если клиент будет 1.7.4 (а сейчас как бы это свежая версия) ничего работать не будет?


    1. demon_sl Автор
      10.07.2023 20:28

      Частично работать будет, не будут работать "групповые политики" в основе которых лежит salt.


  1. AsphaltHero_0
    10.07.2023 20:28
    +1

    Чтож. Импортозамещение грядет. Скоро многим придется присесть на дикобраза.


  1. Ya_na_habre
    10.07.2023 20:28
    +1

    Дебиан, но без заглавных букв. И без символов.


  1. trojan218
    10.07.2023 20:28

    Автор жги ещё!

    Тема актуальна, если будут багреппорт в сторону разрабов, то вообще топчек!


  1. 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=27362143

    apt-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=38699775


    1. Johan_Palych
      10.07.2023 20:28

      Забыл добавить:
      Подготовка инфраструктуры PXE на Astra Linux
      https://wiki.astralinux.ru/pages/viewpage.action?pageId=263031254


  1. vasilisc
    10.07.2023 20:28
    +2

    Я уже устал тикеты создавать про установку и работу ALD Pro. Придётся внедрять в рамках импортозамещения и пока рассматриваем как инструмент IdM и то страшно.

    Кому интересны мои заметки

    http://vasilisc.com/notes-ald-pro


    1. eugenebliznyuk
      10.07.2023 20:28

      Как раз вашими заметками при подготовке к внедрению у заказчика пользовались, спасибо, пригодились.


    1. demon_sl Автор
      10.07.2023 20:28

      +1 ) то же заглядывал молодец! + накопилось еще много всего, что в документах не указано, будем писать сами ))


  1. NoOne
    10.07.2023 20:28
    +1

    ALD Pro основан на Free IPA. Насколько я знаю, до последнего времени в Free IPA не было Organizational Unit ("Подразделение").

    Как с этим в ALD Pro?


    1. demon_sl Автор
      10.07.2023 20:28
      +1

      Да, ALDPro приложение, которое управляет комбайном из разного ПО, основа IPA и Salt + ПО для дополнительной функциональности как в коменте выше от Johan_Palych (+сервер логов), задумка мне нравится, местами есть болячки, их быстро правят, что до подразделения, в ALDPro оно есть, а в IPA нет.

      Пока, сущность подразделения (это уже придумка Рубитеха), сводится к применению групповой политики, но к сожалению, не воспринимает группы компьютеров, добавлять то можно, но групповая политика применяется к подразделению в составе которого есть компьютеры / пользователи, а для группы компьютеров это уже не работает.