Порт генератора сервиса [АнтиЗапрет](https://antizapret.prostovpn.org/) для OpenWrt ========================================= Генератор dnsmasq.conf файла для указания на использование ipset Данный набор скриптов создает файл dnsmasq.conf со списком сайтов, заблокированных на территории Российской Федерации Роскомнадзором и другими государственными органами, который можно использовать внутри роутера для автоматического тунеллирования заблокированных ресурсов. Помимо основного назначения скрипта (генерации dnsmasq.conf), он также умеет создавать: * Файл клиентской конфигурации (client-config, CCD) с заблокированными диапазонами IP-адресов для OpenVPN; * Файл с заблокированными доменными зонами для Squid; * Файл с заблокированными доменными зонами в LUA-переменной, для использования с DNS-резолвером knot-resolver. ### Зависимости * dnsmasq-full * Bash * cURL * GNU iconv * GNU coreutils-stat * GNU grep * GNU gawk (gawk) * sipcalc * idn * Python 3.6+ * dnspython 2.0.0+ ```sh opkg install bash curl iconv coreutils-stat grep gawk sipcalc idn python3 python3-pip pip install dnspython ``` ### Конфигурационные файлы * **{in,ex}clude-{hosts,ips}-dist** — конфигурация дистрибутива, предназначена для изменения автором репозитория; * **{in,ex}clude-{hosts,ips}-custom** — пользовательская конфигурация, предназначена для изменения конечным пользователем скрипта; * **exclude-regexp-dist.awk** — файл с различным заблокированным «мусором», раздувающим PAC-файл: зеркалами сайтов, неработающими сайтами, и т.д. * **config.sh** — файл с адресами прокси и прочей конфигурацией. ### Установка и запуск 1. Используйте инструкции схожего проекта на https://habr.com/ru/post/440030/ Данный репозиторий лишь дополняет его для использования альтернативного сервиса и метода маршрутизации. Не устанавливайте /etc/init.d/hirkn или запускайте его. В секции про "Ну и последнее — это формирование списков в iptables с помощью ipset:" Замените конфигурацию на: ``` config ipset option name 'vpn_ipsum' option storage 'hash' option match 'dst_ip' option hashsize '5000000' option maxelem '5000000' ``` 2. Замените текущую установку dnsmasq на dnsmasq-full. Изначальная версия не включает поддержку ipset в себя. Если ваш провайдер использует DHCP, вам придется предварительно скачать пакет dnsmasq-full перед его удалением. Вам необходимо указать параметр "conf-dir=/etc/dnsmasq.d" в файле /etc/dnsmasq.conf 3. Склонируйте git-репозиторий 4. Отредактируйте **config/config.sh** 5. Запустите **doall.sh**.