Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Секция
Столбец

Оглавление
stylenone

Столбец
Информация
titleДанная статья применима к:
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.8).

Если IP-адреса выдаются компьютерам (контроллерам домена или клиентам домена) с помощью службы DHCP (см. статьи isc-dhcp-server и kea), то необходимо обеспечить сохранность настроек DNS, создаваемых при инициализации контроллера домена (вводе клиента в домен). Это можно сделать либо настройками службы DHCP (для клиентов), либо запретом получения параметров DNS от службы DHCP (для серверов).

Контроллер домена FreeIPA

...

Предварительная настройка контроллера домена FreeIPA

Предполагается, что контроллер настроен в соответствии со статьёй "Контроллер ЕПП FreeIPA в Astra Linux" и имеет параметры:

  • IP-адрес узла с FreeIPA – 192.168.0.105;
  • название домена – ipa.lc;
  • имя узла:
    - краткое – dc1;
    - полное доменное – dc1.ipa.lc.


Раскрыть
titleКраткая инструкция по установке FreeIPA в тестовых целях...
Предупреждение

Перед установкой FreeIPA необходимо обратить внимание на технические и программные требования

...

к компьютеру, на котором устанавливается контроллер домена.

Порядок настройки FreeIPA с вышеуказанными параметрами контроллера домена:

  1. Добавить в файл /etc/hosts строку, содержащую IP-адрес,

...

  1. полное доменное и

...

  1. краткое имя узла

...

  1. :
    Блок кода
    192.168.0.105 dc1.ipa.lc dc1

Задать полное доменное имя узла

  1. В дальнейшем не следует вручную изменять файл /etc/hosts, т.к. его содержимым будет управлять FreeIPA.

  2. Задать полное доменное имя узла:
    Command

    sudo hostnamectl hostname

Command
sudo hostnamectl hostname
  1. dc1.ipa.lc

  2. Установить FreeIPA:
    Command

    sudo apt install fly-admin-freeipa-server astra-freeipa-server

  3. FreeIPA работает только при выключенном режиме AstraMode

...

  1. веб-

...

  1. сервера Apache2.

...


  1. Для выключения режима в файле /etc/apache2/apache2.conf

...

  1. задать параметру AstraMode значение off:

    Command

    sudo sed -i 's/^.*AstraMode\s*.*/AstraMode off/' /etc/apache2/apache2.conf

...

  1. И перезапустить веб-сервер Apache2 для применения настроек:

    Command

    sudo systemctl restart apache2

  2. Проинициализировать

...

  1. контроллер FreeIPA с помощью

...

  1. команды:

    Command

    sudo astra-freeipa-server -o -n

<имя_узла> -d <название_домена>sudo astra-freeipa-server -o -n dc1 -d ipa
  1. dc1 -d ipa.lc

    Команда

...

  1. выведет исходные данные для инициализации и запросит подтвердить

...

  1. продолжение процедуры:

    Блок кода
    compname= dc1
    domain= ipa.lc
    Сертификаты будут сгенерированы с помощью OpenSSL
     Обнаружен только один сетевой интерфейс.
     Будет использован сетевой интерфейс "enp0s3", имеющий динамический IP-адрес 192.168.0.105.
    продолжать ? (y\n)

...

  1. Далее команда запросит задать пароль (

...

  1. с его подтверждением) для учётной записи администратора FreeIPA

...

Блок кода
введите пароль администратора домена (login: admin):

...

  1. :

    Блок кода
    введите пароль администратора домена (login: admin):
    

    После успешной инициализации отобразится

...

  1. ссылка для открытия

...

  1. веб-интерфейса FreeIPA

...

  1. :

    Блок кода
    ...
    ipa: INFO: The ipactl command was successful
    Завершено.
    Для продолжения работы, необходимо перезагрузить компьютер!
    Обнаружен настроенный домен ipa.lc
    WEB: https://dc1.ipa.lc
  1. 
    

...

  1. Перезагрузить компьютер с контроллером домена.

Настройка DNS-сервера BIND

DNS-сервер BIND входит в состав контроллера домена и управляется им же управляется.Необходимо


Чтобы DNS-сервер принимал динамические обновления, необходимо:

  • создать TSIG-ключ

...

  • ;
  • добавить правило к политике обновления BIND, разрешающее получать обновления, которые подписаны созданным TSIG-ключом.


Для настройки DNS-сервера на работу с

Для безопасности все сообщения между DNS-сервером и DHCP-DDNS-сервером подписываются общим TSIG-ключом. DNS-сервер будет игнорировать запросы на обновления, не подписанные ключом.

