Freeipa настройка dns сервера
IPA (DNS) Locations feature can be used to distribute load from clients. This is done by SRV records with the proper priority set and CNAME aliases. Servers in IPA location redirect DNS queries using CNAME to location records.
IPA servers outside location work as backup servers. In case that all IPA servers in the particular location failed to respond, servers from outside of the location will be used.
Проверка успешности настройки
Проверить работу динамического обновления можно запустив отдельный компьютер, настроенный на получение сетевого адреса по DHCP.
После включения такого компьютера и получения им адреса этот компьютер станет доступен по имени.
Например, для компьютера с именем client можно попробовать для проверки следующие команды:
Для ввода клиентского компьютера в домен FreeIPA должны быть выполнены следующие условия:
-
Клиентский компьютер и сервер FreeIPA должны видеть друг друга по сети (для проверки использовать команду "ping ");
На клиентском компьютере должно быть настроено разрешение имени сервера FreeIPA, в качестве сервера DNS должен быть указан сервер FreeIPA ( для проверки использовать "ping ipaserver.ipadomain.ru" и убедиться, что этот сервер отвечает ) .
Файл /etc/hosts не должен использоваться в качестве базы данных доменных имен других хостов. Так как запрос к этому файлу имеет приоритет перед обращением к DNS.
FQDN состоит из имени компьютера (короткое имя, shortname) и имени домена. В примере выше client - это имя компьютера, ipadomain.ru - имя домена. Имя компьютера должно являться допустимым именем DNS, то есть в имени разрешается использовать только строчные буквы, числа, и символ тире (минус, "-"). Заглавные буквы недопустимы.
Чтобы не было путаницы, в нем рекомендуется только запись "самого себя", + FQDN + имя компьютера (короткое имя). Данная запись добавляется автоматически во время установки FreeIPA сервера.
Для добавления имени хоста можно выполнить команду:
Для клиентов, использующих динамические IP-адреса, получаемые от DHCP-сервера, для обновления таблиц адресов после добавления имени хоста рекомендуется выполнить команды:
Настроить разрешение имён можно с помощью графического менеджера сетевых подключений NetworkManager.
Пример сценария настройки DNS на клиентском компьютере из командной строки (сценарий применим для русскоязычных компьютеров с включенной сетевой службой NetworkManager):
При наличии подключенного репозитория пакетов все необходимые для установки пакеты можно установить командой apt или из графического менеджера пакетов synaptic (см. Графический менеджер пакетов synaptic).
При установке инструментов Astra Linux все необходимые пакеты устанавливаются автоматически.
Example with non-FreeIPA DNS servers
The first example assumed that you have at least one FreeIPA DNS server in each location. With same effort the same feature can be implemented also using external DNS servers. Following example is using InfoBlox's support for DNS view to simulate multiple DNS servers in each location:
- On Infoblox, create DNS view for each location:
- Data Management -> DNS -> Zones -> click to Plus sign to add DNS view - Add DNS view step 1 -> fill-in name, use the same name as for IPA location, e.g. "czechrep" - Add DNS view step 2 -> specify Match Clients rule so that all clients in "czechrep" location domain belong to this DNS view - Add DNS view step 3 -> Save
- In each DNS view, create two zones with names:
- "_udp."
- "_tcp."
These zones (specific for each DNS view) will be filled-in with records produced by the IPA server.
It will produce a lot of DNS records. We are interested in records listed in section IPA location records:
Each IPA location has own set of records. Records specific to given location contain ._locations in their name.
- For each DNS location/DNS view, select relevant records from ipa dns-update-system-records --dry-run's output and transform them to form suitable for general purpose DNS server. E.g.:
This way, you will obtain list of records for each location. Each list contains records with the same names (the left side) but different data (the right side).
- As the last step, take this list of records and for each location, copy it into particular Infoblox's DNS view.
Now you are done. Clients using DNS discovery to find IPA servers will prefer the local servers automatically (as soon as DNS TTL expires). Of course, the procedure needs to be repeated each time you reconfigure IPA location or do a modification to a IPA server topology.
В больших сетях очевидна необходимость использования сервера DHCP для автоматического назначения IP-адресов компьютерам, при этом возникает необходимость поддержания соответствия имён компьютеров и назначенных им адресов. При этом:
- устанавливаемая на клиентских машинах служба SSSD умеет сообщать контроллеру домена о своём IP-адресе;
- входящий в диструбутив Astra Linux сервер DHCP isc-dhcp-server имеет возможность автоматически сообщать доменному серверу DNS (DNS-сервер BIND9) о назначаемых клиентам адресах.
Таким образом обновление адресов можно выполнять либо по инициативе клиентских машин, либо централизованно с помощью DHCP-сервера.
Для включения обновления в файл конфигурации службы SSSD /etc/sssd/sssd.conf в секцию с параметрами домена FreeIPA следует добавить опции:
Авторизация по ключам Kerberos для такого обновления настраивается автоматически при установке сервера и клиентов FreeIPA.
При установке клиента можно использовать ключ --enable-dns-updates, автоматически задающий нужные настройки:
однако при этом будет добавлена только опция dyndns_update = true (однократное обновление A/AAAA записей при запуске системы при условии обнаружения изменений). Обновление PTR записей выполняться не будет.
Быстрый запуск сервиса FreeIPA с помощью инструмента командной строки astra-freeipa-server
При правильно выполненных предварительных настройках запуск сервиса FreeIPA с помощью инструмента командной строки astra-freeipa-server может быть осуществлён простой командой:
При запуске инструмента также можно указать имя домена, имя компьютера и прочие параметры (подробнее см. подсказку astra-freeipa-server --help), например:
После ввода команды инструмент определит адрес компьютера, выведет на экран все исходные данные, и запросит подтверждение дальнейших действий:
compname= astraipa
domain= astradomain.ad
будет использован ip address = 192.168.32.97 или укажите ip адрес ключем -ip
продолжать ? (y\n)Для подтверждения введите «y» и нажмите Enter.
После подтверждения инструмент попросит ввести и подтвердить пароль для администратора домена.
Введённый пароль понадобится в дальнейшем для входа в web-интерфейс FreeIPA, и для работы с инструментами командной строки FreeIPA.
После ввода пароля автоматически будет выполнен процесс инициализации входящих в FreeIPA подсистем.
Ход выполнения будет отображаться на экране.Теперь можно войти в web-интерфейс FreeIPA по указанному в последней строчке адресу, и продолжить настройку через него.
Первый вход в web-интерфейс и процедуры работы с ним описаны ниже.Установка с использованием центра сертификации DogTag
Применимо для Astra Linux Common Edition и для Astra Linux Special Edition очередное обновление x.7 с подключенным расширенным репозиторием в состоянии совместимости.
Для автоматической установки FreeIPA с одновременной автоматической установкой сервиса центра сертификации DogTag используйте опцию --dogtag, например:
После завершения процедур запуска для входа в web-интерфейс можно просто перейти по ссылке, предоставленной использованным инструментом.
нажать кнопку «Дополнительно»
в открывшемся окне нажать кнопку «Добавить исключение»
в открывшейся экранной форме нажать кнопку «Подтвердить исключение безопасности»
и на экране браузера откроется WEB/-интерфейс FreeIPA.
Для входа в web-интерфейс используйте имя admin, и пароль, ранее введённый при запуске системы. Также, теперь с помощью программы astra-freeipa-client, к созданному сервису можно подключать другие машины.
В случае, если при входе в web-интерфейс открывается пустая страница — внимательно проверьте, что для подключения к web-интерфейсу используются:
Для проверки состояния запущенных служб FreeIPA можно использовать инструмент командной строки ipactl. Состав служб зависит от конфигурации установки и от используемого обновления ОС. Например, для Astra Linux Common Edition типичный набор служб выглядит так:
В зависимости от используемого обновления операционной системы или выбранной при инициализации конфигурации сервера состав служб может изменяться. Например:
- в Astra Linux Special Edition очередное обновление x.7 вместо службы настройки времени ntpd используется служба chrony;
- если не используется служба DogTag (обычно в Astra Linux Special Edition), то в выводе команды нет информации о службе pki-tomcatd;
- если используются службы samba и winbind, то соответствующие строки добавляются в вывод (см. Samba + FreeIPA аутентификация пользователей Samba в Kerberos).
Для проверки ролей сервера можно использовать web-интерфейс FreeIPA (путь Закладка "FreeIPA" => Пункт "Топология" => Пункт "Роли сервера"), например:
В инструкции разберем пример установки сервера FreeIPA (аналог Microsoft Active Directory, Samba DC) на Linux CentOS (также протестировано на Rocky Linux). В качестве клиентов будем использовать дистрибутивы на базе RPM (Red Hat, CentOS, . ) и deb (Debian, Ubuntu, . ).
Advanced configuration
Setting service weight
Using weight attribute in SRV records, you can customize load between servers in a location (for servers without location too). Servers with better performance can have assigned higher weight for IPA services and those servers will receive more queries than others. To set weight for IPA system SRV records, please use server-mod. For further information about weight please see RFC 2783 page 3.
Lowering TTL
In case you use caching DNS servers, you may need to lower default TTL (86400) of the IPA domain. Any change in locations or in system records will be reflected on caching servers after the TTL of original records expires. Lowering TTL in advance is good for planned changes in topology.
To change default TTL use dnszone-mod command.
Подключение к домену
а) на компьютеры с Red Hat / CentOS:
yum install freeipa-client
б) на компьютеры с Debian / Ubuntu:
apt-get install freeipa-client
Для Debian 9 приходится использовать дополнительный репозиторий:
Обновляем список и устанавливаем:
apt-get install freeipa-client
Выполним конфигурирование клиента:
Система на основе данных из DNS попробует определить настройки и либо попросит ввести наш домен (если не сможет найти данные автоматически):
. либо отобразить настройки в консоли, например:
Discovery was successful!
Client hostname: freeipa-client.dmosk.local
Realm: DMOSK.LOCAL
DNS Domain: DMOSK.LOCAL
IPA Server: ipa-server.dmosk.local
BaseDN: dc=dmosk,dc=localЕсли эти настройки верны, отвечаем положительно на запрос Continue to configure the system with these values?
Continue to configure the system with these values? [no]: yes
Система спросит, от какого пользователя производить настройку — вводим admin:
User authorized to enroll computers: admin
Password for admin@DMOSK.LOCAL:
Начнется процесс конфигурации — после его завершения:
.
Configured /etc/openldap/ldap.conf
NTP enabled
Configured /etc/ssh/ssh_config
Configured /etc/ssh/sshd_config
Configuring DMOSK.LOCAL as NIS domain.
Client configuration complete.
The ipa-client-install command was successful. сразу проверим, что клиент может получать билет от сервера:
. и вводим пароль от пользователя admin.
Проверяем, что билет получен:
Ответ должен быть, примерно, следующим:
Ticket cache: KEYRING:persistent:0:0
Default principal: admin@DMOSK.LOCALValid starting Expires Service principal
25.07.2019 23:39:56 26.07.2019 23:39:52 krbtgt/DMOSK.LOCAL@DMOSK.LOCALНастройки сервера
Для нормальной работы служб FreeIPA следует:
-
Выделить для использования в качестве сервера FreeIPA отдельный (возможно, виртуальный) компьютер, на котором должно быть установлено не менее 2ГБ ОЗУ и не менее трех процессоров;
Назначить этому компьютеру фиксированный IP-адрес , который впоследствии не должен изменяться;
В настройках сетевого интерфейса указать IP-адрес компьютера в качестве первичного DNS (см. Настройка сетевых подключений в ОС Astra Linux);
В качестве второго DNS можно ничего не указывать или указать внешний DNS (в случае установки пакетов из внешнего репозитория);
После внесения изменений необходимо убедиться, что выполненные настройки DNS присутствуют в файле/etc/resolv.conf:
В файле /etc/hostname должно содержаться полное доменное имя сервера (FQDN), например astraipa.astradomain.ad. Т ак как запрос к файлу /etc/hosts имеет приоритет перед обращением к DNS, файл /etc/hosts не должен использоваться в качестве базы данных доменных имен других хостов. Чтобы не было путаницы, рекомендуется оставить в файле /etc/hosts только запись "самого себя", + имя в формате FQDN + короткое имя. Данная запись добавляется автоматически во время установки FreeIPA сервера.
Задать имя сервера можно выполнив команду:
Настроить сеть, разрешив загрузку модулей протокола IPv6, при необходимости запретив их работу (см. IPv6: включение и выключение, выключение с сохранением стека IPv6 )
- Остальные настройки для быстрого запуска, инструменты Astra Linux выполняют самостоятельно.
Комплекты пакетов FreeIPA для сервера и клиентов входят в репозитории Astra Linux. Установить необходимые для установки сервера пакеты можно из Графический менеджер пакетов synaptic , или из командной строки:
или инструмент командной строки:
В ходе установки будет выдано несколько предупреждений, просто нажать "ОК". После установки графический инструмент fly-admin-freeipa-server будет доступен через меню:
Установить необходимые для установки клиента пакеты можно с помощью графического менеджера пакетов или из командной строки. Команды для установки из командной строки:
или инструмент командной строки
На предупреждения, возникающие при установке, также нажать "ОК"
После установки графический инструмент fly-admin-freeipa-client будет доступен через меню:
Для дальнейшего описания настройки сервиса FreeIPA примем следующие допущения:
создается собственный домен второго уровня с названием: astradomain.ad ;
имя будущего контроллера сервера:
имя в краткой форме: astraipa
имя в полной форме (FQDN): astraipa.astradomain.ad
При этом, в тестовом примере будет использован несуществующий домен astradomain.ad.
Работа с сертификатами
1. Выпустить сертификат для компьютера (выполняется на компьютере, который присоединен к freeipa):
ipa-getcert request -k /etc/pki/tls/certs/freeipa.key -f /etc/pki/tls/certs/freeipa.crt -r
* в данном примере будет сформирован запрос на получение сертификата и сохранен в каталог /etc/pki/tls/certs.
Если в нащей системе работает SELinux, попытка создать сертификат в другом каталоге закончится ошибкой The parent of location "/foo/bar/" could not be accessed due to insufficient permissions. Для решения проблемы, мы должны задать контекст безопасности cert_t:
semanage fcontext -a -t cert_t "/foo/bar(/.*)?"
* где /foo/bar — полный путь до каталога, в котором мы хотим разместить сертификаты.
И применяем политику:
restorecon -R -v /foo/bar
После этого наша команда ipa-getcert request должна отработать корректно.
Работа с группами
1. Создание группы безопасности:
ipa group-add --desc='Group for managers departmen' managers
* создаем группу безопасности managers.
2. Добавить пользователя в группу:
ipa group-add-member managers --users=user1,user2,user3
* добавим в группу managers пользователей user1, user2 и user3.
3. Переименовать группу:
ipa group-mod --rename=
ipa group-mod --rename=admins users
* в данном примере мы переименуем группу users в группу admins.
Настройка сервера DHCP
Установить DHCP-сервер в соответствии с инструкциями.
В файле настроек /etc/default/isc-dhcp-server указать интерфейс, через который должна работать служба:
ddns-updates on;
ddns-update-style standard;
include "/etc/bind/rndc.key";
ddns-domainname "";
update-static-leases on;option domain-name "samdom.example.com";
option domain-search "samdom.example.com";default-lease-time 129600;
max-lease-time 1296000;
authoritative;server-name "ipa.samdom.example.com";
server-identifier 10.0.2.102;В отладочных целях можно задать заведомо маленький диапазон адресов:
и для гарантированного изменения адреса клиента заменять его на непересекающийся диапазон:
На клиентах обновить и проверить адрес можно командами:
После внесения изменений в конфигурационные файлы необходимо перезапускать сервис DHCP:
Если после неудачного запуска причина неудачного запуска устранена, а сервер всё равно не может стартовать, сообщая, что он уже запущен, следует удалить вручную файл /var/run/dhcpd.pid.
Примеры команд
Рассмотрим отдельно примеры работы с FreeIPA посредством командной строки.
Adding servers to locations
Use server-mod command to add server into location. Server can be member of only one location.
Быстрый запуск сервиса FreeIPA с помощью графического инструмента fly-admin-freeipa-server
Графический инструмент fly-admin-freeipa-server запускается из командной строки командой:
«Домен» - имя домена, в используемом примере это будет astradomain.ad
«Имя компьютера» - имя компьютера определяется автоматически, в используемом примере заменим его на astraipa
«Пароль» - пароль для администратора домена. Введённый пароль понадобится в дальнейшем для входа в web-интерфейс FreeIPA, и для работы с инструментами командной строки FreeIPA.
После ввода данных запуск сервиса осуществляется нажатием кнопки «Создать»
В процессе запуска в соответствующем окне отображаются выполняющиеся операции.
После успешного выполнения запуск на нижней рамке окна инструмента появится web-ссылка для перехода в web-интерфейс FreeIPA. Теперь можно войти в web-интерфейс FreeIPA по указанному в последней строчке адресу, и продолжить настройку через него. Первый вход в web-интерфейс и процедуры работы с ним описаны ниже.
Установка с использованием центра сертификации DogTag
Для Astra Linux Common Edition и для Astra Linux Special Edition x.7
Для автоматической установки FreeIPA с одновременной установкой сервиса центра сертификации DogTag в интерфейсе графического инструмента fly-admin-freeipa-server нажмите кнопку "Показать расширенные опции" и отметьте пункт "Настроить центр сертификации":
Для Astra Linux Special Edition выпущенных до очередного обновления x.7
Проверка
На компьютере с клиентом вводим команду для проверки:
. и вводим пароль от созданной учетной записи:
Password for dmosk@DMOSK.LOCAL:
При вервом входе система попросит поменять пароль на новый:
Password expired. You must change it now.
Enter new password:
Enter it again:SELinux
Отключаем SELinux командами:
sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config
Время
Установим часовой пояс:
timedatectl set-timezone Europe/Moscow
* в данном примере используется московское время.
Затем устанавливаем и запускаем утилиту для синхронизации времени chrony.
yum install chrony
systemctl enable chronyd --now
Создание ключей
Создать ключ для сервера DHCP командой rndc-confgen. После запуска команды ключ будет автоматически сохранён в файле /etc/bind/rndc.key:
Подробная информация
Получить информацию мы можем о любой сущьности в LDAP с помощью командной строки.
ipa user-find --all
ipa user-find user_name --all
* первая команда вернет информацию по всем пользователям, вторая — по конкретному (в данном примере user_name).
ipa group-find --all
ipa group-find admins --all
* первая команда вернет информацию по всем группам, вторая — только для admins.
Installation (server)
Please note the following steps are just examples, in real world, do not forget to add additional replication agreements as backup to prevents disconnect topology.
Information good to know
- Only IPA system services are supported.
- IPA DNS subsystem must be installed.
- IPA DNS must be authoritative for primary IPA DNS domain.
- IPA locations use SRV records, without functional DNS server inside a location, this location effectively stops working.
- IPA locations use priority field in SRV records to prefer servers in the location. Servers with priority 0 belongs to the location, servers with priority 50 are backup servers from outside of the location.
- Membership of client in a location depends on DNS server which is configured as resolver for client. (Directly or indirectly through recursors etc.)
- Each location must contain at leas one IPA DNS server.
- Multiple IPA DNS servers per location are recommended (backup DNS servers inside one location).
- Be careful with caching DNS servers. Caching DNS servers may cause delay in propagation of changes in locations. This can be solved by lowering TTL for location records in advance (IPA default is one day).
- Clients must be able to work with SRV and CNAME records to work with IPA locations properly.
Графический инструмент
После установки графический инструмент fly-admin-freeipa-client доступен для запуска из командной строки или через систему меню:
"Пуск" - "Панель управления" - Сеть" - "Настройка FreeIPA клиент Fly"
Для ввода компьютера в домен нужно:
- Выполнить предварительную настройку DNS, как описано выше;
- Запустить графический инструмент fly-admin-freeipa-client и в открывшемся окне ввести
- Имя домена;
- Имя администратора домена;
- Пароль администратора домена;
После ввода данных нажать кнопку "Подключиться"
Командная строка
Авторизуемся на FreeIPA:
Создаем нового пользователя командой:
ipa user-add dmosk --first=Дмитрий --last=Моск --password
* где dmosk — логин; first — имя пользователя; last — фамилия; password — ключ для запроса пароля.
. после ввода команды система запросит пароль для создаваемого пользователя — вводим его дважды.
Мы должны увидеть сводку по параметрам для созданного пользователя:
Добавлен пользователь «dmosk»
-----------------------------
Логин пользователя: dmosk
Имя: Дмитрий
Фамилия: Моск
Полное имя: Дмитрий Моск
Отображаемое имя: Дмитрий Моск
Инициалы: ДМ
Домашний каталог: /home/dmosk
GECOS: Дмитрий Моск
Оболочка входа: /bin/sh
Principal name: dmosk@DMOSK.LOCAL
Principal alias: dmosk@DMOSK.LOCAL
User password expiration: 20190725205853Z
Электронный адрес: dmosk@dmosk.local
UID: 1798800001
ID группы: 1798800001
Пароль: True
Member of groups: ipausers
Kerberos ключей доступно: TrueПримет более полной команды для создания пользователя:
* в данном примере мы использовали дополнительные поля:
* более полный список атрибутов можно найти на странице с мануалом Fedora Project.
Графический инструмент
Графический инструмент для ввода в домен представлен в пакете fly-admin-freeipa-client. Для его установки можно использовать команду:
Information good to know
- Only IPA system services are supported.
- IPA DNS subsystem must be installed.
- IPA DNS must be authoritative for primary IPA DNS domain.
- IPA locations use SRV records, without functional DNS server inside a location, this location effectively stops working.
- IPA locations use priority field in SRV records to prefer servers in the location. Servers with priority 0 belongs to the location, servers with priority 50 are backup servers from outside of the location.
- Membership of client in a location depends on DNS server which is configured as resolver for client. (Directly or indirectly through recursors etc.)
- Each location must contain at leas one IPA DNS server.
- Multiple IPA DNS servers per location are recommended (backup DNS servers inside one location).
- Be careful with caching DNS servers. Caching DNS servers may cause delay in propagation of changes in locations. This can be solved by lowering TTL for location records in advance (IPA default is one day).
- Clients must be able to work with SRV and CNAME records to work with IPA locations properly.
Installation (client)
Client must have set the proper resolver which belongs to the location where clients are supposed to be located in. Preferred is to configure resolvers using DHCP, as we expect that the network topology respects geographical location, and the DHCP provides the closest DNS server IP addresses, thus this should be done without any extra configuration.
Please note that all nameservers configured on client should be in the same location. A configuration with nameservers from various location will work, but it may result into inefficient resolving.
If resolvers are properly set, you can install clients by using ipa-client-install.
Время
Для корректной работы и подключения необходимо проверить настройки времени.
В первую очередь, укажем часовой пояс:
timedatectl set-timezone Europe/Moscow
* командой timedatectl list-timezones можно посмотреть список всех часовых поясов.
Устанавливаем утилиту для синхронизации времени, разрешаем запуск демона и стартуем его.
а) если на системе Ubuntu / Debian:
apt-get install chrony
systemctl enable chrony
б) если на системе Rocky Linux / CentOS / Red Hat:
yum install chrony
systemctl enable chronyd --now
Настройка сервера DNS FreeIPA
Запустить WEB-интерфейс управления сервера FreeIPA и в свойствах необходимой ПРЯМОЙ зоны в разделе "Политика обновления BIND" добавить запись:
grant rndc-key wildcard * ANY;
В свойствах соответствующей ОБРАТНОЙ зоны в том же разделе "Политика обновления BIND" добавить запись:
grant rndc-key wildcard * PTR;
Сохранить изменения и перезапустить службы FreeIPA:
Настройка и подключение клиента
Клиентские компьютеры должны быть настроены на использование DNS-сервера, который мы сконфигурировали на сервере FreeIPA во время его установки. В сетевых настройках указываем использовать наш сервер ipa для разрешения имен:
- Пример настройки сети в CentOS / Rocky Linux
- Настройка сети с помощью netplan (Debian, Ubuntu).
- В устаревающих системах на основе deb настройка выполняется в файле /etc/network/interfaces (опция dns-nameservers) или /etc/resolv.conf (опция nameserver).
Подготовка сервера
Для подготовки сервера безопасности с доступом к данным по LDAP необходим сервер с правильно настроенным временем. Также необходимо правильно настроить межсетевой экран и систему безопасности SELinux.
Установка и запуск FreeIPA
Установка выполняется из репозитория. Команды немного отличаются в зависимости от версии CentOS.
а) для Rocky Linux / CentOS 8:
dnf install @idm:DL1
dnf install ipa-server
* первая команда установит модуль DL1 Stream-репозитория. Вторая — сам freeipa.
yum install ipa-server
Если мы хотим использовать наш сервер еще и как DNS, то устанавливаем:
yum install ipa-server-dns
После выполняем конфигурирование сервиса:
Отвечаем на первый вопрос, хотим ли мы использовать и сконфигурировать DNS-сервер BIND:
Do you want to configure integrated DNS (BIND)? [no]: yes
* в случае, если мы не хотим, чтобы сервер DNS был установлен вместе с сервером IPA, просто нажимаем Enter.
На остальные запросы можно ответить по умолчанию, нажав Enter и оставив подставленные значения. Если возникнут ошибки, решение посмотрите ниже в данной инструкции.
Когда система запросит пароль для Directory Manager, необходимо придумать и ввести его дважды:
Directory Manager password:
Password (confirm):. будет создана учетная запись для подключения к LDAP.
Затем также нужно придумать и задать пароль для IPA admin:
IPA admin password:
Password (confirm):. будет создана учетная запись IPA Administrator для первого пользователя FreeIPA с правами администратора.
Для настройки DNS на первый запрос, хотим ли мы настроить перенаправления, отвечаем да:
Do you want to configure DNS forwarders? [yes]:
Система предложит сначала использовать DNS-серверы из настроек сети (если они прописаны) — если нас это устроит, оставляем значение по умолчанию:
Do you want to configure these servers as DNS forwarders? [yes]:
. также можно добавить дополнительные серверы:
Enter an IP address for a DNS forwarder, or press Enter to skip: 8.8.8.8
Также оставляем значение по умолчанию для попытки найти обратные зоны:
Do you want to search for missing reverse zones? [yes]
После система выведет информацию о конфигурации и попросит ее подтвердить — вводим yes:
Continue to configure the system with these values? [no]: yes
Начнется процесс конфигурации. После его завершения мы увидим подсказку со следующими шагами:
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.. и так как порты мы уже настраивали, переходим ко второму шагу — проверим, что система может выдать билет:
. после вводим пароль администратора, который указывали при конфигурировании FreeIPA.
Проверяем, что билет получен:
Ответ должен быть, примерно, следующим:
Ticket cache: KEYRING:persistent:0:0
Default principal: admin@DMOSK.LOCALValid starting Expires Service principal
23.07.2019 08:53:02 24.07.2019 08:52:55 krbtgt/DMOSK.LOCAL@DMOSK.LOCAL* где DMOSK.LOCAL — домен в моей системе. В данном примере мы получили билет для пользователя admin.
Удалим полученный билет:
Брандмауэр
Необходимо открыть несколько портов, которые используются службами FreeIPA:
firewall-cmd --permanent --add-port=53/ --add-port=/tcp --add-port=/ --add-port=123/udp --add-port=/tcp
Verification
We can use dig to verify returned DNS records
Server/client without locations
Server/client inside czechrep location
Server/client inside france location
Get list of all required records
You can use command ipa dns-update-system-records --dry-run to print list of all required system records, and location records. Eventually if some records are missing in IPA domain, you can use this command without --dry-run option to fix missing system records.
Установка клиентов с включением автоматического обновления
DHCP-сервер передавая записи об адресах клиентов DNS-серверу подписывает переданные записи своим ключём. Это исключает возможность изменения "чужих" записей. Поэтому, чтобы динамическое обновление работало, нужно создать запись с помощью DHCP-сервера. Для этого нужно обновить адрес от имени полного доменного имени компьютера (FQDN). Это можно сделать следующими командами, выполняемыми до выполнения команды ввода клиента в домен:
Эти команды должны быть выполнены до ввода компьютера в домен.
Adding locations
Use location-add command to create a new location.
Командная строка
Выполнить предварительную настройку DNS, как описано выше, после чего ввод компьютера в домен FreeIPA выполняется командой:
в качестве имени домена будет автоматически использовано доменное имя сервера DNS.
Или указать имя домена с помощью опции " -d " :
При этом можно указать дополнительные опции:
- -p для ввода пароля (небезопасно);
- -y для автоматического ответа "да" на все вопросы;
Для вывода клиентской машины из домена рекомендуется использовать на выводимой машине команду:
Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
(для использования службы DogTag требуется подключение расширенного репозитория, см. Репозитории Astra Linux Special Edition x.7: структура, особенности подключения и использования)Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
(для использования службы DogTag требуется подключение расширенного репозитория, см. Репозитории Astra Linux Special Edition x.7: структура, особенности подключения и использования)FreeIPA (Free Identity, Policy and Audit) — открытый проект централизованной системы организации единого пространства пользователей (ЕПП), т.е. системы управления идентификацией и аутентификацией пользователей, политиками доступа и аудита. В состав FreeIPA входят:
- Служба каталогов 389 Directory Server;
- Служба аутентификации и единой точки входа MIT’s Kerberos;
- Службы BIND и DHCP для управления службой DNS в сети.
- Служба управления сертификатами DogTag (опционально);
- Интерфейс управления на основе Apache и Python;
FreeIPA также использует Samba для интеграции с Microsoft Active Directory и поддержки компьютеров на базе Microsoft Windows и Apple Macintosh.
ВАЖНО!
Сервис FreeIPA крайне чувствителен к правильным настройкам параметров операционной системы .
Даже при запуске сервиса в тестовом режиме следует придерживаться приведённых ниже правил.- Сервис FreeIPA необходимо устанавливать на чистой ОС, на которой ранее не были установлены другие сервисы.
- Перед установкой убедиться, что установлены последние обновления безопасности, и обеспечить их установку.
- Работа FreeIPA в Astra Linux Special Edition осуществляется только при отключенном режиме AstraMode web-сервера Apache2.
Доменное имя
Доменное имя не должно быть именем первого уровня. Это значит, что нежелательно использовать имена доменов, состоящие из одного слова, например domain, testdomain, mydomian. Следует использовать имена уровней два и более, то есть имена вида:
В случаях, когда при инициализации служб FreeIPA используется имя домена, не имеющее IP-адреса (например, при запуске в тестовых целях), инициализацию следует производить в режиме «для изолированной сети» (опция -o инструмента astra-freeipa-server или пункт «Изолированная сеть (без шлюза/DNS)» в меню «Расширенные опции» графического инструмента fly-admin-freeipa-server). Далее в примерах подразумевается инициализация именно в режиме «для изолированной сети». Проверить, имеет ли выбранный домен IP-адрес, можно из терминала командой nslookup или dig (входит в пакет dnsutils), например:
Командная строка
Для установки инструмента командной строки можно использовать команду:
Topology
Имя сервера
Для корректной работы сервера, необходимо, задать ему полное доменное имя (FQDN). Выполняем команду:
hostnamectl set-hostname ipa-server.dmosk.local
* где ipa-server.dmosk.local — имя сервера, которое будет использоваться.
Example
Веб-интерфейс
Откроется страница управления пользователями:
На панели справа (над списком пользователей) кликаем по Добавить:
В открывшемся окне заполняем поля для создания пользователя и нажимаем по Добавить:
Работа с учетными записями
Создадим пользователя. Для этого рассмотрим пример использования командной строки и веб-интерфейса.
Редактирование учетных записей
Редактирование выполняется командой:
Например, поменять пароль можно командой:
ipa user-mod username --password
* в данном примере будет запрошен новый пароль для учетной записи username.
Для удаления вводим:
ipa user-del user_name
Читайте также: