Настройка домена на FreeIPA

Материал из Wiki AlterOS
(перенаправлено с «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 на время настройки.

Отключаем SELinux

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 присутствует контроллер домена.

Отключаем SELinux и Firewalld

Устанавливаем необходимый пакет

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.

Screenshot 155.png

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

Screenshot 156.png

6. Получаем и просматриваем список доверенных доменов леса со стороны AD

ipa trust-fetch-domains "win.domen"
ipa trustdomain-find "win.domen"