Гид по технологиям

Установка и настройка FreeIPA Client на CentOS 7

• 5 min read • Linux • Обновлено 20 Nov 2025
FreeIPA client на CentOS 7 — установка и проверка
FreeIPA client на CentOS 7 — установка и проверка

Карта архитектуры FreeIPA и компонентов

FreeIPA — свободный набор для управления идентификацией, политиками и аудитом (Identity, Policy, Audit), поддерживаемый Red Hat. Решение объединяет Fedora/Linux, 389 Directory Server (LDAP), MIT Kerberos, NTP, BIND DNS, Dogtag (сертификаты), Apache и Python.

Кратко: клиент FreeIPA позволяет Linux-хосту использовать централизованные учётные записи, Kerberos-аутентификацию и политики через сервер FreeIPA.

Важно: далее приведён пример для CentOS 7. Процедура на Fedora и Ubuntu похожа, но пакеты и менеджер пакетов отличаются.

Требования

  • Рабочий сервер с установленным FreeIPA Server.
  • Клиент: CentOS 7.
  • Права root на клиенте и правая учётная запись администратора на сервере FreeIPA.
  • Доступ по сети между клиентом и сервером (порт 53 для DNS, порты FreeIPA: 80/443/389/636/88/464 и др. в зависимости от конфигурации).

Что мы делаем

  1. Добавим DNS-запись клиента на сервере FreeIPA.
  2. Настроим resolver на клиенте и откроем порт DNS в firewalld.
  3. Установим корректный FQDN на клиенте.
  4. Установим FreeIPA client-пакеты и запустим ipa-client-install.
  5. Проверим регистрацию хоста на сервере и в веб-интерфейсе.
  6. Протестируем вход по SSH новым FreeIPA-пользователем.

Шаг 1 — Добавление DNS-записи

Сначала добавьте DNS-запись клиента в FreeIPA.

Зайдите на FreeIPA-сервер и получите Kerberos-токен администратора:

kinit admin  
TYPE YOUR PASSWORD

После успешной аутентификации добавьте запись DNS (замените имена и IP на ваши):

ipa dnsrecord-add hakase-labs.io client --a-rec 10.9.9.16

Если у вас настроен обратный DNS или зона PTR — добавьте и PTR-запись.

Шаг 2 — Настройка DNS resolver и firewalld

Для автоматического обнаружения FreeIPA клиентом resolver должен указывать на FreeIPA DNS.

Отредактируйте /etc/resolv.conf:

vim /etc/resolv.conf

Пример содержимого (подставьте свои значения):

search hakase-labs.io  
nameserver 10.9.9.15

Важно: если ваша система использует NetworkManager или systemd-resolved, правьте настройки через соответствующие профили, а не правьте resolv.conf напрямую — изменения могут быть перезаписаны.

Откройте DNS-службу в firewalld на клиенте (используется для автодискавери):

firewall-cmd --add-service=dns --permanent  
firewall-cmd --reload

Если сеть защищена сетевыми ACL или внешним фаерволом, откройте доступ к DNS и к портам FreeIPA на уровне сети.

Важно: автодискавери использует запись SRV/DNS; если DNS настроен некорректно, ipa-client-install не сможет автоматически найти сервер.

Шаг 3 — Настройка FQDN

Корректный FQDN обязателен для Kerberos и сертификатов.

Установите имя хоста:

hostnamectl set-hostname client.hakase-labs.io

Добавьте соответствия IP и имён в /etc/hosts (если требуется):

vim /etc/hosts

Пример:

10.9.9.15   ipa.hakase-labs.io  ipa  
10.9.9.16   client.hakase-labs.io client

Перейдите в новую сессию и проверьте FQDN:

hostname -f

Если команда возвращает корректное полное имя — можно продолжать.

Шаг 4 — Установка FreeIPA Client на CentOS 7

Установите пакеты клиента (CentOS 7 содержит пакеты в стандартном репозитории):

sudo yum -y install freeipa-client ipa-admintools

Запустите интерактивный установщик клиента, который настроит Kerberos, SSSD, NSS/PAM и ключи:

ipa-client-install --mkhomedir --force-ntpd

Ответьте “yes” при просьбе применить изменения, сгенерированные автодискавери. По завершении вы увидите сообщение, что ipa-client-install выполнена успешно.

Скриншот установки клиента FreeIPA на CentOS 7

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

  • Проверьте, что в /etc/resolv.conf первым указан ваш FreeIPA DNS.
  • Убедитесь, что порт 53 открыт и что DNS-запись клиента присутствует на сервере.
  • Используйте явную передачу параметров (–server, –domain, –realm) вместо автодискавери.

