mirror of
https://github.com/bol-van/zapret.git
synced 2024-11-30 05:50:53 +03:00
readme: multiple custom docs
This commit is contained in:
parent
38fda46b74
commit
ff85cd8c0c
@ -317,3 +317,9 @@ nfqws: multi-strategy
|
|||||||
v63:
|
v63:
|
||||||
|
|
||||||
tpws: multi-strategy
|
tpws: multi-strategy
|
||||||
|
|
||||||
|
v64:
|
||||||
|
|
||||||
|
blockcheck: warn if dpi bypass software is already running
|
||||||
|
blockcheck: TPWS_EXTRA, NFQWS_EXTRA
|
||||||
|
init.d: multiple custom scripts
|
||||||
|
@ -1572,18 +1572,42 @@ nfset-ы принадлежат только одной таблице, след
|
|||||||
Вариант custom
|
Вариант custom
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
custom код вынесен в отдельный shell include
|
custom код вынесен в отдельные shell includes.
|
||||||
|
Поддерживается старый вариант в
|
||||||
/opt/zapret/init.d/sysv/custom
|
/opt/zapret/init.d/sysv/custom
|
||||||
или
|
|
||||||
/opt/zapret/init.d/openwrt/custom
|
/opt/zapret/init.d/openwrt/custom
|
||||||
|
/opt/zapret/init.d/macos/custom
|
||||||
|
Он считается устаревшим. Актуальный вариант - помещать отдельные скрипты там же, но в директорию "custom.d".
|
||||||
|
Она будет просканирована стандартным образом, т.е. в алфавитном порядке, и каждый скрипт будет применен.
|
||||||
|
Рядом имеется "custom.d.examples". Это готовые скрипты, который можно копировать в "custom.d".
|
||||||
|
Особо стоит отметить "10-inherit-*". Они наследуют стандартные режимы nfqws/tpws/tpws-socks.
|
||||||
|
Полезно, чтобы не писать код заново. Достаточно лишь скопировать соответствующий файл.
|
||||||
|
|
||||||
Нужно свой код вписать в функции :
|
Для linux пишется код в функции
|
||||||
zapret_custom_daemons
|
zapret_custom_daemons
|
||||||
zapret_custom_firewall
|
zapret_custom_firewall
|
||||||
zapret_custom_firewall_nft
|
zapret_custom_firewall_nft
|
||||||
|
|
||||||
В файле custom пишите ваш код, пользуясь хелперами из "functions" или "zapret".
|
Для macos
|
||||||
Смотрите как там сделано добавление iptables или запуск демонов.
|
zapret_custom_daemons
|
||||||
|
zapret_custom_firewall_v4
|
||||||
|
zapret_custom_firewall_v6
|
||||||
|
|
||||||
|
zapret_custom_daemons поднимает демоны nfqws/tpws в нужном вам количестве и с нужными вам параметрами.
|
||||||
|
Особо обратите внимание на номер демона в функциях "run_daemon" и "do_daemon".
|
||||||
|
Они должны быть уникальными во всех скриптах. При накладке будет ошибка.
|
||||||
|
Так же следует избегать пересечения номеров портов tpws и очередей nfqws.
|
||||||
|
При пересечении какой-то из демонов не запустится.
|
||||||
|
Чтобы как-то нивелировать эту проблему, в examples используется переменная DNUM.
|
||||||
|
На ее базе считается диапазон номеров очередей (5 шт), которые использует этот скрипт.
|
||||||
|
При таком подходе достаточно, чтобы DNUM был везде уникален.
|
||||||
|
Поскольку номера очереди и портов имеют нумерацию до 65536, можно использовать DNUM до 13106.
|
||||||
|
Однако, следует оставить номера очереди 200-299 для стандартных режимов и не использовать их.
|
||||||
|
|
||||||
|
custom скрипты могут использовать переменные из config. Можно помещать в config свои переменные
|
||||||
|
и использовать их в скриптах.
|
||||||
|
Можно использовать функции-хелперы. Они являются частью общего пространства функций shell.
|
||||||
|
Полезные функции можно взять из примеров скриптов. Так же смотрите "common/*.sh".
|
||||||
Используя хелпер функции, вы избавитесь от необходимости учитывать все возможные случаи
|
Используя хелпер функции, вы избавитесь от необходимости учитывать все возможные случаи
|
||||||
типа наличия/отсутствия ipv6, является ли система роутером, имена интерфейсов, ...
|
типа наличия/отсутствия ipv6, является ли система роутером, имена интерфейсов, ...
|
||||||
Хелперы это учитывают, вам нужно сосредоточиться лишь на фильтрах {ip,nf}tables и
|
Хелперы это учитывают, вам нужно сосредоточиться лишь на фильтрах {ip,nf}tables и
|
||||||
@ -1593,13 +1617,12 @@ zapret_custom_firewall_nft
|
|||||||
Запуск это или остановка передается в параметре $1 (0 или 1).
|
Запуск это или остановка передается в параметре $1 (0 или 1).
|
||||||
В openwrt за остановку отвечает procd.
|
В openwrt за остановку отвечает procd.
|
||||||
|
|
||||||
Для фаервола кастом пишется отдельно для iptables и nftables. Все очень похоже, но отличается
|
Для фаервола в linux кастом пишется отдельно для iptables и nftables. Все очень похоже, но отличается
|
||||||
написание фильтров и названия процедур хелперов. Если вам не нужны iptables или nftables -
|
написание фильтров и названия процедур хелперов. Если вам не нужны iptables или nftables -
|
||||||
можете не писать соответствующую функцию.
|
можете не писать соответствующую функцию.
|
||||||
|
|
||||||
Готовый custom скрипт custom-tpws4http-nfqws4https позволяет применить дурение
|
В macos firewall-функции ничего сами никуда не заносят. Их задача - лишь выдать текст в stdout,
|
||||||
tpws к http и nfqws к https. При этом поддерживаются установки из config.
|
содержащий правила для pf-якоря. Остальное сделает обертка.
|
||||||
Его можно использовать как стартовую точку для написания своих скриптов.
|
|
||||||
|
|
||||||
|
|
||||||
Простая установка
|
Простая установка
|
||||||
|
Loading…
Reference in New Issue
Block a user