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

Материал из Rosalab Wiki
Версия от 12:19, 28 октября 2021; PastorDi (обсуждение | вклад)

Это снимок страницы. Он включает старые, но не удалённые версии шаблонов и изображений.
Перейти к: навигация, поиск

Настраиваем 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/systmd/resolved.conf

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

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

где:

  • DNS=127.0.0.1 - это локальный ip адрес, на котором будет работать наш DNS сервер будущий
  • FallbackDNS= - оставляем пустым, чтобы systemd-resolved не переключался на fallback dns сервера
  • DNSSEC=no - отключаем DNSSEC
  • LLMNR=resolve - LLMNR переводим в режим resolve
  • DNSStubListener=no - чтобы наш systemd-resolved не прослушивал порт 53

Остальные опции в этом файле, оставим как есть. Перезапускаем 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; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        allow-query     { any; };

где:

  • listen-on port 53 { any; }; - ставим any для прослушивания на всех ip хоста
  • listen-on-v6 port 53 { any; }; - ставим any для прослушивания на всех ip хоста
  • 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