Содержание

Назначение

В инструкции описан процесс развёртывания сервера IPA (Identification, Policy and Audit). Сервер IPA предназначен для организации единой службы аутентификации в OC семейства ROSA Linux, других популярных современных версиях ОС Linux, ОС семейства Windows, а также некоторых других ОС.

Конструктивно сервер IPA представляет собой связку из серверов MIT Kerberos, LDAP 389 Directory, NTP для обеспечения единого времени, системы управление центром сертификации Dogtag и сервера имён для обслуживаемых доменов.

Возможна настройка общего хранилища на базе NFS с аутентификацией по билетам Kerberos, а также доступны некоторые политики безопасности (только для Linux/UNIX), включая политики sudo, парольные политики, автоматическое монтирование через autofs, включение в домен рабочих станций и др.

Администратору предоставляется удобный интерфейс администрирования с помощью встроенного HTTP(S)-сервера. Вы можете управлять развёрнутым сервером IPA прямо из браузера по защищённому HTTPS-соединению. Также поддерживается объединение доменов AD и IPA с помощью функций взаимного доверия (TRUST). Сервер IPA поддерживает функцию двухфакторной аутентификации (с помощью внешнего привлекаемого сервера RADIUS). Помимо веб-интерфейса, доступно администрирование сервера с помощью утилит командной строки.

Список поддерживаемых клиентских ОС

ОС семейства Linux:

ОС семейства Windows:

UNIX-совместимые ОС:

ОС семейства UNIX:

Планируется поддержка:

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

ОС РОСА «КОБАЛЬТ» соответствует требованиям методического документа ФСТЭК «Профиль защиты операционных систем типа «А» четвёртого класса» (ИТ.ОС.А4.ПЗ). Прочие вышеперечисленные ОС поддерживают работу в среде IPA, но большинство из них не имеют аналогичного класса защищённости и не могут применяться в защищённых АС без использования дополнительных средств защиты либо без согласования с органом по аттестации.

Установка

Предполагается, что на момент настройки контроллера домена у вас есть сервер с установленной ОС RELS/РОСА «КОБАЛЬТ» в варианте «Стандартный сервер РОСА».

Для RELS нужно получить и установить в файл /etc/rosa-support-id-server лицензионный ключ, после чего произвести обновление:

yum update

Все приведённые команды выполняются от имени администратора (root).

В примерах, приводимых в данной инструкции, мы предполагаем, что сервер имеет следующие сетевые настройки:

hostnamectl dc1.test.dom
Имя: dc1.test.dom
IP:192.168.76.47/24
Gateway: 192.168.76.1
DNS: 8.8.8.8

Установка сервера IPA и настройка его окружения

yum install bind-dyndb-ldap bind ipa-server ipa-server-dns
hostnamectl status
cat /etc/hosts

Содержимое файла hosts должно иметь следующий вид:

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.76.47 dc1.test.dom dc1

Последняя строка должна указывать на сервер.

search test.dom
nameserver 192.168.76.47

Перед установкой сервера IPA убедитесь, что имя сервера (hostname) записано строчными буквами. Имя сервера задаётся в файле /etc/sysconfig/network:

# cat /etc/sysconfig/network
HOSTNAME=dc1.test.dom
NETWORKING=yes
NISDOMAIN=test.dom

Поскольку при установке FreeIPA параметры SELinux устанавливаются автоматически, отключать его не нужно.

Инициализация сервера IPA

ipa-server-install

Журнал этой установки записывается в файл /var/log/ipaserver-install.log.

Данная программа позволит сконфигурировать IPA Server, а именно:

Далее настройка будет происходить в режиме «вопрос-ответ». Везде, где не указано обратное, нужно выбирать предлагаемое по умолчанию значение, просто нажимая клавишу <Enter>.

Вы хотите настроить интегрированный DNS (BIND)? [no]: yes

Введите полное доменное имя компьютера, на котором вы настраиваете 
программное обеспечение сервера, в формате <hostname>.<domainname>. 
Пример: dc1.test.dom.

Имя хоста сервера [dc1.test.dom]: <Enter>

Предупреждение: пропуск разрешения DNS-узла dc1.test.dom
Имя домена определяется на основе имени узла.

Пожалуйста, подтвердите имя домена [test.dom]: <Enter>

Протокол kerberos требует, чтобы имя области было определено.
Обычно это доменное имя, преобразованное в верхний регистр.

Пожалуйста, укажите имя области [TEST.DOM]: <Enter>

Определённые операции сервера каталогов требуют прав администратора.
Этот пользователь называется менеджером каталога и имеет полный доступ
к каталогу для управления системой. Будет добавлен
экземпляр сервера каталогов, предназначенный для ipa.
Пароль должен содержать как минимум 8 символов.

Пароль менеджера каталога: ******** 
Пароль (подтверждение): ********

Сервер IPA требует прав администратора с именем 'admin'.
Этот пользователь — обычная системная учётная запись, используемая 
для управления сервером IPA.

