mirror of https://github.com/bol-van/zapret/
9 changed files with 189 additions and 44 deletions
@ -0,0 +1,9 @@ |
|||||
|
QNUM=200 |
||||
|
IPT_FILTER_PRE="-p tcp -m multiport --sports 80,443" |
||||
|
IPT_FILTER_POST="-p tcp --dport 80" |
||||
|
|
||||
|
iptables -t raw -C PREROUTING $IPT_FILTER_PRE -j NFQUEUE --queue-num $QNUM --queue-bypass || |
||||
|
iptables -t raw -I PREROUTING $IPT_FILTER_PRE -j NFQUEUE --queue-num $QNUM --queue-bypass |
||||
|
|
||||
|
iptables -t mangle -C POSTROUTING $IPT_FILTER_POST -j NFQUEUE --queue-num $QNUM --queue-bypass || |
||||
|
iptables -t mangle -I POSTROUTING $IPT_FILTER_POST -j NFQUEUE --queue-num $QNUM --queue-bypass |
@ -0,0 +1,9 @@ |
|||||
|
QNUM=200 |
||||
|
IPT_FILTER_PRE="-p tcp -m multiport --sports 80,443 -m set --match-set zapret src" |
||||
|
IPT_FILTER_POST="-p tcp --dport 80 -m set --match-set zapret dst" |
||||
|
|
||||
|
iptables -t raw -C PREROUTING $IPT_FILTER_PRE -j NFQUEUE --queue-num $QNUM --queue-bypass || |
||||
|
iptables -t raw -I PREROUTING $IPT_FILTER_PRE -j NFQUEUE --queue-num $QNUM --queue-bypass |
||||
|
|
||||
|
iptables -t mangle -C POSTROUTING $IPT_FILTER_POST -j NFQUEUE --queue-num $QNUM --queue-bypass || |
||||
|
iptables -t mangle -I POSTROUTING $IPT_FILTER_POST -j NFQUEUE --queue-num $QNUM --queue-bypass |
@ -0,0 +1,27 @@ |
|||||
|
TPPORT_HTTP=1188 |
||||
|
TPPORT_HTTPS=1189 |
||||
|
TPWS_USER=daemon |
||||
|
IPT_FILTER_HTTP="-p tcp --dport 80" |
||||
|
IPT_FILTER_HTTPS="-p tcp --dport 443" |
||||
|
|
||||
|
. /lib/functions/network.sh |
||||
|
|
||||
|
network_find_wan wan_iface |
||||
|
|
||||
|
for ext_iface in $wan_iface; do |
||||
|
network_get_device DEVICE $ext_iface |
||||
|
# DNAT for local traffic |
||||
|
|
||||
|
iptables -t nat -C OUTPUT -o $DEVICE -m owner ! --uid-owner $TPWS_USER $IPT_FILTER_HTTP -j DNAT --to 127.0.0.1:$TPPORT_HTTP || |
||||
|
iptables -t nat -I OUTPUT -o $DEVICE -m owner ! --uid-owner $TPWS_USER $IPT_FILTER_HTTP -j DNAT --to 127.0.0.1:$TPPORT_HTTP |
||||
|
iptables -t nat -C OUTPUT -o $DEVICE -m owner ! --uid-owner $TPWS_USER $IPT_FILTER_HTTPS -j DNAT --to 127.0.0.1:$TPPORT_HTTPS || |
||||
|
iptables -t nat -I OUTPUT -o $DEVICE -m owner ! --uid-owner $TPWS_USER $IPT_FILTER_HTTPS -j DNAT --to 127.0.0.1:$TPPORT_HTTPS |
||||
|
|
||||
|
done |
||||
|
|
||||
|
network_get_device DEVICE lan |
||||
|
sysctl -w net.ipv4.conf.$DEVICE.route_localnet=1 |
||||
|
iptables -t nat -C prerouting_lan_rule $IPT_FILTER_HTTP -j DNAT --to 127.0.0.1:$TPPORT_HTTP || |
||||
|
iptables -t nat -I prerouting_lan_rule $IPT_FILTER_HTTP -j DNAT --to 127.0.0.1:$TPPORT_HTTP |
||||
|
iptables -t nat -C prerouting_lan_rule $IPT_FILTER_HTTPS -j DNAT --to 127.0.0.1:$TPPORT_HTTPS || |
||||
|
iptables -t nat -I prerouting_lan_rule $IPT_FILTER_HTTPS -j DNAT --to 127.0.0.1:$TPPORT_HTTPS |
@ -0,0 +1,27 @@ |
|||||
|
TPPORT_HTTP=1188 |
||||
|
TPPORT_HTTPS=1189 |
||||
|
TPWS_USER=daemon |
||||
|
IPT_FILTER_HTTP="-p tcp --dport 80 -m set --match-set zapret dst" |
||||
|
IPT_FILTER_HTTPS="-p tcp --dport 443 -m set --match-set zapret dst" |
||||
|
|
||||
|
. /lib/functions/network.sh |
||||
|
|
||||
|
network_find_wan wan_iface |
||||
|
|
||||
|
for ext_iface in $wan_iface; do |
||||
|
network_get_device DEVICE $ext_iface |
||||
|
# DNAT for local traffic |
||||
|
|
||||
|
iptables -t nat -C OUTPUT -o $DEVICE -m owner ! --uid-owner $TPWS_USER $IPT_FILTER_HTTP -j DNAT --to 127.0.0.1:$TPPORT_HTTP || |
||||
|
iptables -t nat -I OUTPUT -o $DEVICE -m owner ! --uid-owner $TPWS_USER $IPT_FILTER_HTTP -j DNAT --to 127.0.0.1:$TPPORT_HTTP |
||||
|
iptables -t nat -C OUTPUT -o $DEVICE -m owner ! --uid-owner $TPWS_USER $IPT_FILTER_HTTPS -j DNAT --to 127.0.0.1:$TPPORT_HTTPS || |
||||
|
iptables -t nat -I OUTPUT -o $DEVICE -m owner ! --uid-owner $TPWS_USER $IPT_FILTER_HTTPS -j DNAT --to 127.0.0.1:$TPPORT_HTTPS |
||||
|
|
||||
|
done |
||||
|
|
||||
|
network_get_device DEVICE lan |
||||
|
sysctl -w net.ipv4.conf.$DEVICE.route_localnet=1 |
||||
|
iptables -t nat -C prerouting_lan_rule $IPT_FILTER_HTTP -j DNAT --to 127.0.0.1:$TPPORT_HTTP || |
||||
|
iptables -t nat -I prerouting_lan_rule $IPT_FILTER_HTTP -j DNAT --to 127.0.0.1:$TPPORT_HTTP |
||||
|
iptables -t nat -C prerouting_lan_rule $IPT_FILTER_HTTPS -j DNAT --to 127.0.0.1:$TPPORT_HTTPS || |
||||
|
iptables -t nat -I prerouting_lan_rule $IPT_FILTER_HTTPS -j DNAT --to 127.0.0.1:$TPPORT_HTTPS |
Loading…
Reference in new issue