- Настройка DNS-сервера BIND
- Материал из Xgu.ru
- Содержание
- [править] Инсталляция DNS-сервера BIND
- [править] Начальное конфигурирование DNS-сервера
- [править] Запуск DNS-сервера
- [править] Настройка DNS-сервера для работы в режиме авторитетного сервера
- [править] Настройка резолвера DNS
- [править] Клиенты DNS. Программа dig
- [править] Обратное преобразование имён
- [править] DNS и DHCP: Динамическое обновление
- [править] BIND в качестве DNS в AD
- Установка и настройка DNS сервера BIND под Windows для разблокировки ЖЖ и Гугла
- Bind windows named conf
- Прямой и обратный DNS.
- Первичные и вторичные серверы имен.
- Конфигурационные файлы BIND
Настройка DNS-сервера BIND
Материал из Xgu.ru
|
Данная страница находится в разработке. Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной. |
Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.
Автор: Сергей Черепенин
Короткий URL: bind
На этой странице описывается процедура инсталляции и настройки DNS-сервера BIND для работы в режиме кэширующего и авторитетного сервера доменных имён.
Содержание
[править] Инсталляция DNS-сервера BIND
Установка сервера в Debian / Ubuntu:
[править] Начальное конфигурирование DNS-сервера
После установки сервера необходимо указать некоторые параметры для работы сервера. Это делается путем редактирования определенных директив в файле /etc/bind/named.conf.options:
Директива directory указывает на расположение в дереве каталогов временных файлов сервера.
Директива forwarders — на какие серверы пересылать запрос, если наш сервер сам не в состоянии определить имя или IP-адрес запроса клиентов.
Директива listen-on указывает на каких интерфейсах вести прослушивание 53 порта.
[править] Запуск DNS-сервера
После редактирования этого файла необходимо рестартовать сервер:
[править] Настройка DNS-сервера для работы в режиме авторитетного сервера
Далее необходимо указать в основном конфигурационном файле сервера /etc/bind/named.conf.local имена файлов, в которых мы далее опишем зоны для прямого и обратного преобразований. Добавляем следующие строки в этот файл:
Файл /etc/bind/db.unix.nt служит для описания зоны прямого преобразования, а файл /etc/bind/db.rev_unix.nt — для обратного
Содержание файла /etc/bind/db.unix.nt:
Содержание файла /etc/bind/db.rev_unix.nt:
Примечание: для быстрого описания всей зоны (254 хоста) можно дать команду в vim:
— для прямой зоны:
— для обратной зоны:
Другой вариант — использование директивы $GENERATE
для реверсной зоны и аналогично для прямой зоны
[править] Настройка резолвера DNS
Резолвер (resolver) — клиентская библиотека DNS, которая используется всеми программами Unix/Linux, которым нужен доступ к доменной системе имён.
Итак, прямое и обратное преобразование работает. На этом настройка DNS сервера завершена. Необходимо только указать операционной системе использовать только что сконфигурированный сервер. Делается это через файл /etc/resolv.conf:
[править] Клиенты DNS. Программа dig
Эти темы не раскрыты: Клиенты DNS. Программа dig
dig — программа, предназначенная для получения информации из DNS. Пришла на смену устаревшей программе nslookup.
Пример использования команды dig:
[править] Обратное преобразование имён
Эти темы не раскрыты: Обратное преобразование имён.
[править] DNS и DHCP: Динамическое обновление
Эти темы не раскрыты: Динамическое обновление.
[править] BIND в качестве DNS в AD
Эти темы не раскрыты: Динамическое обновление.
Установка и настройка DNS сервера BIND под Windows для разблокировки ЖЖ и Гугла
Установка BIND
- Скачайте bind для windows по ссылке — ftp://ftp.isc.org/isc/bind9/9.8.1/BIND9.8.1.zip
- Извлеките содержимое архива в заранее созданную пустую папку и запустите BINDInstall.exe
- Установщик спросит в какую папку установить программу. В своем случае я выбрал «C:\bind». Далее придумайте логин и пароль для сервиса.
Настройка
Сохраните их в указанных папках С:\bind\etc\named.conf C:\bind\zones\db.livejournal.com.txt C:\bind\zones\db.googleusercontent.com.txt
- Запустите командную строку (Пуск — Выполнить — cmd) и выполните по очереди следующие команды
cd С:\bind\bin
rndc-confgen -a
rndc-confgen > ..\etc\rndc.conf
В файле С:\bind\etc\named.conf поменяйте значение поля secret на аналогичное из файла C:\bind\etc\rndc.key
Запуск
- Пуск — Выполнить — services.msc
- Найдите службу ISC Bind и запустите ее
Проверка
- Пропишите в свойствах сетевой карты dns сервер 127.0.0.1
- Наберите в командной строке nslookup ya.ru 127.0.0.1
- Для проверки ЖЖ наберите nslookup megakhuimyak.livejournal.com 127.0.0.1
Если ответ как на картинке значит все ОК
PS
Для того что бы перезапускать bind после правки в конфигурации остановите службу ISC Bind? выполните в командной строке c:\bind\bin\rndc reload и запустите службу снова
Bind windows named conf
Система доменных имен (Domain Name Service, DNS) — одна из тех незаметных, закулисных программ, которым не уделяется и половины того внимания, которого они заслуживают. Многие пользователи никогда не слышали о DNS, однако именно эта система делает Интернет таким, каким мы его знаем. DNS, или служба имен, обеспечивает отображение между именами хостов и IP-адресами. Без DNS веб-броузеру и программам электронной почты не были бы понятны удобные имена вроде www.lissyara.su и пришлось бы набирать числовые IP-адреса, что значительно снизило бы популярность Интернета. Для большинства конечных пользователей нет DNS — нет Интернета. Система DNS необходима всем сервисам Интернета.
Самое популярное программное обеспечение для создания сервера DNS — это BIND(Berkley Internet Name Daemon). На самом деле BIND представляет собой набор инструментов, в состав которого входят такие программы, как host, dig и собственно сервер DNS — named.
Прямой и обратный DNS.
Прямой и обратный DNS — это типы отображения при разрешении имен. Метод прямого преобразования отображает имена хостов в их IP-адреса; он поддерживает псевдонимы и прочие приятные мелочи. Метод обратного преобразования отображает IP-адреса в имена хостов; он не такой гибкий, как метод прямого преобразования. С одним именем хоста может быть связано несколько IP-адресов, но каждый IP-адрес может отображаться только в одно имя хоста.
Первичные и вторичные серверы имен.
Для обслуживания каждого домена требуется по крайней мере два сервера имен. Только один из них может быть первичным, все остальные — вторичные. Первичный (master) сервер имен — последняя авторитетная инстанция для домена. Информацию о домене надо изменять на первичном сервере имен, т.к. именно оттуда эту информацию берет вторичный (slave) сервер. Предполагается, что оба сервера, и первичный и вторичный, являются авторитетными, т.е. окружающий их мир считает, что информация о домене, исходящая от этих серверов, будет верна на все сто процентов.
Конфигурационные файлы BIND
На первичном и вторичном серверах имен используются одни и те же конфигурационные файлы демона службы имен named. В конфигурацию FreeBSD по умолчанию уже входят настройки, необходимые для работы простейшего сервера имен, но чтобы запустить службу имен для собственного домена, вы должны понимать, как она настраивается. Основной каталог с конфигурационными файлами — /var/named/etc/namedb/ или /etc/namedb/ . Последняя является символической ссылкой на первую, здесь вы найдете несколько очень важных файлов.
named.root
Файл named.root должен присутствовать обязательно, и редактировать его не надо. В нем перечислены корневые серверы имен. Когда сервер имен получает запрос информации о сайте, которой нет в его кэше, он обращается к корневым серверам имен. Корневые серверы имен идентифицируются по IP-адресам, и все сообщество Интернета стремиться изменять эти IP-адреса как можно реже. Поэтому данный файл изменяется нечасто.
localhost-forward.db и localhost-reverse.db
Это файлы прямой и обратной зон для хоста localhost на вашем компьютере.
named.conf
Основу конфигурации сервера DNS составляет конфигурационный файл демона named, named.conf. Если в файле named.conf есть ошибки, сервер имен будет неработоспособен. Именно здесь хранятся главные настройки DNS.
Довольно теории. Переходим к практике. У меня на работе появилась необходимость поднять dns-сервер для джабера и локального сайта. Не охота прописывать адреса сервисов в виде ip, вдруг поменяю ip-адрес, потом на 100 компах перенастраивать. Поэтому решил поднимать dns.
Ставить буду на только что установленную систему.
Проверяю версию уже установленного named:
Ищу более новую версию в портах:
Есть более новая версия, вот ее и буду ставить.
Появилось окно конфига. Выбираем опцию REPLACE_BASE , чтобы заменить уже имеющимся в системе версию той, что мы устанавливаем. Все программа установилась, приступаем к ее настройке.
Итак, переходим в директорию /etc/namedb/ и редактируем конфигурационный файл named.conf.
Итак, у нас есть конфигурационный файл, который сообщает демону named, за какой домен тот отвечает и где расположен файл с информацией об этом домене. Но сам этот файл еще надо создать.
В директории /etc/namedb/master/ создаю файл зоны mydomain.local со следующим содержанием:
Немного поясню, что тут написано.
Инструкция $TTL задает время жизни зоны (в сек.). Это значение определяет, как долго другие серверы будут кэшировать информацию об этой зоне:
Следующая запись — Start of Authority (SOA, начало авторитетности).
Тут представлено краткое описание зоны — каково ее поведение и как серверам следует себя с ней вести.
Символ @ — это специальное сокращение для зоны, указанной в named.conf. В моем случае это mydomain.local.
IN представляет тип данных — данные Интернета.
SOA означает запись Start of Authority.
Следующая часть — имя машины. Обратите внимание, что в конце имени стоит точка. Точка ставится для того ,чтобы в конце имени не добавлялась запись домена. Например, если мы не поставим точку в конце имени ns.mydomain.local, то фактическое имя компьютера станет:
Далее следует адрес электронной почты человека, ответственного за эту зону. Первую точку в адресе электронной почты следует рассматривать как заменитель символа @ .
Ну и последнее это название DNS сервера и соответствия имен с IP-адресами:
RNDC – это утилита, позволяющая управлять демоном named. Проста в установке. Запустим команду:
Я буду использовать rndc локально, поэтому достаточно сделанное.
Подготовка к запуску.
Открываем файл /etc/rc.conf (для автозапуска после ребута) и дописываем в него:
named_enable=»YES» named_program=»/usr/sbin/named» named_flags=»-u bind -c /etc/namedb/named.conf» |
Откроем файл /etc/syslog.conf и допишем в него:
!named *.* /var/log/named.log |
Создадим пустой файл /var/log/named.log:
выставим на этот файл права:
Перезапустим процесс syslogd для того чтобы он перечитал конфиг:
смотрим, что у нас в логах:
Если мы видим сообщение похожее на:
loading configuration from ‘/etc/namedb/named.conf’ zone bgap.local/IN: loaded serial 2010021701 zone bgap.local/IN: sending notifies (serial 2010021701) |
значит все сделали правильно.
У меня все запустилось и работает.
P.S. После редактирования файла конфигурации named.conf или файла зон, при перезапуске named появляется такая запись:
Mar 10 08:43:18 named[711]: the working directory is not writable |
Это связано с тем, что при редактировании выше указанных файлов, меняется их владелец с bind на root. Чтобы не появлялась такая запись, нужно сменить владельца:
Теперь все нормально.
Использованная литература:
1.М.Лукас «FreeBSD. Подробное руководство»
McD, 2010-03-22 в 13:53:50
Уместно будет добавить про ACL-и
allow-recursion
allow-transfer
allow-notify
baloon, 2010-03-22 в 14:12:41
Было бы неплохо написать, что такое форвардинг.
Krotchy, 2010-03-22 в 14:30:44
пару слов о view?
В 8ке что бы не было сообщения (если менять, то при каждом перезапуске будет это сообщение, не годится при DDNS, автор можешь исправить)
Mar 10 08:43:18 named[711]: the working directory is not writable
нужно в файле /etc/mtree/BIND.chroot.dist исправить первую строчку на
/set type=dir uname=bind gname=bind mode=0755
И тогда chown & chmod не понадобятся после рестарта сервиса
ни в коем случае не делайте по совету Roman’а
а для зон DDNS лучше пользуйтесь папкой /etc/namedb/dynamic
olenevod, 2010-04-30 в 9:57:42
при первом же перезапуске bind-a владельцы каталога master меняются на root:wheel и снова \»working directory is not writable\»
xinn, 2010-05-04 в 11:53:18
У меня, запущенный named -u bind, ругается на невозможность забиндить 53й порт ни одном из IP’шников.
Как выяснилось, это из-за запрета на бинд портов >loader.conf
Прописываем правило разрешающее слушать udp:53 и tcp:53 для юзера с uid:53.
Замечание: Поскольку набор правил интерпретируется непосредственно ядром, для ID пользователя, группы и номера порта могут быть использованы только числовые значения.
#sysctl security.mac.portacl.rules=»uid:53:tcp:53,uid:53:udp:53″
Чтобы пересобрать ядро с встроенным модулем добавляем
option MAC_PORTACL
в файл конфигурации ядра
так то же делать нельзя:
xinn, 2010-05-04 в 11:53:18
У меня, запущенный named -u bind, ругается на невозможность забиндить 53й порт ни одном из IP’шников.
Как выяснилось, это из-за запрета на бинд портов
2014-07-27, lissyara
gmirror
Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов. 2013-08-20, zentarim
Scan+Print server FreeBSD 9
Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540 2011-11-20, BlackCat
Разъём на WiFi-карту
Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма 2011-09-14, manefesto
Настройка git+gitosis
Настройка системы контроля версия исходного кода в связке git+gitosis+ssh 2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS
Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ 2011-06-15, -ZG-
Охранная система на FreeBSD+LPT
В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией. 2011-03-13, terminus
ng_nat
Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat 2011-02-20, Капитан
Nagios+Digitemp
Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp. 2011-02-17, Le1
Zyxel Configuration
Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл. 2011-02-16, fox
hast carp zfs ucarp cluster
HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления… 2011-02-04, BlackCat
Восстановление ZFS
История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий. 2011-02-03, Капитан
1-Wire
Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp. 2011-01-28, Капитан
Температура в серверной
Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG 2011-01-21, m4rkell
Syslog server
Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк 2011-01-07, lissyara
Canon/gphotofs
Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты. 2010-12-13, Al
IPSec
Описание принципов работы IPSEC и способов аутентификации. 2010-12-07, manefesto
FreeBSD on flash
Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =) 2010-12-05, Fomalhaut
root ZFS, GPT
Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы — ZFS 2010-09-05, Cancer
Настройка аудиоплеера на ximp3
Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к 2010-08-31, Cancer
Установка и настройка OpenVPN
На днях появилась задача — объединить головной офис и 3 филиала в одну сеть через интернет посредством OpenVPN, чтобы люди могли подключаться через RDP к базам 1С на серверах. 2010-08-25, manefesto
freebsd lvm
Использование linux_lvm для работы с LVM разделами из-под FreeBSD. Проблемы которые возники при монтирование lvm раздела 2010-04-30, gonzo111
proftpd file auth"a
Proftpd — квоты и авторизация из файлов, без использования базы данных и/или системных пользователей 2010-04-22, lissyara
tw_cli
Пошаговая инструкция по восстановлению RAID на контроллере 3ware, из которого выпал один диск. Настройка мониторинга состояния рейда и отчётов о его состоянии на email. 2010-04-14, fox
MySQL Master+Master
MySQL (Master Master) and (Master Slave) Как настроить репликацию… 2010-03-09, terminus
DNS zones
Краткий ликбез про управление DNS зонами. Примеры проведения делегирования прямых и обратных DNS зон. 2010-03-09, aspera
Squid+AD (group access)
Настройка прокси сервера SQUID с автроризацией пользователей в AD. Разделение пользователей на группы 2010-03-02, BlackCat
Шлюз: Часть 4
Настройка дополнительных сервисов: синхронизация времени (OpenNTPD), клиент DynDNS.org. 2010-03-01, BlackCat
Шлюз: Часть 3
Настройка DHCP и DNS серверов для работы внутри частной сети, c поддержкой внутренних (частных зон) DNS, а так же интеграция DHCP и DNS сервисов. 2010-03-01, BlackCat
Шлюз: Часть 2
Конфигурация МСЭ pf для проброса портов с изменением порта назначения и без, а так же поддержки активного режима FTP и ограничения максимального размера сегмента 2010-03-01, BlackCat
Шлюз: Часть 1
Быстрая настройка шлюза/маршрутизатора с установлением PPPoE-соединения, поддержкой NAT и DNS-forwarding. 2010-02-23, Morty
darkstat
Простая считалка траффика, со встроенным веб-сервером. Очень маленькая, может делать отчеты трафика по хостам, портам, протоколам, а также строить графики 2010-01-23, gonzo111
squid+sams+sqstat
Пилим squid и sams — примеры конфигов с объяснениями. Установка SqStat. 2009-12-19, schizoid
mpd5 + radius + ng_car + Abills
Настройка pppoe-сервера с биллинговой системой Abills и шейпером ng_car
|
Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.