FreeBSD 10 Bind
Начиная с FreeBSD 10, в базовый состав операционной системы не входит DNS-сервер и его нужно устанавливать из портов отдельно. Этим мы и займемся.
Настройка будет серверная, а потому наш named, как и положено на защищенном сервере, будет резвиться в песочнице и отдавать только свои зоны.
Настройка будет серверная, а потому наш named, как и положено на защищенном сервере, будет резвиться в песочнице и отдавать только свои зоны.
- Использованные версии ПО:
# uname -sr FreeBSD 10.0-STABLE # pkg info | grep bind bind99-9.9.5_12 BIND DNS suite with updated DNSSEC and DNS64 
- Установка
# cd /usr/ports/dns/bin99 # make install clean Настройки: [ ] DOCS Build and/or install documentation [ ] FILTER_AAAA Enable filtering of AAAA records [ ] FIXED_RRSET Enable fixed rrset ordering [ ] GSSAPI GSSAPI support [x] IDN International Domain Names support [x] IPV6 IPv6 protocol support [x] LARGE_FILE 64-bit file support [ ] LINKS Create conf file symlinks in /usr/local [ ] NEWSTATS Enable alternate xml statistics channel format [ ] REPLACE_BASE Replace base BIND (FreeBSD 9.x and earlier) [ ] RPZ_NSDNAME Enable RPZ NSDNAME policy records [ ] RPZ_NSIP Enable RPZ NSIP trigger rules [ ] RPZ_PATCH RPZ improvements [ ] RRL Response Rate Limiting [ ] SIGCHASE dig/host/nslookup will do DNSSEC validation [x] SSL Build with OpenSSL (Required for DNSSEC) [x] THREADS Threading support ???????????????????????? Dynamically Loadable Zones ?????????????????????? [ ] DLZ_POSTGRESQL DLZ Postgres driver [ ] DLZ_MYSQL DLZ MySQL driver (no threading) [ ] DLZ_BDB DLZ BDB driver [ ] DLZ_LDAP DLZ LDAP driver [ ] DLZ_FILESYSTEM DLZ filesystem driver [ ] DLZ_STUB DLZ stub driver 
- Настройка/etc/rc.conf:
named_enable="YES" named_flags="-t /var/named" /var/named — это и есть наша песочница, где named будет жить Делаем песочницу, которая раньше делалась в FreeBSD автоматом # mkdir -p /var/named/usr/local/etc/ # mkdir -p /var/named/var/dump # mkdir -p /var/named/var/run/named # mkdir -p /var/named/var/stats # mv /usr/local/etc/namedb /var/named/usr/local/etc/ # cd /usr/local/etc # ln -s /var/named/usr/local/etc/namedb # cd /var/run # ln -s /var/named/var/run/named последнюю строчку возможно придется вбить после запуска named, если вдруг ругнется на отсутствие файла и не захочет делать ссылку. 
Черновик
/usr/local/etc/namedb/named.conf
acl localnet { 192.168.0.0/22; 127.0.0.1;};.
acl all { any; };
options {
// Запрет отдавать номер версии сервера.
   version none;
// Запрет отдавать имя хоста, на котором работает BIND
   hostname none;
// запрет отдавать запросы об идентификаторе
   server-id none;
// Разрешаем по-умолчанию днс запросы только от доверенных сетей
   allow-query { localnet; };
// Разрешать ли рекурсивные запросы, или отдавать только те зоны, которые держит сам сервак.
   recursion yes;
// Посылка рекурсивных запросов
// разрешена только клиентам подсети
   allow-recursion { localnet; };
// Игнорировать запросы blackhole
// DNS-сервер не посылает запросы к DNS-серверам из этого списка
// и не отвечает на запросы, получаемые от этих серверов.
   blackhole {
      0.0.0.0/8;
      10.0.0.0/8;
      169.254.0.0/16;
      172.16.0.0/12;
      192.0.2.0/24;
      192.168.0.0/16;
      224.0.0.0/4;
      240.0.0.0/4;
   };
};
allow-query: указывает список хостов, которым разрешено запрашивать все зоны name-сервера или конкретную зону внутри name-сервера. allow-recursion: указывает список хостов, которым разрешено создавать рекурсивные запросы к name-серверу для всех зон или для конкретной зоны, обслуживаемой name-сервером. allow-transfer: указывает список хостов, которым разрешено инициировать запросы зонной пересылки к name-серверу для всех зон или для конкретной зоны внутри name-сервера. Данное утверждение обязательно требуется в конфигурации первичного name-сервера. allow-update: указывает список хостов, которым разрешено инициировать запросы динамического обновления. allow-update-forwarding: указывает список хостов, которым разрешено перенаправление запросов динамического обновления (независимо от того, кто является источником запроса). allow-notify: указывает список хостов, с которых можно принимать сообщения DNS NOTIFY, говорящих об изменениях в зонном файле. Данный список относится только к конфигурации вторичного name-сервера. blackhole: указывает список хостов, которые входят в черный список (запрещен доступ) для инициализации любых транзакций с данным name-сервером.
Источник: http://adminunix.ru/freebsd-10-bind/
Добавить комментарий