Table of Contents |
---|
Особенности работы Netblock с DNS блокировкой
Info |
---|
Убедитесь что у вас установлены модули Perl : URI::UTF8::Punycode SOAP::Lite |
Netblock DNS работает с DNS сервером Unbound ( https://nlnetlabs.nl/projects/unbound/ )
Инструкция по настройке самого Unbound - https://nlnetlabs.nl/documentation/unbound/
Netblock в данном случае работает следующим образом :
- скрипт скачивает нужный список бан листа (uablock, rkn aka РосКомНадзор, и т.д.), который заносит в базу биллинга
- генерирует и активирует правила для Unbound DNS
- при внесении в крон, скачивает и перегенерирует правила
- статистика работы отображается в админ-панели > Обслуживание > Netblock
Установка и настройка
устанавливаем модули Perl
Code Block language bash dpkg search utf8_punycode dpkg install $searchresult dpkg search soap_lite dpkg install $searchresult
скачиваем список блокировки
Code Block language bash # UABlock /usr/abills/libexec/billd netblock TYPE=uablock FETCH=1 # Роскомнадзор /usr/abills/libexec/billd netblock TYPE=rkn FETCH=1 # Список ограниченного доступа, BY list (Беларусь) /usr/abills/libexec/billd netblock TYPE=byblock FETCH=1
активируем правила, в данном случае все все ответы пользователям будут возвращаться на 127.0.0.1
Code Block language bash /usr/abills/libexec/billd netblock ACTIVE_BLOCK=1 TYPE=uablock UNBOUND=1 DOMAIN_REDIRECT=127.0.0.1
Для других систем блокировки получить список можно следующим образом :
Роскомнадзор - http://abills.net.ua/wiki/doku.php/abills:docs:modules:netblock:rkn:ru
Беларусь - https://belgie.by/ru/lists_access
Добавляем список хостов для Unbound
nano unbound.confCode Block language bash include: "/usr/abills/var/db/netblock/domain_list"
Проверяем
Code Block language bash unbound-control reload drill @127.0.0.1 calendar.yandex.ru | grep calendar.yandex.ru
Code Block language cpp ;; calendar.yandex.ru. IN A calendar.yandex.ru. 3600 IN A 127.0.0.1
Добавляем в конфиг биллинга дополнительные опции для Netblock
Info В зависимости от системы, unbound может быть установлен в другой директории.
Смотрим так :
which unbound || whereis unbound
Соответсвенно меняем путь для настроек
nano /usr/abills/libexec/config.plCode Block language bash $conf{UNBOUND_RESTART}='/usr/local/sbin/unbound-control reload'; $conf{NETBLOCK_DNS_TPL} = 'local-data: "%NAME A 127.0.0.1"'; $conf{NETBLOCK_DNS_ADD_CMD} = '/usr/local/sbin/unbound-control local_data %NAME A 127.0.0.1'; $conf{NETBLOCK_DNS_DEL_CMD} = '/usr/local/sbin/unbound-control local_data_remove %NAME';