mirror of
https://github.com/bol-van/zapret.git
synced 2025-01-19 04:32:22 +03:00
Update readme.md OpenWrt
change all repeats in text to correct registr
This commit is contained in:
parent
29ab747e5b
commit
502e34a96d
@ -74,7 +74,7 @@ zapret является свободным и open source.
|
|||||||
обойти блокировки или замедление сайтов HTTP(S), сигнатурный анализ TCP и UDP протоколов, например, с целью блокировки
|
обойти блокировки или замедление сайтов HTTP(S), сигнатурный анализ TCP и UDP протоколов, например, с целью блокировки
|
||||||
VPN.
|
VPN.
|
||||||
|
|
||||||
Проект нацелен прежде всего на маломощные embedded устройства - роутеры, работающие под OpenWRT. Поддерживаются
|
Проект нацелен прежде всего на маломощные embedded устройства - роутеры, работающие под OpenWrt. Поддерживаются
|
||||||
традиционные Linux-системы, FreeBSD, OpenBSD, частично macOS. В некоторых случаях возможна самостоятельная прикрутка
|
традиционные Linux-системы, FreeBSD, OpenBSD, частично macOS. В некоторых случаях возможна самостоятельная прикрутка
|
||||||
решения к различным прошивкам.
|
решения к различным прошивкам.
|
||||||
|
|
||||||
@ -263,7 +263,7 @@ dvtws, собираемый из тех же исходников (см. [док
|
|||||||
`net.netfilter.nf_conntrack_checksum=1` заставляет conntrack проверять tcp и udp чексуммы входящих пакетов и
|
`net.netfilter.nf_conntrack_checksum=1` заставляет conntrack проверять tcp и udp чексуммы входящих пакетов и
|
||||||
выставлять state INVALID для пакетов с инвалидной суммой. Обычно в правилах iptables вставляется правило для дропа
|
выставлять state INVALID для пакетов с инвалидной суммой. Обычно в правилах iptables вставляется правило для дропа
|
||||||
пакетов с состоянием INVALID в цепочке FORWARD. Совместное сочетание этих факторов приводит к непрохождению badsum
|
пакетов с состоянием INVALID в цепочке FORWARD. Совместное сочетание этих факторов приводит к непрохождению badsum
|
||||||
через такой роутер. В openwrt из коробки `net.netfilter.nf_conntrack_checksum=0`, в других роутерах часто нет, и не
|
через такой роутер. В OpenWrt из коробки `net.netfilter.nf_conntrack_checksum=0`, в других роутерах часто нет, и не
|
||||||
всегда это можно изменить. Чтобы nfqws мог работать через роутер, нужно на нем выставить указанное значение sysctl в 0.
|
всегда это можно изменить. Чтобы nfqws мог работать через роутер, нужно на нем выставить указанное значение sysctl в 0.
|
||||||
nfqws на самом роутере будет работать и без этой настройки, потому что чексумма локально созданных пакетов не
|
nfqws на самом роутере будет работать и без этой настройки, потому что чексумма локально созданных пакетов не
|
||||||
проверяется никогда. Если роутер за другим NAT, например провайдерским, и он не пропускает invalid packets вы ничего
|
проверяется никогда. Если роутер за другим NAT, например провайдерским, и он не пропускает invalid packets вы ничего
|
||||||
@ -566,7 +566,7 @@ ipv6 : Нет способа для приложения гарантирова
|
|||||||
Чтобы не загромождать описание, смотрите пример решения этой проблемы в `blockcheck.sh`.
|
Чтобы не загромождать описание, смотрите пример решения этой проблемы в `blockcheck.sh`.
|
||||||
|
|
||||||
Иногда требуется подгружать модуль `ip6table_raw` с параметром `raw_before_defrag=1`.
|
Иногда требуется подгружать модуль `ip6table_raw` с параметром `raw_before_defrag=1`.
|
||||||
В openwrt параметры модулей указываются через пробел после их названий в файлах `/etc/modules.d`.
|
В OpenWrt параметры модулей указываются через пробел после их названий в файлах `/etc/modules.d`.
|
||||||
В традиционных системах посмотрите используется ли `iptables-legacy` или `iptables-nft`. Если legacy, то нужно создать файл
|
В традиционных системах посмотрите используется ли `iptables-legacy` или `iptables-nft`. Если legacy, то нужно создать файл
|
||||||
`/etc/modprobe.d/ip6table_raw.conf` с содержимым :
|
`/etc/modprobe.d/ip6table_raw.conf` с содержимым :
|
||||||
```
|
```
|
||||||
@ -740,10 +740,10 @@ iptables могут не работать. При включенном offloadin
|
|||||||
DNAT/REDIRECT (tpws). Эти соединения исключаются из offloading. Однако, остальные соединения идут через SFO, потому
|
DNAT/REDIRECT (tpws). Эти соединения исключаются из offloading. Однако, остальные соединения идут через SFO, потому
|
||||||
NFQUEUE будет срабатывать только до помещения соединения в flowtable. Практически это означает, что почти весь функционал nfqws работать не будет.
|
NFQUEUE будет срабатывать только до помещения соединения в flowtable. Практически это означает, что почти весь функционал nfqws работать не будет.
|
||||||
Offload включается через специальный target в iptables `FLOWOFFLOAD`. Не обязательно пропускать весь трафик через offload. Можно исключить из
|
Offload включается через специальный target в iptables `FLOWOFFLOAD`. Не обязательно пропускать весь трафик через offload. Можно исключить из
|
||||||
offload соединения, которые должны попасть на tpws или nfqws. openwrt не предусматривает выборочного управления offload.
|
offload соединения, которые должны попасть на tpws или nfqws. OpenWrt не предусматривает выборочного управления offload.
|
||||||
Поэтому скрипты zapret поддерживают свою систему выборочного управления offload в openwrt.
|
Поэтому скрипты zapret поддерживают свою систему выборочного управления offload в OpenWrt.
|
||||||
|
|
||||||
iptables target `FLOWOFFLOAD` - это проприетарное изобретение openwrt.
|
iptables target `FLOWOFFLOAD` - это проприетарное изобретение OpenWrt.
|
||||||
Управление offload в nftables реализовано в базовом ядре linux без патчей.
|
Управление offload в nftables реализовано в базовом ядре linux без патчей.
|
||||||
|
|
||||||
|
|
||||||
@ -1457,7 +1457,7 @@ UNBLOCKED_DOM - незаблокированный домен, который и
|
|||||||
`SECURE_DNS=1 SKIP_TPWS=1 CURL_MAX_TIME=1 CURL=/tmp/curl ./blockcheck.sh`
|
`SECURE_DNS=1 SKIP_TPWS=1 CURL_MAX_TIME=1 CURL=/tmp/curl ./blockcheck.sh`
|
||||||
|
|
||||||
**СКАН ПОРТОВ**\
|
**СКАН ПОРТОВ**\
|
||||||
Если в системе присутствует совместимый `netcat` (ncat от nmap или openbsd ncat. в openwrt по умолчанию нет),
|
Если в системе присутствует совместимый `netcat` (ncat от nmap или openbsd ncat. в OpenWrt по умолчанию нет),
|
||||||
то выполняется сканирование портов http или https всех IP адресов домена.
|
то выполняется сканирование портов http или https всех IP адресов домена.
|
||||||
Если ни один IP не отвечает, то результат очевиден. Можно останавливать сканирование.
|
Если ни один IP не отвечает, то результат очевиден. Можно останавливать сканирование.
|
||||||
Автоматически оно не остановится, потому что netcat-ы недостаточно подробно информируют о причинах ошибки.
|
Автоматически оно не остановится, потому что netcat-ы недостаточно подробно информируют о причинах ошибки.
|
||||||
@ -1564,7 +1564,7 @@ curl: (28) Connection timed out after 2002 milliseconds
|
|||||||
|
|
||||||
На linux системах можно выбрать использовать `iptables` или `nftables`.
|
На linux системах можно выбрать использовать `iptables` или `nftables`.
|
||||||
По умолчанию на традиционных linux выбирается `nftables`, если установлен nft.
|
По умолчанию на традиционных linux выбирается `nftables`, если установлен nft.
|
||||||
На openwrt по умолчанию выбирается `nftables` на новых версиях с firewall4.
|
На OpenWrt по умолчанию выбирается `nftables` на новых версиях с firewall4.
|
||||||
|
|
||||||
`FWTYPE=iptables`
|
`FWTYPE=iptables`
|
||||||
|
|
||||||
@ -1775,11 +1775,11 @@ LISTS_RELOAD="pfctl -f /etc/pf.conf"
|
|||||||
LISTS_RELOAD=-
|
LISTS_RELOAD=-
|
||||||
```
|
```
|
||||||
|
|
||||||
В openwrt существует сеть по умолчанию 'lan'. Только трафик с этой сети будет перенаправлен на tpws.
|
В OpenWrt существует сеть по умолчанию 'lan'. Только трафик с этой сети будет перенаправлен на tpws.
|
||||||
Но возможно задать другие сети или список сетей:\
|
Но возможно задать другие сети или список сетей:\
|
||||||
`OPENWRT_LAN="lan lan2 lan3"`
|
`OPENWRT_LAN="lan lan2 lan3"`
|
||||||
|
|
||||||
В openwrt в качестве wan берутся интерфейсы, имеющие default route. Отдельно для ipv4 и ipv6.
|
В OpenWrt в качестве wan берутся интерфейсы, имеющие default route. Отдельно для ipv4 и ipv6.
|
||||||
Это можно переопределить:
|
Это можно переопределить:
|
||||||
```
|
```
|
||||||
OPENWRT_WAN4="wan4 vpn"
|
OPENWRT_WAN4="wan4 vpn"
|
||||||
@ -1789,7 +1789,7 @@ OPENWRT_WAN6="wan6 vpn6"
|
|||||||
Параметр INIT_APPLY_FW=1 разрешает init скрипту самостоятельно применять правила iptables.\
|
Параметр INIT_APPLY_FW=1 разрешает init скрипту самостоятельно применять правила iptables.\
|
||||||
При иных значениях или если параметр закомментирован, правила применены не будут.\
|
При иных значениях или если параметр закомментирован, правила применены не будут.\
|
||||||
Это полезно, если у вас есть система управления фаерволом, в настройки которой и следует прикрутить правила.\
|
Это полезно, если у вас есть система управления фаерволом, в настройки которой и следует прикрутить правила.\
|
||||||
На openwrt неприменимо при использовании firewall3+iptables.
|
На OpenWrt неприменимо при использовании firewall3+iptables.
|
||||||
|
|
||||||
***Следующие настройки не актуальны для openwrt:***
|
***Следующие настройки не актуальны для openwrt:***
|
||||||
|
|
||||||
@ -1843,7 +1843,7 @@ _Для `nftables` предусмотрено несколько дополни
|
|||||||
|
|
||||||
Обновить set-ы интерфейсов, относящихся к lan, wan и wan6.
|
Обновить set-ы интерфейсов, относящихся к lan, wan и wan6.
|
||||||
Для традиционных linux список интерфейсов берется из переменных конфига IFACE_LAN, IFACE_WAN.
|
Для традиционных linux список интерфейсов берется из переменных конфига IFACE_LAN, IFACE_WAN.
|
||||||
Для openwrt определяется автоматически. Множество lanif может быть расширено параметром OPENWRT_LAN.
|
Для openwrt определяется автоматически. Множество lanif может быть расширено параметром OpenWrt_LAN.
|
||||||
Все интерфейсы lan и wan так же добавляются в ingress hook от flow table.\
|
Все интерфейсы lan и wan так же добавляются в ingress hook от flow table.\
|
||||||
`/opt/zapret/init.d/sysv/zapret reload_ifsets`
|
`/opt/zapret/init.d/sysv/zapret reload_ifsets`
|
||||||
|
|
||||||
@ -1895,7 +1895,7 @@ zapret_custom_firewall_v6
|
|||||||
|
|
||||||
zapret_custom_daemons поднимает демоны **nfqws**/**tpws** в нужном вам количестве и с нужными вам параметрами.
|
zapret_custom_daemons поднимает демоны **nfqws**/**tpws** в нужном вам количестве и с нужными вам параметрами.
|
||||||
В первом параметре передается код операции: 1 = запуск, 0 = останов.
|
В первом параметре передается код операции: 1 = запуск, 0 = останов.
|
||||||
Схема запуска демонов в openwrt отличается - используется procd.
|
Схема запуска демонов в OpenWrt отличается - используется procd.
|
||||||
Поэтому логика останова отсутствует за ненадобностью, останов никогда не вызывается.
|
Поэтому логика останова отсутствует за ненадобностью, останов никогда не вызывается.
|
||||||
|
|
||||||
zapret_custom_firewall поднимает и убирает правила `iptables`.
|
zapret_custom_firewall поднимает и убирает правила `iptables`.
|
||||||
@ -1937,7 +1937,7 @@ zapret_custom_firewall_nft поднимает правила nftables.
|
|||||||
## Простая установка
|
## Простая установка
|
||||||
|
|
||||||
`install_easy.sh` автоматизирует ручные варианты процедур установки.
|
`install_easy.sh` автоматизирует ручные варианты процедур установки.
|
||||||
Он поддерживает OpenWRT, linux системы на базе systemd или openrc и MacOS.
|
Он поддерживает OpenWrt, linux системы на базе systemd или openrc и MacOS.
|
||||||
|
|
||||||
Для более гибкой настройки перед запуском инсталлятора следует выполнить раздел "Выбор параметров".
|
Для более гибкой настройки перед запуском инсталлятора следует выполнить раздел "Выбор параметров".
|
||||||
|
|
||||||
@ -1954,7 +1954,7 @@ zapret_custom_firewall_nft поднимает правила nftables.
|
|||||||
|
|
||||||
`install_easy.sh make`
|
`install_easy.sh make`
|
||||||
|
|
||||||
Под openwrt все уже сразу готово для использования системы в качестве роутера.
|
Под OpenWrt все уже сразу готово для использования системы в качестве роутера.
|
||||||
Имена интерфейсов WAN и LAN известны из настроек системы.
|
Имена интерфейсов WAN и LAN известны из настроек системы.
|
||||||
Под другими системами роутер вы настраиваете самостоятельно. Инсталлятор в это не вмешивается.
|
Под другими системами роутер вы настраиваете самостоятельно. Инсталлятор в это не вмешивается.
|
||||||
инсталлятор в зависимости от выбранного режима может спросить LAN и WAN интерфейсы.
|
инсталлятор в зависимости от выбранного режима может спросить LAN и WAN интерфейсы.
|
||||||
@ -2087,7 +2087,7 @@ chcon u:object_r:system_file:s0 /data/local/tmp/zapret/tpws
|
|||||||
Работа blockcheck в android shell не поддерживается, но имея рута можно развернуть rootfs какого-нибудь дистрибутива linux.
|
Работа blockcheck в android shell не поддерживается, но имея рута можно развернуть rootfs какого-нибудь дистрибутива linux.
|
||||||
Это лучше всего делать с компа через adb shell.
|
Это лучше всего делать с компа через adb shell.
|
||||||
Если компа нет, то развертка chroot - единственный вариант, хотя и неудобный.
|
Если компа нет, то развертка chroot - единственный вариант, хотя и неудобный.
|
||||||
Подойдет что-то легковесное, например, alpine или даже openwrt.
|
Подойдет что-то легковесное, например, alpine или даже OpenWrt.
|
||||||
Если это не эмулятор android, то универсальная архитектура - arm (любой вариант).
|
Если это не эмулятор android, то универсальная архитектура - arm (любой вариант).
|
||||||
Если вы точно знаете, что ОС у вас 64-разрядная, то лучше вместо arm - aarch64.
|
Если вы точно знаете, что ОС у вас 64-разрядная, то лучше вместо arm - aarch64.
|
||||||
Выяснить архитектуру можно командой `uname -a`.
|
Выяснить архитектуру можно командой `uname -a`.
|
||||||
@ -2231,10 +2231,10 @@ entware содержит репозиторий user-mode компонент, к
|
|||||||
|
|
||||||
_Подробное описание настроек для других прошивок выходит за рамки данного проекта._
|
_Подробное описание настроек для других прошивок выходит за рамки данного проекта._
|
||||||
|
|
||||||
Openwrt является одной из немногих относительно полноценных linux систем для embedded devices.
|
OpenWrt является одной из немногих относительно полноценных linux систем для embedded devices.
|
||||||
Она характеризуется следующими вещами, которые и послужили основой выбора именно этой прошивк:
|
Она характеризуется следующими вещами, которые и послужили основой выбора именно этой прошивк:
|
||||||
* полный root доступ к девайсу через shell. на заводских прошивках чаще всего отсутствует, на многих альтернативных есть
|
* полный root доступ к девайсу через shell. на заводских прошивках чаще всего отсутствует, на многих альтернативных есть
|
||||||
* корень r/w. это практически уникальная особенность openwrt. заводские и большинство альтернативных прошивок
|
* корень r/w. это практически уникальная особенность OpenWrt. заводские и большинство альтернативных прошивок
|
||||||
построены на базе squashfs root (r/o), а конфигурация хранится в специально отформатированной области
|
построены на базе squashfs root (r/o), а конфигурация хранится в специально отформатированной области
|
||||||
встроенной памяти, называемой nvram. не имеющие r/w корня системы сильно кастрированы. они не имеют
|
встроенной памяти, называемой nvram. не имеющие r/w корня системы сильно кастрированы. они не имеют
|
||||||
возможности доустановки ПО из репозитория без специальных вывертов и заточены в основном
|
возможности доустановки ПО из репозитория без специальных вывертов и заточены в основном
|
||||||
@ -2255,7 +2255,7 @@ Openwrt является одной из немногих относительн
|
|||||||
|
|
||||||
Если не работает автономный обход, приходится перенаправлять трафик через сторонний хост.
|
Если не работает автономный обход, приходится перенаправлять трафик через сторонний хост.
|
||||||
Предлагается использовать прозрачный редирект через socks5 посредством `iptables+redsocks`, либо `iptables+iproute+vpn`.
|
Предлагается использовать прозрачный редирект через socks5 посредством `iptables+redsocks`, либо `iptables+iproute+vpn`.
|
||||||
Настройка варианта с redsocks на openwrt описана в [redsocks.txt](./redsocks.txt).
|
Настройка варианта с redsocks на OpenWrt описана в [redsocks.txt](./redsocks.txt).
|
||||||
Настройка варианта с `iproute+wireguard` - в [wireguard_iproute_openwrt.txt](./wireguard_iproute_openwrt.txt).
|
Настройка варианта с `iproute+wireguard` - в [wireguard_iproute_openwrt.txt](./wireguard_iproute_openwrt.txt).
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user