Для настройки DNS-сервера на работу с динамическими обновлениями:

  1. В каталоге /etc/bind/ создать файл с TSIG-ключом, ограничить доступ к файлу:
    Command

    sudo tsig-keygen <название_ключа> | sudo tee /etc/bind/<название_файла>

    sudo chmod 640 /etc/bind/<название_файла>

    sudo chown bind:bind /etc/bind/<название_файла>

    где
      - <название_ключа> – любая строка, соответствующая требованиям к доменному имени, т.е. состоящая из букв, цифр, дефисов и точек.
                                                     Для наглядности рекомендуется составлять название ключа из имён узлов, на которых работают DNS-сервер и DHCP-DDNS-сервер. Например, "dc1-dhcp1";
      - <название_файла> – произвольное название файла.

    Далее предполагается, что создан ключ с названием "dc1-dhcp1", ключ сохранён в файле /etc/bind/dc1-dhcp1.key:
    Command

    sudo tsig-keygen dc1-dhcp1 | sudo tee /etc/bind/dc1-dhcp1.key

    Пример файла /etc/bind/dc1-dhcp1.key:
    Блок кода
    key "dc1-dhcp1" {
            algorithm hmac-sha256;
            secret "cuF3/joQN1jNQeHbSJtt1eFpaRfludKEDeD/CaFjpg4=";
    };
  2. Указать в настройках DNS-сервера расположение файла с TSIG-ключом.
    Для этого добавить в файл /etc/bind/ipa-ext.conf строку:
    Блок кода
    include "/etc/bind/dc1-dhcp1.key";
    Файл  Для BIND из состава FreeIPA: файл /etc/bind/ipa-ext.conf предназначен для хранения пользовательских настроек и не изменяется во время обновления FreeIPA.

  3. Проверить конфигурационные файлы DNS-сервера на отсутствие синтаксических ошибок в конфигурационных файлах DNS-сервера:
    Command

    sudo named-checkconf

  4. Перезапустить FreeIPA для применения настроек DNS-сервера:
    Command

    sudo ipactl restart

  5. Разрешить динамические обновления требуемых прямой и обратной доменных зон для DNS-клиентовзапросов, обладающих подписанных TSIG-ключом. 
    Для этого в веб-интерфейсе FreeIPA открыть страницу "Сетевые службы → DNS → Зоны DNS".
    Откроется страница со списком доменных зон:

    На странице выбрать прямую зону , для которой необходимо включить динамические обновления. Перейти ipa.lc, перейти на вкладку "Параметры".
    Откроется страница:

    Внизу страницы в поле "Политика обновления BIND" добавить текст, содержащий политику с названием ключа.правило политики, которое разрешает принимать обновления, подписанные созданным ключом с названием dc1-dhcp1:
    Блок кода
    grant dc1-dhcp1 wildcard * ANY;
    FreeIPA не работает с DHCID
    Блок кода
    grant dc1-dhcp1 wildcard * DHCID;
    Получится:
    Image Removed
    Вверху страницы нажать на Получится:
    Image Added
    Вверху страницы нажать на кнопку "Сохранить".
    Повторить этот пункт для всех (для обратной) доменных зон, которым требуются включить динамические обновления.

Настройка DHCP-сервера

Предполагается, что DHCP-сервер и DHCP-DDNS-сервер уже настроены в соответствии со статьёй "DHCP: служба kea".

Настройка DHCP-сервера:


  1. Выполнить инструкции этого пункта для обратной доменной зоны, добавив в поле  "Политика обновления BIND" точно такое же правило.

    Информация

    Kea DHCP-DDNS-сервер создаёт на DNS-сервера в том числе записи типа DHCID, которые используются для идентификации DHCP-клиентов. Веб-интерфейс FreeIPA не отображает такие записи. Для их просмотра можно использовать консольные команды из состава BIND, например dig:

    Command

    dig @localhost astra06954.ipa.lc. any

    Вывод команды:

    Блок кода
    ...
    ;; ANSWER SECTION:
    astra06954.ipa.lc.      14400   IN      A       192.168.0.203
    astra06954.ipa.lc.      14400   IN      DHCID   AAABP1ZUSZviTQHluGX6B3j9OueWkRxYEyGoXqjOvWfuM5Q=
    ...

Настройка Kea

Настройка DHCP-сервера

Предполагается, что DHCP-сервер совместно с DHCP-DDNS-сервером настроены на отправку динамических обновлений (см. статью "DHCP: служба kea").


Для настройки DHCP-сервера:

  1. В файле
  2. В файле /etc/kea/kea-dhcp4.conf в глобальном параметре ddns-qualifying-suffix указать название домена:
    Блок кода
    {
    "Dhcp4": {
    
        ...
        "ddns-qualifying-suffix": "<название_домена>",         // Например, ipa.lc
        ...
    
    }
    }
  3. Проверить отсутствие синтаксических ошибок в конфигурационном файле DHCP-сервера:
    Commandsudo kea-dhcp4 -t /etc/kea/kea-dhcp4.conf
    Перезапустить с настройками DHCP-сервер для применения настроек:
    Command

    sudo systemctl restart kea-dhcp4-server

