Проблема
Переход на отечественное программное обеспечение в государственных учреждениях и компаниях с госучастием ставит перед системными администраторами задачу построения доменной инфраструктуры на базе Astra Linux (Special Edition). В отличие от Windows Server с его привычной Active Directory, в мире Linux централизованное управление пользователями и политиками исторически реализуется через связку Samba, LDAP и Kerberos. Astra Linux предлагает собственное решение Astra Linux Directory (ALD), которое является форком FreeIPA и глубоко интегрировано с механизмами мандатного контроля целостности (МКЦ), замкнутой программной средой и подсистемой аудита. Однако развёртывание ALD с нуля вызывает вопросы даже у опытных администраторов, привыкших к Microsoft-стекам. В этой статье разберём пошаговую установку и настройку контроллера домена на базе Astra Linux Special Edition 1.7 с возможностью ввода в домен как Linux-, так и Windows-клиентов. Администрирование Astra Linux в части доменных служб ключевая компетенция для работы в защищённых средах.
Решение
Вместо ручной настройки Samba, OpenLDAP и Kerberos по отдельности воспользуемся штатным пакетом ald, входящим в состав Astra Linux Special Edition. Пакет разворачивает полноценный контроллер домена с поддержкой:
- Централизованной аутентификации пользователей и компьютеров.
- Групповых политик (через расширения Samba AD DC).
- Интеграции с DNS (встроенный BIND или интеграция с существующим).
- Управления мандатными метками и уровнями доступа через графическую оснастку
ald-admin.
Официальная документация доступна в репозитории разработчика: Astra Linux — ALD. Процесс состоит из установки пакетов, инициализации домена, настройки DNS и проверки работоспособности. После развёртывания к домену можно подключать как клиентские машины Astra Linux (через ald-client), так и Windows-станции (через стандартный механизм присоединения к домену, так как ALD эмулирует Active Directory на уровне протоколов SMB и Kerberos).
Пошаговая инструкция
Шаг 1. Подготовка сервера
Перед установкой ALD убедитесь, что сервер удовлетворяет минимальным требованиям:
- Astra Linux Special Edition 1.7 (Смоленск) с установленными обновлениями безопасности.
- Минимум 4 ГБ ОЗУ, 20 ГБ свободного места на диске.
- Статический IP-адрес и корректно настроенное имя хоста (FQDN).
- Установите статический IP и пропишите FQDN в
/etc/hosts:
bash
sudo nano /etc/hosts
Добавьте строку:
192.168.1.10 dc1.company.local dc1
Замените 192.168.1.10 на реальный IP вашего будущего контроллера домена, а dc1.company.local на полное доменное имя (например, dc1.office.local).
- Задайте имя хоста:
bash
sudo hostnamectl set-hostname dc1.company.local
- Обновите систему и установите необходимые пакеты:
bash
sudo apt update && sudo apt dist-upgrade -y
Шаг 2. Установка пакета ALD
Пакет ald входит в стандартный репозиторий Astra Linux SE. Установите его вместе с графической оснасткой:
bash
sudo apt install ald ald-admin -y
В процессе установки менеджер пакетов автоматически подтянет зависимости: samba, bind9, krb5-kdc, openldap и другие компоненты.
Шаг 3. Инициализация домена
Запустите мастер начальной настройки:
bash
sudo ald-init
Мастер задаст несколько вопросов в интерактивном режиме:
| Вопрос | Рекомендуемый ответ | Примечание |
|---|---|---|
| Domain name | company.local | Имя вашего будущего домена. Рекомендуется использовать зону .local или .lan, не конфликтующую с реальными интернет-доменами. |
| Realm name | COMPANY.LOCAL | Kerberos-область (автоматически генерируется из доменного имени в верхнем регистре). |
| Administrator password | СложныйПароль123! | Пароль для встроенной учётной записи admin (аналог Administrator в AD). |
| DNS forwarder | 8.8.8.8 | DNS-сервер, на который будут перенаправляться запросы вне зоны домена (можно указать корпоративный DNS). |
| Use BIND as DNS backend | Yes | Рекомендуется оставить Yes для автоматической настройки DNS-сервера. |
После ответов на вопросы начнётся процесс конфигурирования всех компонентов. Логи сохраняются в /var/log/ald/ald-init.log.
Шаг 4. Проверка работы доменных служб
После успешного завершения ald-init убедитесь, что все критичные службы запущены:
bash
sudo systemctl status samba-ad-dc
sudo systemctl status bind9
sudo systemctl status krb5-kdc
Проверьте, что Kerberos-билет для администратора запрашивается корректно:
bash
kinit admin@COMPANY.LOCAL
klist
В выводе должен отобразиться выданный билет Ticket Granting Ticket (TGT).
Проверьте разрешение доменных имён:
bash
nslookup dc1.company.local
nslookup company.local
Оба запроса должны возвращать IP-адрес контроллера домена.
Шаг 5. Открытие портов в межсетевом экране (если активен)
Astra Linux SE по умолчанию использует ufw или iptables. Для работы контроллера домена необходимо открыть следующие порты:
bash
sudo ufw allow 53/tcp
sudo ufw allow 53/udp
sudo ufw allow 88/tcp
sudo ufw allow 88/udp
sudo ufw allow 135/tcp
sudo ufw allow 137-138/udp
sudo ufw allow 139/tcp
sudo ufw allow 389/tcp
sudo ufw allow 389/udp
sudo ufw allow 445/tcp
sudo ufw allow 464/tcp
sudo ufw allow 464/udp
sudo ufw allow 636/tcp
sudo ufw allow 3268-3269/tcp
Если используется iptables напрямую, настройте правила аналогично. Список портов соответствует стандартным требованиям Active Directory и документирован в Service overview and network port requirements for Windows.
Шаг 6. Установка и настройка клиента Astra Linux (ALD Client)
Для присоединения рабочих станций Astra Linux к домену установите пакет ald-client на клиентской машине:
bash
sudo apt install ald-client -y
Затем выполните ввод в домен:
bash
sudo ald-client join -d company.local -u admin
Система запросит пароль администратора домена. После успешного выполнения в файле /etc/sssd/sssd.conf появятся настройки подключения к домену. Перезагрузите службу SSSD:
bash
sudo systemctl restart sssd
Проверьте возможность аутентификации доменным пользователем:
bash
su - admin@company.local
id
В выводе должна отобразиться информация о пользователе и его группах.
Шаг 7. Подключение Windows-клиентов к домену ALD
ALD эмулирует контроллер домена Active Directory на уровне Samba 4. Поэтому Windows-клиенты могут присоединяться к домену штатными средствами.
- На Windows-клиенте убедитесь, что в качестве DNS-сервера указан IP контроллера домена Astra Linux.
- Откройте Параметры системы , Имя компьютера , Изменить.
- Выберите Домен, введите
company.localи нажмите ОК. - Введите учётные данные:
admin@company.localи пароль администратора домена. - После перезагрузки вы сможете входить под доменными учётными записями.
Групповые политики для Windows-клиентов настраиваются через стандартные средства (gpmc.msc), но сами объекты GPO хранятся в Samba AD и редактируются с любой Windows-машины с установленными средствами администрирования RSAT.
Шаг 8. Управление пользователями и группами через графическую оснастку
Для удобства администрирования используйте ald-admin:
bash
sudo ald-admin
Оснастка предоставляет графический интерфейс для:
- Создания и удаления пользователей и групп.
- Назначения мандатных меток и уровней доступа.
- Просмотра логов аудита.
- Управления доверенными отношениями с другими доменами.
Интерфейс интуитивно понятен администраторам, знакомым с Active Directory Users and Computers.
Устранение распространённых проблем
| Симптом | Вероятная причина | Решение |
|---|---|---|
ald-init завершается ошибкой «Failed to start Samba AD DC» | Конфликт с уже запущенным процессом smbd или nmbd | Остановите стандартные службы Samba: sudo systemctl stop smbd nmbd. Отключите их автозапуск: sudo systemctl disable smbd nmbd. Повторите ald-init. |
| Клиенты не могут разрешить имя домена | Неверно настроен DNS-клиент или BIND не слушает нужный интерфейс | Проверьте конфигурацию BIND: sudo nano /etc/bind/named.conf.options. Убедитесь, что директива listen-on включает IP контроллера домена. Перезапустите BIND: sudo systemctl restart bind9. |
| При вводе Windows-клиента в домен ошибка «Не найден сетевой путь» | Заблокированы порты SMB (445) или неправильный порядок DNS-суффиксов | Временно отключите брандмауэр на контроллере домена: sudo ufw disable. Если ввод успешен, настройте правила ufw согласно шагу 5. |
| Доменный пользователь не может войти на Astra Linux клиент | SSSD не синхронизировал кеш или неверно настроен PAM | Проверьте логи SSSD: sudo journalctl -u sssd -f. Убедитесь, что в /etc/nsswitch.conf присутствуют строки: passwd: files sss, group: files sss, shadow: files sss. |
| Не работают мандатные метки после ввода в домен | На клиенте не установлен пакет parsec или не настроен ald-client с поддержкой МКЦ | Установите parsec: sudo apt install parsec. При вводе в домен используйте ключ --with-mandat: sudo ald-client join -d company.local -u admin --with-mandat. |
Итог
Администрирование Astra Linux в части доменных служб с использованием ALD это современный и полностью отечественный подход к централизованному управлению инфраструктурой. В отличие от самостоятельной настройки Samba и OpenLDAP, ald автоматизирует развёртывание и обеспечивает интеграцию с уникальными механизмами защиты Astra Linux Special Edition (мандатный контроль, замкнутая среда). Построенный по описанной инструкции контроллер домена способен обслуживать как Linux-, так и Windows-клиентов, что делает его универсальным решением для организаций с гетерогенной сетью. После развёртывания базового домена рекомендуется изучить расширенные возможности ALD: настройку репликации между несколькими контроллерами, резервное копирование LDAP-каталога и интеграцию с существующими службами каталогов.







