В этом разделе мы расскажем, как выполнить интеграцию Plesk с внешним вторичным DNS-сервером с Linux.

Эту интеграцию можно выполнить с помощью расширения Slave DNS Manager, доступного в Каталоге расширений в интерфейсе Plesk.

Это расширение работает по следующему алгоритму:

  1. Оно регистрирует вторичный сервер в настройках расширения.
  2. IP-адрес вторичного сервера автоматически добавляется к списку адресов, которым разрешено переносить доменные зоны с сервера Plesk.
  3. Когда вы создаете, изменяете или удаляете активную доменную зону в Plesk, Plesk создает, изменяет или удаляет доменную зону в локальной службе DNS.
  4. Скрипт запускается и получает доменное имя и команду на создание, изменение или удаление доменной зоны.
  5. Скрипт запускает команду rndc для каждого подключенного вторичного сервера.
  6. Вторичные серверы синхронизируют доменные зоны с зонами на сервере Plesk.

Примечание: Описанные ниже инструкции предназначены для Debian Linux. Последовательность шагов на других системах Linux та же, однако команды и пути к конфигурационным файлам могут быть другими.

Примечание: В один момент времени на сервере может быть установлено только одно из следующих расширений: Slave DNS Manager, Amazon Route 53 или DigitalOcean DNS. Все они управляют DNS и, в случае одновременной установки, будут конфликтовать между собой.

Чтобы настроить вторичный сервер DNS, сделайте следующее:

  1. Установите BIND.
apt-get install bind9
  1. Разрешите создание новых зон с помощью rndc. В файле /etc/bind/named.conf.options в директиве options {} введите allow-new-zones yes;
  2. Укажите IP-адрес, с которого необходимо принимать инструкции по управлению, и настройте BIND на прослушивание всех доступных сетевых интерфейсов. В файле /etc/bind/named.conf.local введите:
controls {
    inet * port 953 allow { <plesk_ip>; <another_plesk_ip> 127.0.0.1; };
 };
  1. Перезапустите службу BIND путем вызова следующей команды:
invoke-rc.d bind9 restart
  1. Удостоверьтесь в том, что вы запомнили секретный ключ, расположенный в файле /etc/bind/rndc.key:
key "rndc-key" {
    algorithm hmac-md5;
    secret "vwOxonI4n4CVRUhKAOAAIA==";
 };

Вот и все, вторичный сервер имен настроен.

Примечание: Если ваш сервер Plesk работает под управлением NAT, вторичные серверы DNS должны быть за ее пределами.

После этого установите расширение на сервере Plesk. В настройках расширения добавьте вторичный сервер и укажите его IP-адрес и секретный ключ. Расширение создаст конфигурационный файл с настройками вторичного сервера для утилиты rndc. Начиная с этого момента Plesk будет автоматически передавать все созданные, измененные и удаленные зоны вторичному серверу путем выполнения следующих команд для каждого вторичного сервера:

# Создание

/usr/sbin/rndc -c slave.config addzone example.com '{ type slave; file "/var/lib/bind/example.com"; masters { <plesk_ip>; }; };'

# Изменение

/usr/sbin/rndc -c slave.config refresh example.com

# Удаление

/usr/sbin/rndc -c slave.config delzone example.com

Теперь при добавлении домена в Plesk для него будет автоматически создаваться зона DNS на вторичном сервере, так же, как и на первичном сервере.