Приведу пример установки кэширующего DNS сервера Unbound.
Установить Unbound в Ubuntu можно командой:
Вячеслав Гапон — персональный блог, руководства, статьи, заметки, разработка
Приведу пример установки кэширующего DNS сервера Unbound.
Установить Unbound в Ubuntu можно командой:
Допустим на сервере по умолчанию INPUT DROP и установлен DNS сервер, теперь приведу пример IPTables правил чтобы к DNS серверу могли обращайся клиенты.
Чтобы открыть порт DNS в IPTables выполним правило:
Читать далее «IPTables правила для DNS»Допустим Fail2Ban уже установлен, если нет, то смотрите мою статью — Установка и настройка Fail2ban.
По умолчанию Bind9 пишет логи в /var/log/syslog, поэтому чтобы писать в отдельный файл, откроем файл конфигурации в любом текстовом редакторе:
Читать далее «Настройка Fail2Ban под Bind9»Настроить обратную DNS запись (PTR) для Hetzner сервера можно в панели управления robot.your-server.de
Читать далее «Настройка Reverse DNS (PTR) в Hetzner»На примере опишу вариант мониторинга DNS сервера Bind9 в Zabbix.
Для начала включим статистику Bind9, откроем файл конфигурации в текстовом редакторе, например nano (Ctrl+X для выхода, y/n для сохранения или отмены изменений):
Читать далее «Мониторинг Bind9 в Zabbix»Понадобилось как-то настроить обратную DNS зону (Reverse DNS) для почтового сервера, так как некоторые сервера не хотели принимать от него почту.
Читать далее «Настройка PTR записи на DNS сервере»По умолчанию логи Bind9 записываются в системный журнал /var/log/syslog и чтобы отделить их, выполним действия которые я укажу ниже.
Читать далее «Настройка логов Bind9»Для мониторинга самой службы DNS на порту можно использовать следующий ключ в элементах данных (где СЕРВЕР, это IP-адрес или домен DNS сервера):
net.tcp.dns[СЕРВЕР]
Чтобы не создавать с нуля шаблон, можно клонировать например стандартный «Template App SSH Service» изменив в нём название и указав новый ключ, триггер изменится автоматически. А также в «Тип» выберем «Zabbix агент» вместо простой проверки.
Следующей командой можно выполнить проверку из командной строки Linux:
zabbix_get -s127.0.0.1 -k'net.tcp.dns[СЕРВЕР]'
Естественно если ответом будет 1, то служба DNS запущена, 0 — нет.
Если на узле установлен Zabbix-agent, то в поле ключ лучше указать:
proc.num[nemed]
Смотрите также мою статью:
Мониторинг Bind9 в Zabbix
SPF (инфраструктура политики отправителей) позволяет указать в TXT записи DNS параметров домена адреса с которых возможна отправка почты чтобы предотвратить e-mail spoofing.
Читать далее «Как настроить SPF записи»В Linux преобразовать список IP-адресов в DNS-имена можно например простеньким скриптом.
Для этого создадим пустой файл с расширением .sh, сделаем его исполняемым и добавим в него содержимое:
#!/bin/sh
while read ip traf ; do
name=`host $ip|awk '{print $NF}'`
echo -e "$name\t$ip\t$traf"
done >name_ip_traf.lst <ip_traf.lst
Где ip_traf.lst — файл со списком IP-адресов которые необходимо преобразовать в DNS-имена.
Исполняемым его можно сделать командой:
chmod +rwx file.sh
Запускать скрипт необходимо находясь в директории где он находится командой:
./file.sh
Или запустить указав полный путь:
/dir/file.sh
После запуска необходимо подождать некоторое время либо оборвать выполнение комбинацией клавиш CTRL+C.