Содержание

Настраиваем DNS сервер bind

Установка bind

Сначала нам надо обновить систему:

dnf --refresh distro-sync

Далее устанавливаем сам Bind. Пакет называется bind, а вот сервис его будет называться named.

Настраиваем sytemd-resolved

В сервере ROSA 12 используется systemd-resolved в качестве резолвера dns. Если мы хотим, настроить свой DNS сервер, то для этого, надо настроить systemd-resolved:

Посмотрим, кто у нас прослушивает 53 порт:

lsof -i :53

Resolv1.png

Открываем файл /etc/systemd/resolved.conf

Правим следующие строки:

DNS=127.0.0.1
FallbackDNS=
DNSSEC=no
LLMNR=resolve
DNSStubListener=no

где:

Остальные опции в этом файле, оставим как есть. Перезапускаем systemd-resolved:

systemctl restart systemd-resolved

Еще раз смотрим:

lsof -i :53

Если вывод пустой, значит всё нормально, можно приступать к настройке и запуску bind.

Базовая настройка bind

Пакет называется bind, но сервис называется named. И все конфигурационные файлы/сервисы будут называться на named

Основной конфигурационный файл: named.conf

Открываем этот конфигурационный файл named.conf и для минимальной работы DNS сервера, правим следующие строки:

options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { any; };
        . . . . .
        allow-query     { any; };

где:

После правки конфигурационного файла, можем запустит наш bind:

systemctl start named.service

Смотрим кто у нас прослушивает 53 порт:

lsof -i :53

Resolv2.png

Если named, то все настроили правильно. Но мы проверили только то, что и кто слушает 53 порт.

Проверим как работает наш DNS сервер.

dig @127.0.0.1 yandex.ru

Или

nslookup yandex.ru

Должны быть выведены IP адреса yandex.ru.

Включаем наш DNS сервис в автозагрузку.

systemctl enable named.service

Настройка Forward DNS сервера bind

Чтобы настроить bind для перенапрваления (forward) запросов к другим DNS серверам, сделаем следующее:

Открываем этот конфигурационный файл named.conf и для минимальной работы DNS сервера, правим следующие строки:

options {
        . . . . .
        recursion yes;
        . . . . .
        forward only;
        forwarders {
                77.88.8.8;
                77.88.8.1;
        };

где:

Настройка кеширующего DNS сервера bind

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

Открываем этот конфигурационный файл named.conf и для минимальной работы DNS сервера, правим следующие строки:

acl my_allowed {
        192.168.100.0/24;
        217.71.222.0/24;
        localhost;
};
options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { any; };
        directory       "/var/named";
        . . . . .
        allow-recursion { my_allowed; };
        allow-query     { my_allowed; };
        allow-transfer { none; };
        recursion yes;
        . . . . .

где:

acl my_allowed - это ACL список доступа к нашему DNS серверу. my_allowed - название списка доступа. Делается это для того, чтобы не разрешить злоумышленникам проводить расширенные DNS атаки на наш кеширующий сервер. Такие атаки очень распространенные. Для этого они пытаются найти общедоступные DNS серверы, которые будут разрешать рекурсивные запросы. Они подделывают IP адрес жертвы и отправляют запрос, который вернет ответ с большой временной задержкой на DNS сервер. При этом DNS сервер отвечает на быстро на запрос, с большой полезной нагрузкой, направленной на сервер жертв, эффективно увеличивая доступную пропускную способность для злоумышленника.

После правки конфигурационного файла, запускаем наш DNS сервер:

systemctl start named.service


Здесь описана базовая настройка и конфигурация DNS сервера. Настройки безопасности, настройки прослушивания других IP, настройка зон и т.д. Это все индивидуально.