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

Ключ

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

...

  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";
    Файл  /etc/bind/ipa-ext.conf не изменяется во время обновления FreeIPA

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

    sudo named-checkconf

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

    sudo ipactl restart



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

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

    Внизу страницы в поле "Политика обновления BIND" добавить текст, содержащий политику с названием ключа.:
    Блок кода
    grant dc1-dhcp1 wildcard * ANY;
    Получится:

    Вверху страницы нажать на кнопку "Сохранить".

    Повторить этот пункт для всех (для обратной) доменных зон, которым требуются включить динамические обновления.


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

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


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

  1. В каталоге /etc/kea/ создать файл с произвольным названием <название_файла>. В файле сохранить описание TSIG-ключа:
    Блок кода
                "name": "<название_ключа>",
                "algorithm": "hmac-sha256",
                "secret": "<секрет_ключа>"
    где
      - <название_ключа> – должно в точности совпадать с названием ключа, используемого DNS-сервером;
      - <секрет_ключа> – должен в точности с совпадать со значением параметра secret в файле с ключом, используемого DNS-сервером.

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

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


    Пример файла /etc/kea/dhcp1-dns1.key с ключом, который соответствует вышесозданному ключу DNS-сервера:
    Блок кода
                "name": "dhcp1-dns1",
                "algorithm": "hmac-sha256",
                "secret": "cuF3/joQN1jNQeHbSJtt1eFpaRfludKEDeD/CaFjpg4="
  2. Создать                                  файл /etc/kea/kea-dhcp-ddns.conf с настройками DHCP-DDNS-сервера:
    Раскрыть
    titleСодержимое файла с настройками и комментариями...
    Блок кода
    {
    "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"
        }
        ]
    }
    }
  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