Включение на локальном сервере. Система автоматически определяет ОС локального сервера и поднимает на нем блокировку.
Code Block | ||
---|---|---|
| ||
/usr/abills/libexec/billd netblock |
Mikrotik
Code Block | ||
---|---|---|
| ||
/usr/abills/libexec/billd netblock ACTIVE_BLOCK=1 NAS_TYPE=mikrotik |
Примеры использования
Блокировка по имени домена с использованием unbound
В связке с DNS резолвером unbound возможна как статичное, так и динамическое обновление записей в кеше DNS сервера. После установки и настройки остается только добавить в файл unbound.conf в секции server: следующую строку:
Code Block | ||
---|---|---|
| ||
include: "/usr/abills/var/db/netblock/domain_list" |
Блокировки начнут работать после перезапуска сервера. Шаблон для формирования файла domain_list приведен в примерах настройки. Для того чтобы в дальнейшем не перезагружать сервер, а только вносить изменения в его кеш, нужно в config.pl указать команды для блокировки и разблокировки в параметрах $conf{NETBLOCK_DNS_ADD_CMD} и $conf{NETBLOCK_DNS_ADD_CMD}.
Рестарт unbound $conf{UNBOUND_RESTART}='команда рестарта';
Code Block | ||
---|---|---|
| ||
/usr/abills/libexec/billd netblock ACTIVE_BLOCK=1 TYPE=uablock UNBOUND=1 DOMAIN_REDIRECT=10.0.1.1 |
Проверка
Code Block | ||
---|---|---|
| ||
drill @127.0.0.1 calendar.yandex.ru |
Code Block | ||
---|---|---|
| ||
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 64180
;; flags: qr aa rd ra ; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;; calendar.yandex.ru. IN A
;; ANSWER SECTION:
calendar.yandex.ru. 3600 IN A 10.0.0.1
;; AUTHORITY SECTION:
;; ADDITIONAL SECTION:
;; Query time: 0 msec
;; SERVER: 127.0.0.1
;; WHEN: Tue May 30 17:40:53 2017
;; MSG SIZE rcvd: 52 |
Блокировка по IP с использованием ipfw
Linux
Для блокировки по IP адресу удобно использовать ipset, например так:
В дальнейшем записи в таблицу будут добавляться и удаляться автоматически, без перечитывания правил.
$conf{NETBLOCK_FW_ADD_CMD} | Шаблон команды для блокировки типа «IP» Пример для ipfw: $conf{NETBLOCK_FW_ADD_CMD} = '/sbin/ipset add netblock %IP'; |
---|---|
$conf{NETBLOCK_FW_DEL_CMD} | Шаблон команды для разблокировки типа «IP» Пример для ipfw: $conf{NETBLOCK_FW_DEL_CMD} = '/sbin/ipset del netblock %IP'; |
Запуск обновления
Code Block | ||
---|---|---|
| ||
/usr/abills/libexec/billd netblock TYPE=uablock ACTIVE_BLOCK=1 IPFW_BLOCK=1 |
Включение автоподнятие правил шейпера и блокировки
/etc/rc.conf
Code Block | ||
---|---|---|
| ||
${abills_netblock}="YES" #Включение блокировки
${abills_netblock_redirect_ip}="127.0.0.1"; # Включение редиректа на страницу |
запуск программы авто поднятия
Code Block | ||
---|---|---|
| ||
/etc/init.d/shaper_start.sh start |
FreeBSD
Для блокировки по IP адресу удобно использовать таблицы в ipfw, например так:
Code Block | ||
---|---|---|
| ||
fwcmd="/sbin/ipfw"
nat_interface="igb0"
...
...
${fwcmd} add deny all from any to "table(13)" via ${nat_interface}
cat /usr/abills/var/db/netblock/ip_list |
{
while read ip
do
${fwcmd} table 13 add $ip
done
}
...
... |
В дальнейшем записи в таблицу будут добавляться и удаляться автоматически, без перечитывания правил.
$conf{NETBLOCK_FW_ADD_CMD} | Шаблон команды для блокировки типа «IP» Пример для ipfw: $conf{NETBLOCK_FW_ADD_CMD} = '/sbin/ipfw table 13 add %IP'; |
---|---|
$conf{NETBLOCK_FW_DEL_CMD} | Шаблон команды для разблокировки типа «IP» Пример для ipfw: $conf{NETBLOCK_FW_DEL_CMD} = '/sbin/ipfw table 13 delete %IP'; |
Запуск обновления
Code Block | ||
---|---|---|
| ||
/usr/abills/libexec/billd netblock TYPE=uablock ACTIVE_BLOCK=1 IPFW_BLOCK=1 |
Включение автоподнятие правил шейпера и блокировки
/etc/rc.conf
Code Block | ||
---|---|---|
| ||
${abills_netblock}="YES" #Включение блокировки
${abills_netblock_redirect_ip}="127.0.0.1"; # Включение редиректа на страницу |
запуск программы авто поднятия
Code Block | ||
---|---|---|
| ||
/usr/local/etc/rc.d/shaper_start.sh start |
"Мягкая" блокировка
Данный модуль может быть использован, как для формирования списков для аппаратных решений (DPI), так и для «софтовой» блокировки. Естественно, что владельцы аппаратных решений получают конкурентное преимущество, так как имеют возможность блокировать ресурсы на более высоком уровне(url), а не весь ресурс или IP адрес, на котором может находится, кроме заблокированного, ещё куча сайтов. Как же быть тем, для кого бюджет установки DPI неоправданно высок.
Попытаемся исправить ситуацию. Итак, что мы имеем в записи реестра:
Тип блокировки (IP, domain etc)
IP адрес
URL
Теперь смотрим, по какому алгоритму нас будут проверять:
Тип информации, занесенной в реестр ЕАИС | Действия АС «Ревизор» |
---|---|
Запись содержит только IP-адрес | Проверяется доступность сайта по IP-адресу. При отсутствии доступа по протоколу HTTP происходит запись информации в аварийный журнал о запрете доступа по протоколу http. |
Запись содержит только URLресурса | Происходит резолвинг (resolve) IP-адреса с помощью DNS серверов. Далее происходит отправка HTTP GET запроса на полученные IP-адреса. |
Запись содержит Домен, IP-адрес, URL | Происходит резолвинг (resolve) IP-адреса с помощью DNS серверов. Далее происходит отправка HTTP GET запроса на полученные и внесенные в реестр ЕАИС IP-адреса. |
в разработке …