Установка и настройка Unbound

Приведу пример установки кэширующего DNS сервера Unbound.

Установить Unbound в Ubuntu можно командой:

sudo apt-get install unbound

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

cat /etc/unbound/unbound.conf

В моем случае там была только строка:

include: "/etc/unbound/unbound.conf.d/*.conf"

Строка выше означает что из директории unbound.conf.d будут загружаться все файлы с расширением .conf.

По этому создадим в ней новый файл:

sudo touch /etc/unbound/unbound.conf.d/test.conf

И откроем в текстовом редакторе:

sudo nano /etc/unbound/unbound.conf.d/test.conf

Приведу пример конфигурации:

server:
port: 53
verbosity: 0
num-threads: 2
outgoing-range: 512
num-queries-per-thread: 1024
msg-cache-size: 16m
rrset-cache-size: 32m
cache-max-ttl: 86400
infra-host-ttl: 60
infra-lame-ttl: 120
interface: 127.0.0.1
interface: 192.168.5.5
outgoing-interface: 192.168.0.2
access-control: 127.0.0.0/8 allow
access-control: 192.168.5.0/24 allow
do-ip4: yes
do-ip6: no
do-udp: yes
do-tcp: yes
username: unbound
directory: "/etc/unbound"
logfile: "/var/log/unbound.log"
use-syslog: no
hide-version: yes
so-rcvbuf: 4m
so-sndbuf: 4m

Создадим файл логов и назначим права чтобы писались логи:

sudo touch /var/log/unbound.log
sudo chown unbound:unbound /var/log/unbound.log

Перезапустим Unbound чтобы загрузился новый файл конфигурации:

sudo service unbound restart

Убедимся что Unbound запущен:

sudo service unbound status
sudo ps auxw | grep unbound
sudo netstat -anp | grep 53

Опишу несколько параметров из конфигурации:
interface (интерфейсы на которых будет запущен Unbound и будут слушаться запросы)
outgoing-interface (внешний интерфейс через который приходит интернет)
access-control (определяет чьи запросы разрешено обрабатывать)
verbosity (уровень логов от 0 до 4, 4 это debug)
use-syslog: no (не писать логи в syslog)
num-threads (количество потоков, нужно указывать равное количеству ядер процессора)
do-ip4: yes, do-udp: yes, do-tcp: yes (разрешаем IPv4, TCP, UDP)
do-ip6: no (запрещяем IPv6)
username (пользователь, под которым будет запущен Unbound)
hide-version: yes (запретим отображение версии Unbound)

Пример просмотра логов:

sudo tail -f /var/log/syslog
sudo tail -f /var/log/unbound.log

Пример экспорта и импорта кэша:

unbound-control dump_cache > unbound.dump
cat unbound.dump | unbound-control load_cache

Смотрите также мои статьи:
Установка и настройка DNS-сервера BIND9
IPTables правила для DNS

Оставьте комментарий

Добавить комментарий