Настройка домена на FreeIPA
FreeIPA - набор установленных компонентов для централизованного управления аутентификацией пользователей, группами пользователей, хостами в составе домена.
Содержание
Условные обозначения
domain-alter.loc - имя домена dc.domain-alter.loc - имя контроллера домена workstation1.domain-alter.loc - имя ПК для подключения к домену 192.168.42.10 - статический адрес контроллера домена dc.domain-alter.loc 192.168.42.1 шлюз сети dc сокращенное имя контроллера домена 77.88.8.8 DNS адрес сервера в сети интернет
Подготовка сервера
Устанавливаем необходимые пакеты:
yum install ipa-server ipa-server-dns chrony
Затем запускаем утилиту для синхронизации времени chrony
systemctl enable chronyd --now
Настраиваем firewall, открывая порты для служб NTP, DHCP, DNS, FreeIPA или отключаем firewall на время настройки.
firewall-cmd --permanent --add-port={53,80,88,135,138,139,389,443,445,464,636,1024-1300,3268}/tcp firewall-cmd --permanent --add-port={53,88,123,138,139,389,445,464}/udp firewall-cmd --reload
Устанавливаем имя машины
hostnamectl set-hostname dc.domain-alter.loc
Приводим файл /etc/hosts к виду:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.42.10 dc.domain-alter.loc dc
Приводим файл /etc/resolv.conf
search domain-alter.loc nameserver 192.168.42.10
Если у вас установлен сервер apache, остановите его.
apachectl -k stop
Конфигурирование сервера
[root@dc etc]# ipa-server-install
Do you want to configure integrated DNS (BIND)? [no]: yes
Отвечаем yes на вопрос о необходимости настройки интегрированного DNS сервера
Требуется имя хоста, оно у нас введено посредством hostnamectl, нажимаем Enter:
Server host name [dc.domain-alter.loc]:
Аналогично, требуется имя домена, нажимаем Enter
Please confirm the domain name [domain-alter.loc]: Please provide a realm name [DOMAIN-ALTER.LOC]:
Вводим и подтверждаем пароль привилегированного пользователя
Directory Manager password: Password (confirm):
Вводим подтверждаем пароль пользователя admin (основной администратор сервера IPA)
The IPA server requires an administrative user, named 'admin'. This user is a regular system account used for IPA server administration. IPA admin password: Password (confirm):
Подтверждаем необходимость настроить пересылку DNS запросов
Checking DNS domain domain-alter.loc., please wait ... Do you want to configure DNS forwarders? [yes]:
Отвечаем yes на вопрос о необходимости создания обратной зоны.
Following DNS servers are configured in /etc/resolv.conf: 192.168.42.1 Do you want to configure these servers as DNS forwarders? [yes]:
Первым сервером в список форварда заносится адрес, записанный в resolv.conf. При необходимости подтверждаем, добавление дополнительного внешнего DNS сервер
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: 77.88.8.8 Checking DNS forwarders, please wait ... DNS server 192.168.42.1: answer to query '. SOA' is missing DNSSEC signatures (no RRSIG data) Please fix forwarder configuration to enable DNSSEC support. WARNING: DNSSEC validation will be disabled Do you want to search for missing reverse zones? [yes]: Do you want to create reverse zone for IP 192.168.42.10 [yes]: Please specify the reverse zone name [42.168.192.in-addr.arpa.]: Using reverse zone(s) 42.168.192.in-addr.arpa.
Выводится список настроенных нами параметров. Подтверждаем и продолжаем установку
The IPA Master Server will be configured with: Hostname: dc.domain-alter.loc IP address(es): 192.168.42.10 Domain name: domain-alter.loc Realm name: DOMAIN-ALTER.LOC
BIND DNS server will be configured to serve IPA domain with: Forwarders: 192.168.42.1, 77.88.8.8 Forward policy: only Reverse zone(s): 42.168.192.in-addr.arpa.
Подтверждаем корректность введенных параметров:
Continue to configure the system with these values? [no]: yes
Дальнейший процесс установки и конфигурирования происходит автоматически и может занять некоторое время. В случае корректного конфигурирования у нас появится сообщение о завершении установки и необходимости открыть порты в файрволе (их мы уже открыли)
...
После окончания установки проверяем работоспособность аутентификации: Выполняем команду
#kinit admin@DOMAIN-ALTER.LOC
Вводим пароль на запрос:
Password for admin@DOMAIN-ALTER.LOC:
Выполняем команду
#klist
Пример ответа:
Ticket cache: KEYRING:persistent:0:0 Default principal: admin@DOMAIN-ALTER.LOC Valid starting Expires Service principal 19.06.2020 15:54:01 20.06.2020 15:53:56 krbtgt/DOMAIN-ALTER.LOC@DOMAIN-ALTER.LOC
После установки можно получить доступ к веб-консоли администрирования сервера IPA по адресу: https://dc.domain-alter.loc/ipa/ui/ Для доступа вводим логи и пароль администратора домена (admin)
Подключение клиента
Задаем имя ПК
hostnamectl set-hostname workstation1.domain-alter.loc
Устанавливаем утилиту для синхронизации времени, разрешаем запуск демона и стартуем его.
yum install chrony systemctl enable chronyd --now
Выбираем сервер точного времени, в нашем случае это контроллер домена, и указываем в конфигурационном файле:
mcedit /etc/chrony.conf server dc.alteros.internal iburst systemctl restart chronyd.service
Проверим что в файле /etc/hosts присутствует контроллер домена.
Устанавливаем необходимый пакет
yum install freeipa-client
В нашем случае указываем первым в DNS адрес контроллера домена (192.168.42.10)
Запускаем процедуру подключения к домену
ipa-client-install --mkhomedir
Система на основе данных из DNS попробует определить настройки и либо попросит ввести наш домен (если не сможет найти данные автоматически):
DNS discovery failed to determine your DNS domain Provide the domain name of your IPA server (ex: example.com): domain-alter.loc
Либо отобразить настройки в консоли, например
Discovery was successful! Client hostname: workstation1.domain-alter.loc Realm: DOMAIN-ALTER.LOC DNS Domain: DOMAIN-ALTER.LOC IPA Server: dc.domain-alter.loc BaseDN: dc=domain-alter,dc=loc
Если эти настройки верны, отвечаем положительно на запрос
Continue to configure the system with these values? [no]: yes
Система спросит, от какого пользователя производить настройку — вводим admin
User authorized to enroll computers: admin Password for admin@DOMAIN-ALTER.LOC:
Начнется процесс конфигурации — после его завершения проверим, что клиент может получать билет от сервера
kinit admin klist
Ответ должен быть, примерно, следующим:
Ticket cache: KEYRING:persistent:0:0 Default principal: admin@DOMAIN-ALTER.LOC Valid starting Expires Service principal 19.06.2020 15:54:01 20.06.2020 15:53:56 krbtgt/DOMAIN-ALTER.LOC@DOMAIN-ALTER.LOC
В системе разрешаем вход вручную (Параметры - Окно входа в систему - Пользователи - Разрешить вход в систему вручную) [1]
Вывод клиента из домена
Если необходимо вывести клиентский компьютер из домена, вводим команду:
ipa-client-install --uninstall
Система выполнит необходимые настройки самостоятельно:
nenrolling client from IPA server Removing Kerberos service principals from /etc/krb5.keytab Disabling client Kerberos and LDAP configurations Redundant SSSD configuration file /etc/sssd/sssd.conf was moved to /etc/sssd/sssd.conf.deleted Restoring client configuration files Unconfiguring the NIS domain. nscd daemon is not installed, skip configuration nslcd daemon is not installed, skip configuration Systemwide CA database updated. Client uninstall complete. The original nsswitch.conf configuration has been restored.
И отправляем компьютер в перезагрузку:
You may need to restart services or reboot the machine. Do you want to reboot the machine? [no]: yes
Настройка доверительных отношений с MS AD
На стороне MS AD Сервера:
1. Откройте Диспетчер DNS и перейдите на вкладку «Серверы условной пересылки».
2. В контекстном меню выберите «Создать сервер условной пересылки».
3. Впишите DNS домен сервера IPA и его ip адрес.
4. Выберите «Все DNS серверы в этом лесу» и нажмите ОК.
На стороне FreeIPA сервера:
1. В /etc/hosts впишите адрес сервера MS AD
2. C помощью web GUI в параметрах DNS-сервера IPA укажите ip-адрес перенаправителя, им должен быть сервер Windows.
3. Проверьте, резолвится ли сервер MS AD
nslookup ИМЯ_СЕРВЕРА_MS_AD
4. Выполните команду:
ipa-adtrust-install
на все вопросы отвечаем yes
5. Непосредственно добавляем доверительные отношения
ipa trust-add --type=ad TESTSUPPORT.LOCAL --range-type ipa-ad-trust --admin admin --password --two-way=TRUE
где TESTSUPPORT.LOCAL - это домен MS AD, admin это админ домена MS AD. Опция --two-way=TRUE подключает двустороннее доверие.
Так же данную операцию можно проделать через web GUI
6. Получаем и просматриваем список доверенных доменов леса со стороны AD
ipa trust-fetch-domains "win.domen" ipa trustdomain-find "win.domen"