Пароль администратора IPA: ********
Пароль (подтверждение): ********

Введите пароли.

Checking DNS domain test.dom., please wait ...

Do you want to configure DNS forwarders? [yes]: <Enter>

Following DNS servers are configured in /etc/resolv.conf: 8.8.4.4
Do you want to configure these servers as DNS forwarders? [yes]: enter 
All DNS servers from /etc/resolv.conf were added. You can enter additional addresses now:
Enter an IP address for a DNS forwarder, or press Enter to skip: 8.8.8.8

Do you want to configure these servers as DNS forwarders? [yes]: <Enter>

Здесь нужно ввести адрес DNS-сервера Google либо DNS-сервера провайдера.

DNS forwarder 8.8.8.8 added. You may add another.

Enter an IP address for a DNS forwarder, or press Enter to skip: <Enter>

Checking DNS forwarders, please wait ...

Do you want to search for missing reverse zones? [yes]: <Enter>

Do you want to create reverse zone for IP 192.168.76.47 [yes]: <Enter>

Please specify the reverse zone name [0.168.192.in-addr.arpa.]: 
Using reverse zone(s) 0.168.192.in-addr.arpa.

The IPA Master Server will be configured with:
Hostname: dc1.test.dom
IP address(es): 192.168.76.47
Domain name: test.dom
Realm name: TEST.DOM

BIND DNS server will be configured to serve IPA domain with:
Forwarders: 8.8.4.4, 8.8.8.8
Forward policy: only
Reverse zone(s): 0.168.192.in-addr.arpa.

Продолжить настройку системы с этими значениями? [no]: yes

Проверьте корректность введённых параметров и введите yes.

Следующие операции могут занять несколько минут.
Пожалуйста, подождите, пока не вернётся приглашение.

Установка должна завершиться сообщением следующего вида:

  Setup complete
  Next steps:
  1. You must make sure these network ports are open:
  TCP Ports:
  * 80, 443: HTTP/HTTPS
  * 389, 636: LDAP/LDAPS
  * 88, 464: kerberos
  * 53: bind
  UDP Ports:
  * 88, 464: kerberos
  * 53: bind
  * 123: ntp
  2. You can now obtain a kerberos ticket using the command: 'kinit admin'
  This ticket will allow you to use the IPA tools (e.g., ipa user-add)
  and the web user interface.
  Be sure to back up the CA certificate stored in /root/cacert.p12
  This file is required to create replicas. The password for this
  file is the Directory Manager password
kinit admin

Выполните проверку:

klist

Вы должны получить сообщение следующего вида:

Ticket cache: KEYRING:persistent:0:0
Default principal: admin@TEST.DOM

Valid starting     Expires            Service principal
03/06/19 19:07:19  04/06/20 19:07:14  krbtgt/TEST.DOM@TEST.DOM

Обратите внимание, что билет Kerberos выдается для того пользователя, от которого была выполнена команда kinit. Полученный билет может быть использован только этим пользователем.

Консольные утилиты ipa* для управления сервером FreeIPA, запускаемые непосредственно на этом же сервере FreeIPA, используют полученный через kinit билет для авторизации во FreeIPaA для выполнения административных задач.

Для версии RELS 6.3:

firewall-cmd --permanent --zone=public --add-service={ntp,http,https,ldap,ldaps,kerberos,kpasswd,dns}
firewall-cmd --permanent --zone=public --add-port=53/tcp
firewall-cmd --permanent --zone=public --add-port=53/udp
firewall-cmd --reload

Для версии RELS 7.3:

firewall-cmd --permanent --zone=public --add-service={ntp,http,https,freeipa-ldap,freeipa-ldaps,kerberos,kpasswd,dns}
firewall-cmd --permanent --zone=public --add-port=53/tcp
firewall-cmd --permanent --zone=public --add-port=53/udp
firewall-cmd --reload
reboot
ipactl status

Directory Service: RUNNING
krb5kdc Service: RUNNING
kadmin Service: RUNNING
named Service: RUNNING
ipa_memcached Service: RUNNING
httpd Service: RUNNING
pki-tomcatd Service: RUNNING
ipa-otpd Service: RUNNING
ipa: INFO: The ipactl command was successful

Работа с сервером IPA через веб-интерфейс

Чтобы можно было зайти на веб-интерфейс сервера IPA, сначала нужно настроить клиент в соответствии с инструкцией.

Теперь можно открыть браузер и соединиться с узлом, на котором развёрнут сервер IPA, по HTTP или HTTPS. Учитывайте, что по умолчанию на сервер IPA устанавливается самоподписанный сертификат.

Введите: Username — admin, Password — пароль для администратора IPA, заданный при настройке.

FreeIPA.png

Теперь можно работать со службой каталогов.

Ipa2.png Ipa3.png

Повторная инициализация сервера

ipa-server-install --uninstall

После инициализации сервера IPA к нему можно подключать рабочие станции.