Абсолютная честность в изложении помогает максимальной ясности (П. Чалмош).

Как настроить Частные DNS-сервера с BIND на Ubuntu 16.04

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
22 ноября 2017

Просмотров: 247

Как настроить Частные DNS – сервера с BIND на Ubuntu 16.04. BIND (Berkeley Internet Name Domain) является наиболее широко используемым программным обеспечением DNS через Интернет. Пакет BIND доступен для всех дистрибутивов Linux, что делает установку легко и просто. В сегодняшней статье мы покажем вам, как установить, настроить и управлять BIND 9 в качестве частного сервера DNS на Ubuntu 16.04 VPS, в несколько шагов.

Требования:

  • Два сервера (NS1 и NS2), подключенный к частной сети
  • В этой статье мы будем использовать подсети 10.35.0.0/16
  • DNS-клиенты, которые будут подключаться к вашим DNS-серверам

1. Обновите оба сервера

Начните с обновления пакетов на обоих серверах:

2. Установите BIND на обоих серверах

3. Установите BIND в режим IPv4

Установка BIND в режиме IPv4, мы сделаем это путем редактирования файла “/etc/default/bind9” и добавление «-4» к переменной OPTIONS:

 

Отредактированный файл должен выглядеть следующим образом:

 

Теперь давайте настроим ns1, как наш основной сервер DNS.

4. Настройка первичного сервера DNS

Отредактируйте файл named.conf.options:

 

В верхней части блока параметров добавьте новый блок с именем trust. Этот список позволит клиентам, указанным в нем, отправлять рекурсивные DNS-запросы на наш основной сервер:

5. Включить рекурсивные запросы на нашем ns1 сервере, и прослушайте сервер в нашей частной сети

Затем мы добавим несколько параметров конфигурации для включения рекурсивных запросов на нашем ns1 сервере и возможность сервера прослушивать нашу частную сеть, добавьте параметры конфигурации в каталоге “/var/cache/bind”, как в примере ниже:

 

Если директива “listen-on-v6” присутствует в файле named.conf.options, удалите ее, так как мы хотим BIND слушать только на IPv4.
Теперь на ns1 откройте файл named.conf.local для редактирования:

 

Здесь мы собираемся добавить zone:

 

Наша частная подсеть 10.35.0.0/16, поэтому мы добавим обратную zone со следующими строками:

 

Если серверы находятся в нескольких частных подсетей на том же физическом месте, необходимо указать зону и создать отдельный файл zone для каждой подсети.

6. Создание файла обратной зоны

Теперь мы создадим каталог, где мы будем хранить наши файлы зоны:

 

Мы будем использовать пример файла db.local, чтобы сделать наш прямой файл zone, давайте скопируем файл первым:

 

Теперь отредактируйте файл зоны, мы просто скопировали:

 

Это должно выглядеть как на примере ниже:

 

Теперь давайте отредактируем запись SOA. Заменим Localhost на доменное имя вашего Ns1 сервера, а затем заменим «root.localhost» на «admin.test.example.ru». Каждый раз, когда вы редактируете файл zone, увеличьте серийное значение перед перезапуском имени иначе привязка не будет применять изменение к zone, мы увеличим значение до “3”, это должно выглядеть примерно так:

 

Затем удалите последние три записи, помеченные как «delete this» после записи SOA.

Добавьте записи серверов имен в конце файла:

 

После этого добавить записи для хостов, которые должны находиться в этой зоне. Это означает, что любой сервер, имя которого мы хотим закончить на «.test.example.ru»:

 

Файл db.test.example.ru должен выглядеть следующим образом:

7. Создание файла обратной зоны

Зададим записи PTR для обратных DNS-запросов в файлах обратных зон. Когда сервер DNS получает запрос подстановок PTR для примера для IP: «10.35.55.154», он будет проверять обратный файл зоны для извлечения полного доменного имени IP-адреса, в нашем случае это будет «host1.test.example.ru».

Мы создадим обратную файл zone для каждой обратной зоны, указанной в файле named.conf.local, который мы создали для ns1. Мы будем использовать файл зоны db.127 как образец для того чтобы создать наш обратный файл zone:

 

Отредактируйте файл обратной зоны, чтобы он соответствовал обратной зоне, определенной в named.conf.local:

 

Исходный файл должен выглядеть следующим образом:

 

Вы должны изменить запись SOA и увеличивать серийное значение. Это должно выглядеть примерно так:

 

Затем удалите последние три записи, помеченные «delete this» после записи SOA.

Добавьте записи серверов имен в конце файла:

 

Теперь добавить ptr-записи для всех узлов, которые находятся в одной подсети в файл зоны, который вы создали. Он состоит из наших хостов, которые находятся в подсети 10.20.0.0/16. В первой колонке мы изменим порядок последние два октета IP-адреса узла, которые мы хотим добавить:

 

