24.11. Создание общедоступного сервера DNS с использованием tinydns

Проблема
Под вашим управлением находятся серверы, которые должны быть доступны
для внешнего мира (почта, веб, FTP). Им нужны доменные имена вида www.piter.com,
чтобы пользователи были избавлены от необходимости использовать IP-адре са. Для разрешения этих имен вы хотите настроить собственный сервер DNS.
Сервер BIND слишком сложен, к тому же вокруг ходят слухи о Проблемах
безопасности в BIND. Как бы то ни было, вы выбрали djbdns. Как же настроить
работу сервера?
Решение
Выполните подготовительные действия, описанные в разделе 24.6. Затем выпол ните описанные далее действия для установки и настройки tinydns, авторитетно го сервера DNS из пакета djbdns. Если вы также используете сервер dnscache, его
IP-адрес должен быть отличен от IP-адреса tinydns; это очень важная мера без пасности. Впрочем, при совпадении IP-адресов dnscache и tinydns попросту отка жутся работать.
Установите djbdns так, как описано в разделе 24.7. Создайте двух системных
пользователей с произвольными именами, которые будут являться владельцами
tunydns и dnslog:
# useradd -d /dev/null -s /bin/false tinydns
# useradd -d /dev/null -s /bin/false dnslog
Выполните команду tinydns-conf, чтобы создать каталоги и задать IP-адрес сер вера tinydns. Укажите системных пользователей в следующем порядке:
# tinydns-conf tinydns dnslog /etc/tinydns 208.201.239.36
Создайте стартовую запись в service:
# In -s /etc/tinydns /service
Подождите несколько секунд, затем выполните команду svstat и убедитесь
в том, что сервер стартовал:
# svstat /service/tinydns
/service/tinydns: up (pid 6811) 14 seconds
Если tinydns не будет нормально стартовать, проверьте содержимое журнала
в /etc/tinydns/log/main/current. Там вы узнаете, в чем Проблема.
Теперь можно переходить к созданию хостовых записей. В следующем приме ре для этой цели используются сценарии, входящие в поставку tinydns, а имя до мена pixels.net было зарегистрировано уполномоченной организацией. Допустим,
мы хотим зарегистрировать три хоста, перечисленных в табл. 24.1.
Таблица 24.1. Хосты pixels.net
Адрес Имя Роль Псевдоним
208.201.239.36 parsley DNS, почта
208.201.239.37 sage FTP ftp
208.201.239.38 rosemary Веб-сервер www
Записи создаются следующими командами:
# cd /service/tinydns/root
# ./add-ns pixels.net 208.201.239.36
# ./add-ns .239.201.208.in-addr.arpa 208.201.239.36
# ./add-host parsley.pixels.net 208.201.239.36
# ./add-host sage.pixels.net 208.201.239.37
# ./add-host rosemary.pixels.net 208.201.239.38
# ./add-alias ftp.pixels.net 208.201.239.37
# ./add-alias www.pixels.net 208.201.239.38
# make
Комментарий
Как правило, настройка djbdns осуществляется при помощи конфигурационных
сценариев, а не прямым редактированием файла /etc/tindns/root/data. В пакет
включены следующие сценарии:
О add-host — создание записей А и PTR;
О add-mx — добавление почтового сервера;
О add-ns — добавление сервера имен;
О add-alias — создание записи А без парной записи PTR.
См. также
Создание сервера DNS (http://cr.yp.to/djbdns/ru-server.htmL).