FreeBSD начиная с версии 5.3 содержит в базовой поставке сервер DNS BIND9. Среди прочих нововведений стоит отметить новые возможности, связанные с безопасностью, новую организацию файлов конфигурации и автоматическое использование опции chroot(8). Первая часть этой главы посвящена обсуждению новых возможностей и их использования, вторая описывает процесс обновления сервера DNS при переходе на FreeBSD 5.3. Мы будем ссылаться на сервер BIND как named(8). Мы подразумеваем, что читатель знаком с терминологией, описываемой в предыдущей главе.
Файлы конфигурации для named в настоящее время располагаются в каталоге /var/named/etc/namedb/ и требуют модификации перед началом использования сервера. Большая часть работы по конфигурации сервера DNS происходит именно в этом каталоге.
Для создания основной зоны перейдите в каталог /var/named/etc/namedb/ и выполните команду
# sh make-localhost
При удачном стечении обстоятельств в каталоге master появится два новых файла: localhost.rev для локального домена и localhost-v6.rev для локальной зоны IPv6. В поставляемом стандартном файле конфигурации named.conf уже есть ссылки на оба файла зон.
Дополнительные домены и поддомены могут быть добавлены как зависимые зоны. В большинстве случаев достаточно просто скопировать файл master/localhost.rev в каталог slave и изменить копию. После изменения файлов зон нужно добавить ссылки на них в основной файл конфигурации named.conf, как в следующем примере для example.com:
zone "example.com" {
type slave;
file "slave/example.com";
masters {
10.0.0.1;
};
};
zone "0.168.192.in-addr.arpa" {
type slave;
file "slave/0.168.192.in-addr.arpa";
masters {
10.0.0.1;
};
};
Отметим, что использованный в этом примере IP адрес является адресом, с которого будут копироваться файлы зон; этот адрес не обязательно является публичным сервером DNS.
Для автоматического запуска даемона named при загрузке системы добавьте в файл стартовой конфигурации rc.conf строку
named_enable="YES"
Есть и другие параметры конфигурации, но эта строка -- минимально необходима. Список параметров можно найти на странице справочника rc.conf(5). Если запуск named не разрешен в rc.conf, сервер можно запустить вручную командой
# /etc/rc.d/named start
FreeBSD автоматически запускает named в ограниченном пространстве chroot(8); кроме того, существует еще несколько средств, помогающих защитить сервис DNS от возможных атак.
Для ограничения доступа к зонам могут применяться списки доступа. Для этого опишите для домена список IP адресов, которым разрешены запросы к содержимому доменной зоны, и используйте имя этого списка в конфигурации зоны. Вот пример описания списка ограничения доступа:
acl "example.com" {
192.168.0.0/24;
};
zone "example.com" {
type slave;
file "slave/example.com";
masters {
10.0.0.1;
};
allow-query { example.com; };
};
zone "0.168.192.in-addr.arpa" {
type slave;
file "slave/0.168.192.in-addr.arpa";
masters {
10.0.0.1;
};
allow-query { example.com; };
};
Разрешать всем запросы о версии вашего DNS сервера может быть не самой лучшей идеей: возможный злоумышленник может воспользоваться ей для выяснения известных ошибок и уязвимостей и применить их вашего сервера.
Внимание: Подмена сообщения о версии не защитит ваш сервер от эксплоитов. Защитить сервер может только обновление до версии, не содержащей известных ошибок.
Для предотвращения этого в раздел options файла конфигурации named.conf можно вписать строку, скрывающую версию сервера:
options {
directory "/etc/namedb";
pid-file "/var/run/named/pid";
dump-file "/var/dump/named_dump.db";
statistics-file "/var/stats/named.stats";
version "None of your business";
};
| Пред. | Начало | След. |
| Domain Name System (DNS) | Уровень выше | Apache HTTP сервер |
Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.