Added start/stop functions. Added iptables-save/restore functionality.

This commit is contained in:
strepsil 2022-11-23 07:08:16 +02:00
parent fdb9279486
commit 7c091df56b

View file

@ -1,4 +1,17 @@
#!/bin/bash
RULES="/var/tmp/tor-router.save"
# Tor's TransPort
TRANS_PORT="9040"
case "$1" in
start)
if test -f "$RULES"; then
echo "$RULES exists. Either delete it, or stop tor-router first."
exit
else
iptables-save > $RULES
# Executable file to create rules for transparent proxy
# Destinations you do not want routed through Tor
NON_TOR="192.168.1.0/24 192.168.0.0/24"
@ -14,9 +27,6 @@ else
exit
fi
# Tor's TransPort
TRANS_PORT="9040"
if ! command -v tor > /dev/null; then
echo "You need to install the tor package."
exit
@ -46,3 +56,23 @@ else
iptables -A OUTPUT -m owner --uid-owner $TOR_UID -j ACCEPT
iptables -A OUTPUT -j ACCEPT
fi
fi
;;
stop)
if ! -f "$RULES"; then
echo "$RULES does not exist. Not doing anything."
exit
else
iptables -t nat -F
iptables-restore < $RULES
rm $RULES
fi
;;
restart)
stop
sleep 2
start
;;
*)
echo "Usage: $0 {start|stop|restart}"
esac