63 lines
3.8 KiB
Markdown
63 lines
3.8 KiB
Markdown
Порт генератора сервиса [АнтиЗапрет](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**.
|