mirror of
https://github.com/bol-van/zapret.git
synced 2024-11-30 05:50:53 +03:00
45 lines
1.2 KiB
Plaintext
45 lines
1.2 KiB
Plaintext
|
# this custom script demonstrates how to use 2 copies of nfqws
|
||
|
# it preserves config settings : MODE_HTTP, MODE_HTTP_KEEPALIVE, MODE_HTTPS, MODE_FILTER, NFQWS_OPT_DESYNC
|
||
|
# NFQWS_OPT_DESYNC - parameters for http
|
||
|
# NFQWS_OPT_DESYNC2 - parameters for https. you should add this variable to config file, its absent there
|
||
|
|
||
|
QNUM2=$(($QNUM+1))
|
||
|
|
||
|
zapret_custom_daemons()
|
||
|
{
|
||
|
local opt
|
||
|
|
||
|
[ "$MODE_HTTP" = "1" ] && {
|
||
|
opt="$NFQWS_OPT_DESYNC"
|
||
|
filter_apply_hostlist_target opt
|
||
|
do_nfqws $1 1 "$opt"
|
||
|
}
|
||
|
|
||
|
[ "$MODE_HTTPS" = "1" ] && {
|
||
|
opt="$NFQWS_OPT_DESYNC2 --qnum=$QNUM2"
|
||
|
filter_apply_hostlist_target opt
|
||
|
do_nfqws $1 2 "$opt"
|
||
|
}
|
||
|
}
|
||
|
zapret_custom_firewall()
|
||
|
{
|
||
|
local f4 f6
|
||
|
local first_packet_only="-m connbytes --connbytes-dir=original --connbytes-mode=packets --connbytes 2:4"
|
||
|
local desync="-m mark ! --mark $DESYNC_MARK/$DESYNC_MARK"
|
||
|
|
||
|
[ "$MODE_HTTP" = "1" ] && {
|
||
|
f4="--dport 80"
|
||
|
[ "$MODE_HTTP_KEEPALIVE" = "1" ] || f4="$f4 $first_packet_only"
|
||
|
f6=$f4
|
||
|
filter_apply_ipset_target f4 f6
|
||
|
fw_nfqws_post $1 "$f4 $desync" "$f6 $desync" $QNUM
|
||
|
}
|
||
|
|
||
|
[ "$MODE_HTTPS" = "1" ] && {
|
||
|
f4="--dport 443 $first_packet_only"
|
||
|
f6=$f4
|
||
|
filter_apply_ipset_target f4 f6
|
||
|
fw_nfqws_post $1 "$f4 $desync" "$f6 $desync" $QNUM2
|
||
|
}
|
||
|
}
|