Подробный гайд: Ввод Astra Linux в домен FreeIPA
Ввод Astra Linux в домен FreeIPA — это стандартная, но требующая внимательности процедура, особенно учитывая специфику российской операционной системы (например, уровни доверия Parsec и графическую оболочку Fly).
Ниже представлен подробный пошаговый гайд по вводу клиентской машины на базе Astra Linux Special Edition 1.7.x / 1.8.x в домен FreeIPA.
Предварительные требования
- Сервер FreeIPA уже развернут и работает.
- Сетевая связность: Клиент должен иметь доступ к серверу FreeIPA по портам DNS (53), HTTP/HTTPS (80/443), Kerberos (88), LDAP (389/632).
- Синхронизация времени: Разница во времени между клиентом и сервером не должна превышать 5 минут (требование Kerberos).
- DNS: Клиент должен резолвить FQDN сервера FreeIPA, а сервер FreeIPA должен резолвить FQDN клиента.
Шаг 1. Подготовка клиента (Сеть, DNS, Имя хоста)
1. Задайте корректное FQDN-имя для клиента:
sudo hostnamectl set-hostname client.astra.local
(Замените client.astra.local на ваше реальное имя в домене).
2. Отредактируйте файл /etc/hosts:
Убедитесь, что имя хоста прописано правильно. Важно: не привязывайте FQDN к 127.0.0.1 или 127.0.1.1, если это не единственный сетевой интерфейс.
127.0.0.1 localhost
192.168.1.50 client.astra.local client
3. Настройте DNS в /etc/resolv.conf (или через Netplan/NetworkManager, в зависимости от версии Astra):
Первым DNS-сервером обязательно должен быть указан IP-адрес сервера FreeIPA.
nameserver 192.168.1.10 # IP сервера FreeIPA
search astra.local
Проверка:
ping server.astra.local и nslookup server.astra.local.
Шаг 2. Установка необходимых пакетов
В Astra Linux пакет клиента FreeIPA обычно находится в основном или расширенном репозитории.
1. Обновите списки пакетов:
sudo apt update
2. Установите клиент FreeIPA и утилиты SSSD:
sudo apt install freeipa-client sssd sssd-tools
Примечание:
Если пакет freeipa-client не находится, убедитесь, что в /etc/apt/sources.list подключен репозиторий extended (или smolensk для 1.7.x).
Шаг 3. Ввод машины в домен FreeIPA
Запустите скрипт ввода в домен. Мы сразу добавим флаг --mkhomedir, чтобы при первом входе пользователя автоматически создавалась его домашняя директория.
sudo ipa-client-install --mkhomedir --force-join
Процесс установки и ответы на вопросы:
- Discovery: Скрипт попытается сам найти домен. Если DNS настроен верно, он найдет
astra.local. Нажмитеy(Yes) для подтверждения. - Time synchronization: Согласитесь на настройку синхронизации времени (обычно через
chronyилиntp). - Client hostname: Подтвердите предложенное FQDN имя.
- Realm: Подтвердите имя области (например,
ASTRA.LOCAL). - Administrator: Введите имя администратора FreeIPA (по умолчанию
admin). - Password: Введите пароль администратора FreeIPA.
- Do you want to configure chrony with NTP server?: Нажмите
y.
Если в конце вы увидите сообщение Client configuration complete. The ipa-client-install command was successful, значит, машина успешно введена в домен.
Шаг 4. Проверка работоспособности
1. Проверьте получение данных о пользователе:
id user@astra.local
getent passwd user@astra.local
(Замените user на реального пользователя из FreeIPA).
2. Проверьте получение Kerberos-билета:
kinit user@ASTRA.LOCAL
klist
Если билет получен и не истек, Kerberos работает корректно.
3. Проверьте статус служб:
systemctl status sssd
Шаг 5. Специфика Astra Linux (Важно!)
1. Вход через графический интерфейс (LightDM / Fly)
Иногда после ввода в домен доменные пользователи не могут войти в графическую сессию.
Решение:
Перезапустите менеджер дисплея:
sudo systemctl restart lightdm
- На экране входа введите логин в формате
user@astra.localили простоuser, если в настройках LightDM домен по умолчанию прописан корректно.
2. Уровни доверия Parsec (Для Astra Linux Special Edition)
Если на машине установлен высокий уровень защиты (Смоленск) и включен модуль Parsec, он может блокировать вход доменных пользователей или выполнение команд.
Решение:
Убедитесь, что в настройках Parsec (через parsec-tool или графическую утилиту Управление мандатным доступом) доменным пользователям разрешен вход в систему. В большинстве стандартных конфигураций SSSD и PAM корректно обходят это, но если вход не проходит — проверяйте правила Parsec.
3. Настройка sudo для доменных пользователей
По умолчанию доменные пользователи не имеют прав sudo. Права настраиваются на стороне сервера FreeIPA, а не на клиенте.
- Зайдите в веб-интерфейс FreeIPA.
- Перейдите в Policy (Политики) -> HBAC (Управление доступом на основе хостов).
- Создайте правило, разрешающее доступ (Allow) для нужной группы пользователей к нужной группе хостов (или всем хостам) через службу
sudoилиsshd. - Перейдите в Policy -> sudo -> sudo Rules.
- Создайте правило, дающее нужной группе пользователей права
ALL(или специфичные команды) на нужных хостах. На клиенте ничего настраивать не нужно,sssdавтоматически подтянет эти правила.
4. Локальные пользователи и доменные
Чтобы локальный пользователь (например, root или ваш локальный admin) не потерял доступ, убедитесь, что в файле /etc/sssd/sssd.conf (на клиенте) в секции [pam] или [domain/astra.local] нет жестких ограничений, блокирующих локальные аккаунты. По умолчанию SSSD в Astra настроен корректно и пропускает локальных пользователей из /etc/passwd.
Шаг 6. Выход из домена (если потребуется)
Если вам потребуется вывести машину из домена, выполните команду:
sudo ipa-client-install --uninstall
Эта команда удалит конфигурацию SSSD, Kerberos и вернет файлы в исходное состояние. На сервере FreeIPA запись о хосте останется, и при повторном вводе потребуется использовать флаг --force-join (как мы делали в Шаге 3).
Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.