Настройка RPZ в Bind9 (блокировка сайтов)

В этой статье я приведу простой пример настройки RPZ в Bind9.
RPZ (Response Policy Zone) позволяет блокировать доступ к вредоносным и запрещенным сайтам, по имени домена, по IP адресу или сети, блокировать DNS сервера.

Читать далее «Настройка RPZ в Bind9 (блокировка сайтов)»

Ротация логов Bind9

Допустим логи Bind9 пишутся в директорию /var/log/named/, имеют расширение .log и чтобы дисковое пространство не переполнилось логами, настроим logrotate.

Читать далее «Ротация логов Bind9»

Настройка Fail2Ban под Bind9

Допустим Fail2Ban уже установлен, если нет, то смотрите мою статью — Установка и настройка Fail2ban.

По умолчанию Bind9 пишет логи в /var/log/syslog, поэтому чтобы писать в отдельный файл, откроем файл конфигурации в любом текстовом редакторе:

Читать далее «Настройка Fail2Ban под Bind9»

Мониторинг Bind9 в Zabbix

На примере опишу вариант мониторинга DNS сервера Bind9 в Zabbix.

Для начала включим статистику Bind9, откроем файл конфигурации в текстовом редакторе, например nano (Ctrl+X для выхода, y/n для сохранения или отмены изменений):

Читать далее «Мониторинг Bind9 в Zabbix»

Настройка PTR записи на DNS сервере

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

Допустим наш домен mail.example.com находящийся на IP адресе 192.168.1.100, а 192.168.1.1 — сервер интернет провайдера.

Проверить из Windows можно командами (где 192.168.1.100 например адрес нашего почтового сервера, а 192.168.1.1 DNS на который шлем запрос):

nslookup mail.example.com
nslookup 192.168.1.100
nslookup 192.168.1.100 192.168.1.1

В ответ первой команды будет 192.168.1.100, а в ответ второй ничего (должно mail.example.com), так как в DNS не настроена PTR запись.

Из Linux проверять можно так:

dig -x 192.168.1.100

У регистратора доменных имен в DNS добавим дочерний NS-сервер интернет провайдера ns1.example.com 192.168.1.1.

На сервере провайдера (на тесте использую Bind9 на Ubuntu Server) откроем конфигурационный файл DNS сервера например в редакторе nano (CTRL+X для выхода, y/x и Enter для сохранения или отмены изменений):

sudo nano /etc/bind/named.conf

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

zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/1.168.192.in-addr.arpa";
};

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

Откроем новый файл для настроек зоны:

sudo nano /etc/bind/1.168.192.in-addr.arpa

И добавим в него:

$TTL 3600
@          IN SOA ns1.example.com. admin.example.com. (
              2016112301       ; Serial
              21600             ; refresh
              3600              ; retry
              3600000           ; expire
              86400 )           ; minimum

        IN  NS ns1.hosting.com.
        IN  NS ns2.hosting.com.

$ORIGIN 1.168.192.in-addr.arpa.
100      IN PTR  mail.example.com.

admin.example.com — контактный адрес человека отвечающего за зону, символ @ не указывается.
Serial это серийный номер версии файла зоны, должен изменяться в большую сторону при каждом изменении, обычно пишется в виде год месяц число номер изменения, по нему другие DNS определяют что нужно обновить у себя информацию.
Refresh — интервал времени в секундах, через который вторичный сервер будет проверять необходимость обновления информации.
Retry — интервал времени в секундах, через который вторичный сервер будет повторять обращения при неудаче.
Expire — интервал времени в секундах, через который вторичный сервер будет считать имеющуюся у него информацию устаревшей.
Minimum — интервал времени жизни информации на кэширующих серверах.
ns1.hosting.com и ns2.hosting.com это DNS домена.
Цифра 100 в последней строке означает окончание IP адреса 192.168.1, аналогично можно указывать записи для других доменов, например 101 IN PTR … для 192.168.1.101 и т.д.

Перезапустим DNS сервер чтобы применить изменения.
Bind9 можно командой:

sudo /etc/init.d/bind9 restart

Смотрите также:
Настройка Reverse DNS (PTR) в Hetzner

Настройка логов Bind9

По умолчанию логи Bind9 записываются в системный журнал /var/log/syslog и чтобы отделить их, выполним действия которые я укажу ниже.

Читать далее «Настройка логов Bind9»

Установка и настройка DNS-сервера BIND9

BIND (Berkeley Internet Name Domain) — открытая и наиболее распространённая реализация DNS-сервера, обеспечивающая выполнение преобразования DNS-имени в IP-адрес и наоборот.

Читать далее «Установка и настройка DNS-сервера BIND9»