Настройка DHCP-DDNS-сервера:

  1. сервера указать соответствующие значения:
      - в глобальном параметре ddns-qualifying-suffix – название домена;
      - в блоке subnet4 – обслуживаемую сеть;
      - в блоке pools – диапазон выдаваемых адресов:
    Блок кода
    {
    "Dhcp4": {
    
        ...
        "ddns-qualifying-suffix": "ipa.lc",
    В каталоге /etc/kea/ создать файл с произвольным названием <название_файла>. В файле сохранить описание TSIG-ключа:
    Блок кода
                "name": "<название_ключа>",
                "algorithm": "hmac-sha256",
             // Название домена.
     "secret   
        "subnet4": [
        {
            "subnet": "<секрет_ключа>"
    где
      - <название_ключа> – должно в точности совпадать с названием ключа, используемого DNS-сервером;
      - <секрет_ключа> – должен в точности с совпадать со значением параметра secret в файле с ключом, используемого DNS-сервером.
    Ограничить доступ к файлу с ключом:
    Command

    sudo chmod 640 /etc/kea/<название_файла>
    sudo chown _kea:_kea /etc/kea/<название_файла>

    Пример файла /etc/kea/dhcp1-dns1.key с ключом, который соответствует вышесозданному ключу DNS-сервера:
    Блок кода
    192.168.0.0/24",                          // Обслуживаемая сеть.
            "interface": "enp0s3",
    
            "pools": [
            {
                "pool": "192.168.0.200-192.168.0.222"            // Диапазон выдаваемых адресов.
      "name": "dhcp1-dns1",
         }
           "algorithm": "hmac-sha256", ]
        }
        ],
        "secret": "cuF3/joQN1jNQeHbSJtt1eFpaRfludKEDeD/CaFjpg4="
    Изменить (добавить)                                  файл /etc/kea/kea-dhcp-ddns.conf с настройками DHCP-DDNS-сервера:
    ...
    }
    }
  2. Проверить конфигурационный файл DHCP-сервера на отсутствие синтаксических ошибок:
    Command

    sudo kea-dhcp4 -t /etc/kea/kea-dhcp4.conf

  3. Перезапустить DHCP-сервер для применения настроек:
    Command

    sudo systemctl restart kea-dhcp4-server

Настройка DHCP-DDNS-сервера

Предполагается, что DHCP-DDNS-сервер совместно с DHCP-сервером настроены на отправку динамических обновлений (см. статью "DHCP: служба kea").


Чтобы DNS-сервер принимал динамические обновления от DHCP-DDNS-сервера, необходимо:

  • создать для DHCP-DDNS-сервера TSIG-ключ, соответствующий ключу, который использует DNS-сервер;
  • подписывать отправляемые обновления созданным ключом.


