Завершение настройки и проверка
Ограничение доступа к web-интерфейсу по IP-адресу
Из соображений безопасности рекомендуем Вам ограничить доступ к web-интерфйсу по IP-адресу:
iptables -I INPUT -p tcp ! -s <YOUR_IP_ADDRESS> --dport 80 -j DROP
<YOUR_IP_ADDRESS>
- IP-адрес компьютера, с которого Вы будете использовать web-интерфейс.
Первоначальная проверка
- Убедитесь, что сервер SkyDNS Zapret ISP имеет выход в интернет.
С сервера выполните команды ping 8.8.8.8
и ping ya.ru
- эти ресурсы должны быть доступны.
- Проверьте работоспособность локального DNS-сервера:
# На сервере dig @127.0.0.1 yandex.ru
- Проверьте, что работает фильтрующий DNS-сервер:
# На сервере dig @127.0.0.2 <SOME_BLOCKED_DOMAIN> # На клиенте dig @%s.%s.%s.%s <SOME_BLOCKED_DOMAIN>
В ответе будут IP-адреса, с неизменяющимся ttl равным 3600.
- Загрузите источники, используя консольную команду zi-ctl download:
sudo zi-ctl download
Она выполняется несколько минут. На выходе будут сообщения вида:
2018-06-28 12:20:56,697 Downloading module <SRC_NAME> has finished. # Загрузка завершилась успешно 2018-06-28 12:20:57,405 Parsing module <SRC_NAME> has finished. # Загруженные данные были успешно занесены в базу
<SRC_NAME>
- название источника (MJ - для списка Министерства юстиции РФ, RKN - для списка Роскомнадзора)
- Перезапустите сервис zi-update:
sudo supervisorctl restart zi-update
Проверьте, что он работает:
tail -f /var/log/skydns-zi/updater.log
На выходе будет лог, в котором указана текущая скорость разрешения доменных имен и количество успешно/неуспешно разрешенных доменов на текущий момент. Также там должна присутствовать информация о соответствии доменом с IP-адресами:
2018-10-05 11:06:04,812 Host <domain>: ip <ipv4> 2018-10-05 11:06:04,812 Host <domain>: ip <ipv6> 2018-10-05 11:06:04,812 Could not resolve domain <domain> into IPv4/IPv6
- Проверьте настройку маршрутизации:
Если используются протоколы динамической маршрутизации, проверьте их настройки, наличие запущенных демонов, а также установление отношения соседства следующими способами:
Выполните команду service quagga status
и проверьте наличие следующих процессов:
CGroup: /system.slice/quagga.service ├─30266 /usr/lib/quagga/zebra --daemon -A 127.0.0.1 # Основной демон Quagga. ├─30270 /usr/lib/quagga/bgpd --daemon -A 127.0.0.1 # Демон BGP. ├─30274 /usr/lib/quagga/ospfd --daemon -A 127.0.0.1 # Демон OSPF. └─30279 /usr/lib/quagga/watchquagga --daemon zebra bgpd ospfd # Демон мониторинга.
Проверьте, что запущен Exabgp service exabgp status
.
Для проверки состояния BGP-сессии между Exabgp и Quagga выполните команду:
vtysh -E -c "sh ip bgp neighbors"
Для проверки состояния соседей по OSPF выполните команду:
vtysh -E -c "sh ip ospf neighbor"
Проверьте, что маршрутизатор направляет трафик, идущий на IP-адреса запрещенных ресурсов, на систему фильтрации. Это можно сделать, проверив командой tracert
или traceroute
маршрут до какого-либо заблокированного ресурса с компьютера, выступающего в роли компьютера клиента. После выполнения команды, один из промежуточных IP-адресов должен быть адресом SkyDNS Zapret ISP.
- Проверьте правила iptables и списки ipset.
Выполните команды iptables-save
и ipset list
. Убедитесь в правильности правил iptables (предполагаемые правила располагаются в /usr/share/skydns-zi/firewall.conf
) и наличии списков ipset.
- Проверьте, что запущен сервис Squid:
service squid status
Если все шаги пройдены, то система работает корректно.
Дополнительная проверка
После выполнения первоначальной проверки, рекомендуется выполнить проверку утилитой SkyDNS Zapret Check.
Это позволит Вам выявить наличие каких-либо неявных проблем.
Логирование
По умолчанию после установки включен уровень записи в логи DEBUG - подробное отслеживание всего, что происходит в системе. После завершения настройки, в случае, если объем дискового пространства, которым Вы располагаете, меньше 20 Gb, установите уровень записи в логи INFO (логируются основные события - загрузка списков и т.п) или WARNING (только предупреждения и ошибки). Сделать это можно в файле /etc/skydns-zi/config.yml
:
--- loglevel: DEBUG # (DEBUG, INFO, WARNING)
После изменения уровня логирования нужно перезапустить сервисы:
sudo service squid restart sudo supervisorctl restart zi-update
Файлы логов системы фильтрации находятся в папке /var/log/skydns-zi/
. Предназначение файлов в папке /var/log/skydns-zi/
:
- Логи acl пишутся в
acl.log
. - Работу zi-update можно отслеживать в
updater.log
. - Проверять анонс маршрутов можно через
routing.log
. - Всё остальное пишется в
isp-filter.log
.
Файлы логов squid
находятся в папке /var/log/squid/
.
Файлы логов supervisor
, который управляет zi-update
, находятся в папке /var/log/supervisor/
.
Файлы логов uwsgi
(web-интерфейс) находятся в /var/log/uwsgi/
.