bind (named)

Skip to end of metadata
Go to start of metadata

Генератор зон Bind/Named для списка доменов, которые необходимо переадресовывать на страницу-заглушку.

Это один из способов решения проблемы с фильтрацией ресурсов, меняющих IP адреса. Позволяет абонентам видеть страницу-заглушку при обращении к запрещённому ресурсу.

Bind/Named

Установка

Вся эта схема рассчитана на использование на уже имеющемся и реально используемом абонентами/ревизором DNS-сервере провайдера. Пример установки приведён для целей тестирования, считаем что дистрибутив сервера CentOS 6.

Устанавливать DNS-сервер bind/named на Carbon Reductor не рекомендуется.

yum -y install named
/etc/init.d/named restart

Настройка

В основном конфиге bind/named должен подключаться сгенерированный fakezone файл. В конец файла /etc/named.conf допишите:

include "/etc/named.reductor.zones";

Система генерации зон для DNS-сервера

1. Установка

Нам потребуется git для клонирования репозитория

yum -y install git

Клонируем репозиторий на DNS-сервер в папку /opt/named_fakezone_generator/

git clone https://github.com/carbonsoft/named_fakezone_generator.git /opt/named_fakezone_generator/

2. Настройка

Откройте (если его ещё нет, создайте) конфигурационный файл:

/etc/sysconfig/named_fakezone_generator

В нём укажите следующие значения:

REDUCTOR_IP='10.0.0.1'
REDUCTOR_VERSION='7'

Если в сети используется несколько Carbon Reductor - выберите один любой.

3. Обращение к Carbon Reductor за списком доменов

Если SSH ключи отсутствуют, генерируем их:

ssh-keygen

Затем добавляем их на Carbon Reductor:

ssh-copy-id root@<ip адрес carbon reductor>

Обязательно проверьте, что main.sh отрабатывает при ручном запуске перед автоматическим запуском.

Проверяем что:

  • scp не запрашивает пароль
  • новый файл со списком доменов скачивается
  • и всё это применяется за приемлемое время (менее двух минут)
timeout -s 15 3500s /opt/named_fakezone_generator/main.sh

4. Настройка регулярного обновления

Добавляем задачу для cron: раз в 20 минут обновлять список доменов.

Ограничение по времени выполнения (timeout) сделано с большим запасом в качестве защиты от зависания скрипта.

echo '*/20 * * * * root timeout -s 15 3500s /opt/named_fakezone_generator/main.sh' > /etc/cron.d/named_fakezone_generator

Примечания

Часть описанных действий может выполняться не от пользователя root, в документации используется именно он для простоты примера.

Если самостоятельная настройка схемы для работы от имени непривилегированного пользователя вызывает затруднения - используйте root.

Принцип действия

Список блокируемых зон:

/etc/named.reductor.zones

Файлы зон создаются на каждый блокируемый домен:

/etc/named/reductor_<домен который необходимо редиректить>.conf

Больше подробностей можно узнать непосредственно посмотрев файлы:

  • /opt/named_fakezone_generator/generate_bind_configs.sh
  • /opt/named_fakezone_generator/reductor_named_domain.tmplt.
Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.