|
Если IP-адреса выдаются компьютерам (контроллерам домена или клиентам домена) с помощью службы DHCP (см. статьи isc-dhcp-server и kea), то необходимо обеспечить сохранность настроек DNS, создаваемых при инициализации контроллера домена (вводе клиента в домен). Это можно сделать либо настройками службы DHCP (для клиентов), либо запретом получения параметров DNS от службы DHCP (для серверов).
Предполагается, что контроллер домена настроен в соответствии со статьёй "Контроллер ЕПП FreeIPA в Astra Linux".
Перед установкой FreeIPA необходимо обратить внимание на требования
Перед установкой добавить строку в /etc/hosts, содержащее полное доменное и короткое имя узла. При установке FreeIPA внесёт изменения и изменять вручную не надо.
192.168.0.105 dc1.ipa.lc dc1 |
Задать полное доменное имя узла
sudo hostnamectl hostname dc1.ipa.lc |
Установить FreeIPA:
sudo apt install fly-admin-freeipa-server astra-freeipa-server |
FreeIPA работает только при выключенном режиме AstraMode в web-сервере Apache2. В /etc/apache2/apache2.conf измените значение параметра AstraMode on на off:
sudo sed -i 's/^.*AstraMode\s*.*/AstraMode off/' /etc/apache2/apache2.conf |
Перезапустить Apache2 для применения настроек:
sudo systemctl restart apache2 |
Проинициализировать настройки FreeIPA с помощью инструмента командной строки:
sudo astra-freeipa-server -o -n <имя_узла> -d <название_домена> sudo astra-freeipa-server -o -n dc1 -d ipa.lc |
Команда отобразит исходные данные и запросит подтвердить начать инициализацию контроллера домена.
compname= dc1 domain= ipa.lc Сертификаты будут сгенерированы с помощью OpenSSL Обнаружен только один сетевой интерфейс. Будет использован сетевой интерфейс "enp0s3", имеющий динамический IP-адрес 192.168.0.105. продолжать ? (y\n) |
Команда запросить задать пароль (не менее 8-символов?) для учётной записи администратора FreeIPA admin, которая будет использоваться для входа в web-интерфейс FreeIPA и при работе с инструментом командной строки.
введите пароль администратора домена (login: admin): |
После повторного ввода пароля начнётся процесс первоначальной настройки FreeIPA.
После успешной инициализации отобразится web-ссылка для открытия в web-интерфейса FreeIPA.
... ipa: INFO: The ipactl command was successful Завершено. Для продолжения работы, необходимо перезагрузить компьютер! Обнаружен настроенный домен ipa.lc WEB: https://dc1.ipa.lc |
DNS-сервер BIND входит в состав контроллера домена и управляется им же.
Необходимо создать TSIG-ключ, который будет использоваться для подписания динамических обновлений записей зон DNS-сервера.
Для безопасности все сообщения между DNS-сервером и DHCP-DDNS-сервером подписываются общим TSIG-ключом. DNS-сервер будет игнорировать запросы на обновления, не подписанные ключом.
Для настройки DNS-сервера на работу с динамическими обновлениями:
/etc/bind/ создать файл с TSIG-ключом, ограничить доступ к файлу:sudo tsig-keygen <название_ключа> | sudo tee /etc/bind/<название_файла> sudo chmod 640 /etc/bind/<название_файла> sudo chown bind:bind /etc/bind/<название_файла> |
dhcp1";dhcp1", ключ сохранён в файле /etc/bind/dc1-dhcp1.key:sudo tsig-keygen dc1- |
/etc/bind/dc1-dhcp1.key:key "dc1-dhcp1" {
algorithm hmac-sha256;
secret "cuF3/joQN1jNQeHbSJtt1eFpaRfludKEDeD/CaFjpg4=";
}; |
/etc/bind/ipa-ext.conf строку:include "/etc/bind/dc1-dhcp1.key"; |
sudo named-checkconf |
sudo ipactl restart |


grant dc1-dhcp1 wildcard * ANY; |
grant dc1-dhcp1 wildcard * DHCID; |

Предполагается, что DHCP-сервер и DHCP-DDNS-сервер уже настроены в соответствии со статьёй "DHCP: служба kea".
/etc/kea/kea-dhcp4.conf в глобальном параметре ddns-qualifying-suffix указать название домена:{
"Dhcp4": {
...
"ddns-qualifying-suffix": "<название_домена>", // Например, ipa.lc
...
}
} |
sudo kea-dhcp4 -t /etc/kea/kea-dhcp4.conf |
sudo systemctl restart kea-dhcp4-server |
Предполагается, что DHCP-сервер и DHCP-DDNS-сервер уже настроены в соответствии со статьёй "DHCP: служба kea".
/etc/kea/ создать файл с произвольным названием <название_файла>. В файле сохранить описание TSIG-ключа: "name": "<название_ключа>",
"algorithm": "hmac-sha256",
"secret": "<секрет_ключа>" |
secret в файле с ключом, используемого DNS-сервером.sudo chmod 640 /etc/kea/<название_файла> |
/etc/kea/dc1-dhcp1.key с ключом, который соответствует вышесозданному ключу DNS-сервера: "name": "dc1-dhcp1",
"algorithm": "hmac-sha256",
"secret": "cuF3/joQN1jNQeHbSJtt1eFpaRfludKEDeD/CaFjpg4=" |
/etc/kea/kea-dhcp-ddns.conf с настройками DHCP-DDNS-сервера:{
"DhcpDdns": {
"ip-address": "127.0.0.1", // IP-адрес и порт, на которых DHCP-DDNS-сервер
"port": 53001, // принимает запросы от DHCP-сервера.
"control-socket": {
"socket-type": "unix",
"socket-name": "/run/kea/kea-ddns-ctrl-socket"
},
"tsig-keys": [
{
<?include "/etc/kea/<название_файла_с_ключом>"?> // Название файла, содержащего TSIG-ключ.
}
],
"forward-ddns" : { // Блок с настройками для обновления ПРЯМЫХ зон DNS-серверов.
"ddns-domains": [
{
"name": "localnet.example.ru.",
"key-name": "<название_ключа>", // Название TSIG-ключа.
"dns-servers": [
{
"ip-address": "<IP-адрес_DNS-сервера>", // IP-адрес и порт DNS-сервера, который обслуживает
"port": 53 // зону "localnet.example.ru.".
}
]
}
]
},
"reverse-ddns" : { // Блок с настройками для обновления ОБРАТНЫХ зон DNS-серверов.
"ddns-domains": [
{
"name": "6.192.10.in-addr.arpa.",
"key-name": "<название_ключа>", // Название TSIG-ключа.
"dns-servers": [
{
"ip-address": "<IP-адрес_DNS-сервера>", // IP-адрес и порт DNS-сервера, который обслуживает
"port": 53 // зону "6.192.10.in-addr.arpa.".
}
]
}
]
},
"loggers": [
{
"name": "kea-dhcp-ddns",
"output_options": [
{
"output": "syslog"
}
],
"severity": "INFO"
}
]
}
} |
sudo kea-dhcp-ddns -t /etc/kea/kea-dhcp-ddns.conf |
sudo systemctl restart kea-dhcp-ddns-server |