|
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.
|
Изменения (8)
просмотр истории страницы{toc} |
На текущий момент поддерживаются два DNS-сервера: * unbound * bind (named) |
|
h2. Unbound fakezone generator |
С учётом тенденций роста числа записей в реестре мы рекомендуем использовать для целей фильтрации DNS-запросов Unbound, так как он потребляет значительно меньше оперативной памяти. |
|
Генератор зон Unbound для списка доменов, которые необходимо переадресовывать на страницу-заглушку. |
В случае с bind/named были зафиксированы сбои из-за недостатка оперативной памяти, при числе доменов больше 60 000, а также значительное замедление времени перечитывания конфигурации. |
|
h4. Установка {code} yum -y install unbound mkdir /var/run/unbound unbound-control-setup service unbound restart {code} Обратите внимание, что в конфиге в секции server: должен подключаться файл `/etc/unbound/local.d/reductor.conf`. Это может выглядеть так `include: /etc/unbound/local.d/reductor.conf` или (обычно из коробки) так `include: /etc/unbound/local.d/*.conf`. В случае CentOS 6 установка будет выглядеть следующим образом: {code} yum -y install git git clone https://github.com/carbonsoft/named_fakezone_generator.git /opt/named_fakezone_generator/ cp /opt/named_fakezone_generator/unbound/main.sh.example /opt/named_fakezone_generator/unbound/main.sh {code} h4. Использование Укажите в `/opt/named_fakezone_generator/unbound/main.sh` IP адрес Carbon Reductor. h4. Получение списка доменов Если SSH ключи отсутствуют, генерируем их: {code} ssh-keygen {code} Затем добавляем их на Carbon Reductor: {code} ssh-copy-id root@<ip адрес carbon reductor> {code} Проверяем что scp не запрашивает пароль и выкачивает файл: {code} /opt/named_fakezone_generator/unbound/main.sh {code} Добавляем вызов в Cron. {code} echo '*/20 * * * * root /opt/named_fakezone_generator/unbound/main.sh' > /etc/cron.d/unbound_fakezone_generator {code} h3. Принцип действия * Выкачиваем новый список доменов, которые нужно блокировать * Пытаемся добавить разницу/удалить разблокированные домены с помощью diff_load.sh ** Разница автоматически вычисляется из скачанного файла и используемого в текущий момент /etc/unbound/local.d/reductor.conf ** Добавление и удаление производится через unbound-control local_zone/local_data/local_zone_remove * Если не получилось (нажали ctrl+c или что-то ещё произошло) - вызывается unbound-control reload * Если не вышло и это (например сервер был выключен) - service unbound restart |
Инструкции по настройке DNS-серверов доступны во вложенных в этот раздел статьях. |