Сохранить и выйти из обратного файла зоны.

Файл обратной zone «/etc/bind/zones/db.10.35» должен выглядеть следующим образом:

8. Проверьте файлы конфигурации

Используйте следующую команду, чтобы проверить синтаксис конфигурации всех файлов named.conf, которые мы сконфигурировали:

 

Если файлы конфигурации не имеют каких-либо проблем синтаксиса, вывод не будет содержать каких-либо сообщений об ошибках. Однако, если у вас есть проблемы с файлами конфигурации, сравните параметры в раздела  «Настройка основного DNS-сервера» с файлами, если у вас есть ошибки, сделайте правильные корректировки, и вы можете попробовать еще раз, выполнив команду named-checkconf.

named-checkconf может быть использован для проверки правильности конфигурации ваших файлов зон. Вы можете использовать следующую команду, чтобы проверить зону напрямую «test.example.ru»:

 

И если вы хотите проверить конфигурацию обратной zone, выполните следующую команду:

 

После того, как вы правильно настроили файлы конфигурации и zone, перезапустите службу BIND:

9. Настройка вторичного DNS-сервера

Настройка вторичного сервера DNS всегда хорошая идея, так как он будет служить в качестве перехода на другой ресурс и будет отвечать на запросы, если первичный сервер не отвечает на запросы.

На ns2, отредактировать файл named.conf.options:

 

В верхней части файла, добавьте ACL с частными IP-адресами для всех ваших доверенных серверов:

 

Так же, как в файле named.conf.options для ns2, добавьте следующие строки в директиве каталог “/var/cache/bind”:

 

Сохраните и закройте файл.

Теперь откройте файл named.conf.local для редактирования:

 

Теперь мы должны указать ведомые зону, соответствующие мастер-зоне на сервере DNS ns1. Директива мастера должна быть установлена на частный IP-адрес DNS Ns1 сервер:

 

Теперь сохраните и закройте файл.

Используйте следующую команду, чтобы проверить синтаксис конфигурационных файлов:

 

Затем перезапустить службу BIND:

10. Конфигурирование DNS-клиентов

Теперь настроим хосты в нашей 10.35.0.0/16 подсети использовать NS1 и NS2 сервера в качестве основных и вторичных серверов DNS. Это в значительной степени зависит от операционной системы, но для большинства дистрибутивов Linux настройки, которые должны быть изменены постоянно находиться в файле /etc/resolv.conf.

Как правило, на распределениях Ubuntu, Debian и CentOS просто отредактируйте файл /etc/resolv.conf, выполните следующую команду как root:

 

Затем замените существующие сервера имен на:

 

Теперь сохраните и закройте файл и клиент должен быть настроен на использование сервера имен NS1 и NS2.

Затем проверьте, как ваши клиенты могут отправлять запросы к DNS-серверам, которые вы только что настроили:

 

Вывод этой команды должен быть следующим:

 

Вы также можете проверить обратный поиск, запрашивая DNS-сервер с IP-адресом хоста:

 

Вывод должен выглядеть следующим образом:

Проверьте правильность решения всех узлов с помощью приведенных выше команд, если это означает, что все настроено правильно.

Добавление нового хоста в DNS-сервера

Если вам нужно добавить хост в DNS-сервера, просто выполните следующие действия:

На сервере ns1 имен выполните следующие действия:

  • Создание записи A в файле передней зоны для хоста и увеличение значения последовательных переменных.
  • Создание записи PTR в обратном файле зоны для хоста и увеличение значения последовательных переменных.
  • Добавить частного IP-адреса хоста в доверенном ACL в named.conf.options.
  • Обновить BIND с помощью следующей команды: sudo service bind9 reload

На сервере ns2 имен выполните следующие действия:

  • Добавить частный IP-адрес хоста в доверенном ACL в named.conf.options.
  • Обновить BIND с помощью следующей команды: sudo service bind9 reload

На хост-компьютере выполните следующие действия:

  • Отредактируйте /etc/resolv.conf и измените сервер имен для вашего DNS-серверов.
  • Используйте nslookup, чтобы проверить, что хост запрашивает DNS-серверы.

Удаление существующего хоста из ваших DNS-серверов

Если вы хотите удалить узел из ваших DNS-серверов, просто отмените шаги, описанные выше.

Примечание:
Пожалуйста, замените имя и IP-адрес, используемые в данном руководстве на имена и IP-адреа хостов в вашей собственной частной сети.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Если статья понравилась, то поделитесь ей в социальных сетях:

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

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

ПОИГРАЙ, РАССЛАБЬСЯ

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close