Автоматическая синхронизация файлов конфигурации master и slave DNS серверов

Published on Март 30, 2009 by   ·   Комментариев нет

Зачем это нужно? best online casinos Для одного из проектов мне потребовалось обеспечить автоматическое распространение DNS зон, прописанных на master dns, slave серверам. Так как зон ожидалось не больше 100-200 мне хотелось сделать максимально простую, но в тоже время безопасную схему синхронизации серверов, без использования LDAP или SQL в качестве backend. В итоге я решил задачу используя shell скрипты, которыми решил поделиться с общественностью. https://www.goldufo.com/mu-legend-redzen-gold Всё нижеописанное работает на OS FreeBSD но должно без проблем работать и в любой другой UNIX OS c BIND в роли DNS. Как это работает Все master зоны на primary dns лежат в отдельной директории (/etc/namedb/master-auto) и названы в формате .db. mu legend zen for sale Например example.com.db, kernel.org.db и т.п. Это важный момент, так как на этом основан алгоритм получения списка доменов (это проще и удобнее чем читать named.conf). Используя протокол SSH клиенты (secondary сервера) запрашивают у primary сервера список доменов и, в случае различий с локальным списком, обновляют конфигурацию. https://www.goldufo.com/mu-legend-redzen-gold Клиентов может быть сколько угодно, обновление происходит по cron, например, раз в 10 минут. cheap mu legend zen Для безопасного транспорта содержимого зон используется TSIG протокол. Конфигурация сервера Как я уже писал выше, primary сервер должен по протоколу SSH отдавать список обслуживаемых доменов. Для этого я завёл пользователя dnssync. Shell данного пользователя будет специально созданный для данной цели sh скрипт. mu legend zen for sale

 # pw user add dnssync -s /home/dnssync/domainlist.sh

Пароль пользователю не нужен, так как для подключения будет использоваться SSH ключ. mu2legendzen.com Теперь создадим сам скрипт:

 mkdir /home/dnssync; chmod 700 /home/dnssync;

vi /home/dnssync/domainlist.sh

 #!/bin/sh export COLUMNS=1 # directory with <zone>.db files cd /etc/namedb/master-auto echo "DOMAINLIST_START" /bin/ls *.db|/usr/bin/sed &#039;s/\.db//&#039; echo "DOMAINLIST_END"

Корректируем права доступа:

 chmod +x /home/dnssync/domainlist.sh

Как видно из текста скрипта, всё что он делает — это получает список файлов в директории, убирает суффикс .db и добавляет к выводу DOMAINLIST_START перед листингом и DOMAINLIST_END в конце вывода. Для проверки запустите /home/dnssync/domainlist.sh — должно быть что-то вроде

 DOMAINLIST_START example.com kernel.org DOMAINLIST_END

Конфигурация клиента Теперь перейдём к настройке secondary DNS. Для начала нам потребуется настроить авторизацию по ключу для подключения к главному серверу. Если ключ ещё не создан, запустим ssh-keygen, указав пустой passphrase. buy mu legend redzen Нам потребуется скопировать публичный ключ (по умолчанию /root/.ssh/id_rsa.pub в FreeBSD) в список авторизованных ключей на главном сервере (в файл /home/dnssync/.ssh/authorized_keys). В этом же файле можно задать IP адрес владельца ключа для большей безопасности.


Смотрите также:

Readers Comments (Комментариев нет)

Comments are closed.



Exchange 2007

Проведение мониторинга Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 3)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ... [+]

Практическое рассмотрение перехода с Exchange 2003 на Exchange 2007 (часть 1)

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 2)

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ... [+]

Мониторинг Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 2)

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ... [+]

Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 5)

Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам: Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1) ... [+]

Установка и настройка Exchange 2007 из командной строки (Часть 3)

If you missed the previous parts in this article series please read: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 1)

Инструмент ExRCA Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями: Тест подключения Outlook 2007 Autodiscover Тест подключения Outlook 2003 RPC ... [+]

Развертывание сервера Exchange 2007 Edge Transport (часть 5)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Развертывание сервера Exchange 2007 Edge Transport (часть 1) Развертывание ... [+]

Установка и настройка Exchange 2007 из командной строки (часть 2)

Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование интегрированных сценариев Using Exchange Server 2007 – часть 2: генерирование отчетов агента Transport AntiSpam Agent

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ... [+]