Как создать и настроить вторичную (slave) зону в BIND сервере

Linux

* Инструкция написана на примере операционных систем CentOS 7 и Ubuntu. Но она подходит к любому дистрибутиву Linux.

На сервере Master

Чтобы разрешить передачу зоны на вторичный сервер с первичного, необходимо на последнем (master) настроить соответствующее разрешение.

Для этого открываем конфигурационный файл с настройкой зоны.

CentOS:

# nano /etc/named.conf

Ubuntu:

# /etc/bind/named.conf.local

И добавляем allow-transfer. Должно получиться примерно следующее:

zone "it-systems.msk.ru" {
        type master;
        file "master/it-systems.msk.ru";
        allow-transfer { 192.168.1.5; };
};

* где it-systems.msk.ru — домен, для которого настраивается зона; 192.168.1.5 — IP-адрес вторичного сервера, на который будет разрешена зонная передача.

Применяем настройки одной из команд:

$ systemctl reload named
$ systemctl reload bind
$ service bind9 reload

Если используется iptables, создаем разрешающее правило для зонной передачи:

iptables -I INPUT 1 -p tcp -m tcp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT

На сервере Slave

Открываем на редактирование конфигурационный файл bind.

CentOS:

nano /etc/named.conf

Ubuntu:

nano /etc/bind/named.conf.local

И дописываем туда следующее:

zone "it-systems.msk.ru" {
        type slave;
        file "slaves/it-systems.msk.ru";
        masters { 192.168.1.5; };
};
  • где it-systems.msk.ru — зона (домен); slave — указание, что эта зона вторичная; slave/it-systems.msk.ru — файл с записями зоны. Стоит обратить внимание, что используется относительный путь до файла — это значит, что каталог slave должен находиться в рабочей папке bind (ее путь определяется опцией directory). Можно также прописать абсолютный путь, например, /etc/bind/slave/it-systems.msk.ru; 192.168.1.5 — IP-адрес первичного сервера, с которого будут вытянуты записи для созданной зоны.

Создаем каталог для хранения вторичных зон.

CentOS:

# mkdir /var/named/slaves

Ubuntu:

# mkdir /var/cache/bind/slaves

* используемые в нашем примере каталоги применяются по умолчанию, но в Вашем случае они могут быть другими. Сверяйте данные по опции directory.

Чтобы настройки применились, необходимо перезапустить вторичный bind-сервер одной из команд:

# systemctl reload named
# systemctl reload bind
# service bind9 reload

и перечитать информацию о настроенных DNS-зонах:

# rndc reload

Проверяем, что файл с записями появился в базе bind:

CentOS:

# ls /var/named/slaves/

Ubuntu:

# ls /var/cache/bind/slaves
  • команда выведет список файлов, среди которых должен быть наш (в конкретном примере, it-systems.msk.ru).

Чтобы проверить работоспособность вторичного сервера BIND, запускаем консоль на любом компьютере в сети и вводим команду:



nslookup it-systems.msk.ru 192.168.1.7

  • где it-systems.msk.ru — домен, который мы создали; 192.168.1.7 — IP-адрес резервного DNS-сервера, на котором мы и создавали slave-зону (в моем примере).

Оцените статью
Добавить комментарий