Для настройки DHCP-DDNS-сервера на отправку подписанных динамических обновлений:

  1. В каталоге /etc/kea/ создать файл с произвольным названием <название_файла>. В файле сохранить описание TSIG-ключа:
    { "DhcpDdns": { "ip-address": "127.0.0.1",
                
    "algorithm": "hmac-sha256",
             
    // IP-адрес и
     
    порт,
     
    на
     
    которых DHCP-DDNS-сервер "port": 53001, //   принимает запросы от DHCP-сервера.     "control-socket": {
    "secret": "<секрет_ключа>"
    Блок кода
                "name": "<название_ключа>",
    
    Раскрыть
    titleСодержимое файла с настройками и комментариями...
    Блок кода
    где
      - <название_ключа> – должно в точности совпадать с названием ключа, используемого DNS-сервером;
      - <секрет_ключа> – должен в точности с совпадать со значением параметра secret в файле с ключом, используемого DNS-сервером.

    Ограничить доступ к файлу с ключом:
    Command

    sudo chmod 640 /etc/kea/<название_файла>
    sudo chown _kea:_kea /etc/kea/<название_файла>


    Пример файла /etc/kea/dc1-dhcp1.key с ключом, который соответствует вышесозданному ключу DNS-сервера:
    Блок кода
                "
    socket-type
    name": "
    unix
    dc1-dhcp1",
                "
    socket-name
    algorithm": "
    /run/kea/kea-ddns-ctrl-socket" },
    hmac-sha256",
        
    "tsig-keys":
     
    [
        
    {
       "secret": "cuF3/joQN1jNQeHbSJtt1eFpaRfludKEDeD/CaFjpg4="
  2. В файле /etc/kea/kea-dhcp-ddns.conf с настройками DHCP-DDNS-сервера указать соответствующие значения:
      - в блоке tsig-keys – путь к файлу с ключом;
      - в блоке forward-ddns –название прямой доменной зоны, название ключа, IP-адрес FreeIPA-сервера;
      - в блоке forward-ddns –название обратной доменной зоны, название ключа, IP-адрес FreeIPA-сервера:
    Блок кода
    {
    "DhcpDdns": {
    
        ...
    <?include "/etc/kea/<название_файла_с_ключом>"?> // Название файла, содержащего TSIG-ключ. } ],
    
        "
    forward
    tsig-
    ddns
    keys"
    :
    {
     [
        {
            
    <?include "/etc/kea/dc1-dhcp1.key"?>                 // 
    Блок
    Путь к файлу с 
    настройками
    TSIG-ключом.
     
    для
     
    обновления
     
    ПРЯМЫХ зон DNS-серверов.
     }
        ],
    
        "forward-ddns
    -domains
    " : 
    [
    {        
    {
                
    "name": "localnet.example.ru.",
                       // Блок 
    с 
     
    настройками 
     
    для 
     
    обновления 
     
    ПРЯМЫХ 
     
    зон 
     "key-name": "<название_ключа>",
    DNS-серверов.
            "ddns-domains": [
            {
      
    //
     
    Название TSIG-ключа.             "dns-servers": [
             "name": "ipa.lc.",                               // Название 
    прямой доменной зоны (заканчивающееся точкой!)
                "key-name": "dc1-dhcp1", 
    {
                            // Название TSIG-ключа.
                
    "dns-servers": [             
                    
    "ip-address":
     
    "<IP-адрес_DNS-сервера>",
       
       
    //
     
    IP-адрес
     
    и
     
    порт
     
    DNS-сервера,
     
    который
     
    обслуживает  
     
     
     
     
     
     
    { 
     
     
     
     
     
     
     
     
    "port":
      
    53
                                       
    //
         
    зону
     
    "localnet.example.ru.".             }
    
                    "ip-address": "<IP-адрес_FreeIPA-сервера>",  // IP-адрес FreeIPA-сервера, вместе с которым работает и DNS-сервер,
                    "port": 53                    
                
    ]
       //     обслуживающий зону "ipa.lc.".
                }                                
            
    }
            
    ]
    
        
    },
     
    "reverse-ddns"
     
    :
     
    {
         ]                                  
    //
     
    Блок
     
    с
     
    настройками
     
    для
     
    обновления
     
    ОБРАТНЫХ
     
    зон
     
    DNS-серверов.
     
     
     
     
     
     
     
     
     
    "ddns-domains":
     
    [
    
            
    {
    }
            ]
        
    "name": "6.192.10.in-addr.arpa.",
    },
    
        "reverse-ddns" : {              
     
     
     
     
     
     
     
     
     
     
     
     "key-name":
     
    "<название_ключа>",
                      //
    Название TSIG-ключа
     Блок с настройками для обновления ОБРАТНЫХ зон DNS-серверов. 
    
     
            
     
    "
    dns
    ddns-
    servers
    domains": [
            {
                
    {
    "name": "0.168.192.in-addr.arpa.",               // Название обратной доменной зоны (заканчивающееся точкой!)
                "key-name": "dc1-dhcp1",                         // Название TSIG-ключа. 
              
      "dns-servers": [         
                    
    "ip-address": "<IP-адрес_DNS-сервера>",
          
    //
     
    IP-адрес
     
    и
    
     
    порт
     
    DNS-сервера,
     
    который
     
    обслуживает  
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    "port":
    { 
    53
                                       
    //
         
    зону "6.192.10.in-addr.arpa.".             }
           
                    "ip-address": "<IP-адрес_FreeIPA-сервера>",  // IP-адрес FreeIPA-сервера, вместе с которым работает и DNS-сервер,
                    "port": 53                  
                
    ]
         //     обслуживающий зону "0.168.192.in-addr.arpa.".
                }                                
            
    }
            
    ]
    
        
    },
        
    "loggers":
     
    [
       ] 
    {
            
    "name":
     
    "kea-dhcp-ddns",
            
    "output_options":
     
    [
            
    {
                
    "output":
     
    "syslog"
            
    }
    
            
    ],
    }
            
    "severity": "INFO"
    ]
        },
        
    ]
    ...
    }
    }
  3. Проверить отсутствие синтаксических ошибок в конфигурационном файле конфигурационный файл DHCP-DDNS-сервера на отсутствие синтаксических ошибок:
    Command

    sudo kea-dhcp-ddns -t /etc/kea/kea-dhcp-ddns.conf

  4. Перезапустить DHCP-DDNS-сервер для применения настроек:
    Command

    sudo systemctl restart kea-dhcp-ddns-server

...