Пример явной установки:

ipa-client-install --mkhomedir --server=ipa.hakase-labs.io --domain=hakase-labs.io --realm=HAKASE-LABS.IO

Шаг 5 — Проверка установки

На сервере FreeIPA проверьте, что хост зарегистрирован:

ipa host-show client.hakase-labs.io

Вы должны увидеть поля с информацией о хосте.

Проверьте в веб-интерфейсе FreeIPA: зайдите в Dashboard → Hosts и найдите ваш хост (вкладка Hosts).

Скриншот панели FreeIPA с информацией о хосте

Шаг 6 — Тестирование

Создайте тестового пользователя на сервере FreeIPA:

ipa user-add yume --first=yume --last=sensei [email protected]  --shell=/bin/bash --password

Создание тестового пользователя в FreeIPA

Попробуйте зайти на клиент через SSH под созданным пользователем (с сервера или любой машины с сетью):

ssh [email protected]

Если всё настроено верно, вы войдёте на клиент, и домашний каталог будет создан автоматически (опция –mkhomedir).

Тест входа по SSH с использованием FreeIPA-пользователя

Типичные ошибки и когда это не сработает

  • DNS не указывает на FreeIPA-сервер или отсутствуют SRV-записи — автодискавери провалится.
  • Неверный FQDN на клиенте — Kerberos не сможет выдать билет.
  • Несинхронизированное время (NTP) — Kerberos отклонит запросы.
  • SELinux или локальные правила PAM/SSSD нарушают процесс — проверяйте логи.

Быстрые проверки и отладка

  • Проверка DNS: dig +short ipa.hakase-labs.io SRV
  • Проверка Kerberos: kinit admin && klist
  • Проверка SSSD: journalctl -u sssd -e
  • Проверка аутентификации: getent passwd yume

Альтернативные подходы

  • Ручная настройка SSSD/NSS/PAM без ipa-client-install (полезно для контейнеров или кастомных систем).
  • Использование LDAP/Kerberos только для аутентификации без полного набора FreeIPA (упрощённый вариант).
  • Для рабочих нагрузок в облаке — использовать управляемые сервисы идентификации и привязать FreeIPA через LDAP/AD bridge.

Рекомендуемая проверочная методология (мини-SOP)

  1. На сервере: проверить записи DNS и SRV.
  2. На клиенте: проверить /etc/resolv.conf и hostname.
  3. Запустить ipa-client-install и сохранить вывод в лог.
  4. На сервере: ipa host-show и проверка в UI.
  5. Создать тест-пользователя и выполнить ssh.
  6. Проверить логи (sssd, krb5kdc, httpd для проблем с UI).

Роли и чек-листы

Admin (тот, кто работает на FreeIPA-сервере):

  • Добавить DNS-запись клиента.
  • Проверить SRV-записи и зоны.
  • Создать тест-пользователя.

Operator (тот, кто работает на клиенте):

  • Настроить resolver.
  • Установить пакеты.
  • Выполнить ipa-client-install и сохранить вывод.
  • Протестировать вход и права доступа.

Критерии приёмки

  • Клиент отображается в списке Hosts на сервере FreeIPA.
  • Пользователь FreeIPA может войти через SSH на клиент.
  • SSSD успешно получает и кеширует записи учётных записей и групп.

Безопасность и соответствие

  • Kerberos требует точного времени: настройте NTP/chrony на всех хостах.
  • Минимизируйте привилегии у пользователей.
  • Храните журналы аудита и периодически проверяйте.
  • Если данные персональные, учитывайте требования локального законодательства при хранении и репликации пользовательских данных.

Глоссарий (в одну строку)

  • FreeIPA — серверное решение для централизованной идентификации и политик на базе LDAP и Kerberos.
  • SSSD — служба на клиенте для получения учётных записей и кеширования.
  • FQDN — полное доменное имя хоста.
  • Autodiscovery — автоматическое обнаружение сервера через DNS SRV-записи.

Итог

Установка клиента FreeIPA на CentOS 7 включает добавление DNS-записи, настройку resolver и FQDN, установку пакетов и запуск ipa-client-install. Основные проблемы связаны с DNS, временем и правами доступа. После регистрации и теста входа по SSH система должна работать как централизованная точка аутентификации.

Короткий чек: DNS → FQDN → установить пакеты → ipa-client-install → проверить в UI → протестировать вход.

Полезные ссылки

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро