Настройка FreeIPA для централизованного управления идентификацией

Управление доступом на множестве Linux-серверов часто превращается в хаос: учётные записи разбросаны, права приходится править вручную, а безопасность страдает. Мы настраиваем FreeIPA, чтобы централизовать идентификацию и аутентификацию в вашей инфраструктуре. Наша команда реализует проект под ключ — от аудита до внедрения и последующей поддержки, обеспечивая надёжное и масштабируемое решение.
Часто задаваемые вопросы

Настройка FreeIPA для централизованного управления идентификацией

Мы разворачиваем FreeIPA для клиентов, которые мучаются с хаосом в управлении доступом на 100–500 Linux-серверах. Учётные записи разбросаны по /etc/passwd, sudo-правила правятся вручную на каждой машине, SSH-ключи синхронизируются костылями. В результате — риск ошибок и дыры в безопасности. FreeIPA решает эти проблемы: единый LDAP-каталог, Kerberos-аутентификация, централизованные HBAC и sudo-политики, встроенный PKI и двухфакторная аутентификация. Всё управляется из веб-консоли или через Ansible. FreeIPA — нативное Linux-решение, не требующее дополнительных мостов. Оно даёт полный контроль над доступом к серверам, автоматически раздаёт Kerberos-тикеты и TLS-сертификаты. Экономия на лицензиях Active Directory может достигать $15 000 в год для инфраструктуры на 200 пользователей — внедрение окупается за 3–6 месяцев. Кроме того, сокращается время администратора на управление доступом на 80%, что равно экономии около $10 000 в год на зарплате одного сотрудника.

«FreeIPA обеспечивает централизованное управление идентификацией для тысяч серверов с минимальными затратами на обслуживание» — документация проекта.

Какие проблемы решает FreeIPA?

Разрозненные учётные записи. Когда у каждого сервера свои пользователи, приём или увольнение сотрудника превращается в ад. FreeIPA даёт единый источник правды: пользователь создаётся один раз и получает доступ ко всем разрешённым серверам. Время на создание аккаунта сокращается с 20 минут до 2.

Ручные sudo-правила. Правки в /etc/sudoers на каждом сервере — источник ошибок. FreeIPA централизует sudo через HBAC. Например, можно разрешить SRE-команде выполнять systemctl только на production-серверах. Настройка одного правила занимает 5 минут, а не день ротации по всем машинам.

Управление сертификатами. Внутренние сервисы часто используют самоподписанные сертификаты, что опасно и неудобно. FreeIPA включает центр сертификации Dogtag PKI, который автоматически выписывает и обновляет сертификаты через certmonger. Это избавляет от ручного обновления и снижает риск компрометации.

Как мы разворачиваем FreeIPA?

Архитектура: primary-сервер и реплика для отказоустойчивости. Репликация multi-master — оба сервера могут принимать изменения. Установка на RHEL 8/9 или AlmaLinux.

Шаг 1: Установка primary-сервера:

dnf install freeipa-server freeipa-server-dns
ipa-server-install --domain=corp.example.com --realm=CORP.EXAMPLE.COM \
  --ds-password=... --admin-password=... --setup-dns --forwarder=8.8.8.8 --auto-reverse --unattended

После установки проверяем: kinit admin && ipa user-find --all | head -20. Шаг 2: Установка реплики:

ipa-replica-install --principal admin --admin-password=... --setup-dns --forwarder=8.8.8.8 --unattended 

Шаг 3: Подключение клиентов через Ansible или вручную:

dnf install freeipa-client ipa-client-install --domain=corp.example.com --server=ipa01.corp.example.com \
    --principal=admin --password=... --mkhomedir --unattended

После этого на клиентах работает sssd, пользователи аутентифицируются по Kerberos, применяются HBAC- и sudo-правила. Весь процесс установки двух серверов и интеграции клиентов занимает 2–4 дня.

Как настроить HBAC и sudo-политики?

HBAC — альтернатива /etc/sudoers. Создаём группы серверов и пользователей, затем правило:

ipa hostgroup-add production-servers --desc="Production Linux Servers"
ipa hostgroup-add-member production-servers --hosts=app01.corp.example.com
ipa group-add sre-team
ipa group-add-member sre-team --users=jsmith
ipa hbacrule-add allow-sre-production --servicecat=all
ipa hbacrule-add-host allow-sre-production --hostgroups=production-servers
ipa hbacrule-add-user allow-sre-production --groups=sre-team
ipa hbactest --user=jsmith --host=app01.corp.example.com --service=sshd

По умолчанию действует правило allow_all — его отключаем: ipa hbacrule-disable allow_all. Затем создаём явные правила.

Sudo-политики управляются аналогично: создаём sudo-команды, группы команд и правила. На клиенте sudo обращается к FreeIPA через sssd — никаких ручных файлов. Время настройки для типовой инфраструктуры из 50 серверов — около 3 часов.

Как обеспечить отказоустойчивость и резервное копирование?

Для отказоустойчивости разворачиваем реплику FreeIPA с multi-master репликацией. При выходе из строя primary-сервера клиенты автоматически переключаются на реплику через DNS SRV-записи. Рекомендуется минимум два сервера в разных дата-центрах. Резервное копирование выполняется встроенной командой ipa-backup. Бэкапы хранятся в /var/lib/ipa/backup/. Рекомендуется бэкапить все серверы, особенно primary. Автоматизация копирования настраивается через cron и Ansible.

PKI и двухфакторная аутентификация

FreeIPA включает Dogtag PKI. Сертификаты для внутренних сервисов запрашиваются через ipa-getcert и автоматически обновляются certmonger. Это избавляет от ручного управления и снижает затраты на покупку платных сертификатов. OTP-токены на основе TOTP добавляются командой ipa otptoken-add. Пользователь вводит пароль + код из приложения — для SSH это работает через PAM+sssd. Внедрение PKI и OTP занимает 1–2 дня.

Сравнение: FreeIPA vs Active Directory

Критерий FreeIPA Active Directory
Нативная поддержка Linux Да Требуется отдельный AD-мост
HBAC и sudo Встроены Нет прямых аналогов
PKI Dogtag PKI Active Directory Certificate Services
Лицензия Open source (GPL) Платная
Интеграция с Ansible Встроенная коллекция Через winrm

FreeIPA легче интегрируется с Linux-стеком, не требует лицензий и экономит до $15 000 в год на 200 пользователях. Для гетерогенных сред AD может быть необходим, но для чистого Linux — FreeIPA удобнее и дешевле.

Этапы работы и что входит

Этап Срок
Планирование архитектуры и подготовка серверов 0.5 дня
Установка primary-сервера и реплики 1–2 дня
Подключение клиентов через Ansible 1 день
Настройка HBAC, sudo-политик, PKI, OTP 2–3 дня
Тестирование, документация, обучение 1 день

Отметим: что входит в работу:

  • Проект архитектуры (домен, DNS, репликация).
  • Деплой primary и replica, настройка репликации.
  • Интеграция с существующей DNS (при необходимости).
  • Ansible-плейбуки для подключения клиентов.
  • Настройка HBAC и sudo-политик под вашу структуру.
  • Выпуск сертификатов через PKI, настройка OTP.
  • Документация по эксплуатации и резервному копированию.
  • Обучение администраторов (2–3 часа).

Итоговый срок — 5–8 рабочих дней в зависимости от масштаба. Свяжитесь с нами, чтобы обсудить вашу инфраструктуру. Получите консультацию эксперта по FreeIPA — и забудьте о ручном управлении доступом.

Наши компетенции:

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1393
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1368
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    815
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1139