Skapa en Killswitch via IPtables Raspberry Pi med Openelec

Permalänk

Skapa en Killswitch via IPtables Raspberry Pi med Openelec

Hej,

Jag är ute efter att skapa en killswitch för min Raspberry Pi som kör Openelec. Jag vill alltså att om min VPN-anslutning på något sätt går ner, ska Internet-accessen klippas. Jag kör IPVanish som VPN-leverantör. Jag är nybörjare på Unix/Linux och har därför fått googla en hel del och förstått att IPTables är bästa vägen att gå.

Jag har knåpat ihop ett autostart skript som ligger i autostart.sh. Jag kopplas upp fint på VPN, kan se att jag går genom IPVanishs servrar, men när jag vill testa min killswitch (kör "killall openvpn" i shell) så stoppas inte Internettrafiken. Jag ser att mitt VPN-interface (tun0) går ner, men Internet kan fortfarande access. Kan någon som är kunnig inom IPTables se om jag gjort något fel i skriptet? Stort tack!

autostart.sh
(
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X

# Allow all and everything on localhost
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# LAN
iptables -A INPUT -i eth0 -s 192.168.0.0/24 -j ACCEPT
iptables -A OUTPUT -o eth0 -d 192.168.0.0/24 -j ACCEPT

# DNS
iptables -A INPUT -p udp --sport 53 -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT

# Allow VPN traffic
iptables -A INPUT -p udp --sport 1194 -j ACCEPT
iptables -A OUTPUT -p udp --dport 1194 -j ACCEPT

# IPVanish DNS
iptables -A INPUT -s [IPVanish DNS server IP] -j ACCEPT;
iptables -A OUTPUT -s [IPVanish DNS server IP] -j ACCEPT;

# IPVanish server
iptables -A INPUT -p udp -s [IPVanish server IP] -j ACCEPT;
iptables -A OUTPUT -p udp -d [IPVanish server IP] -j ACCEPT;

# Accept TUN
iptables -A INPUT -i tun0 -j ACCEPT
iptables -A OUTPUT -o tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -j ACCEPT

# Drop the rest
iptables -A INPUT -j DROP
iptables -A OUTPUT -j DROP
iptables -A FORWARD -j DROP

sleep 15;
openvpn /storage/.config/vpn-config/[IPVanish server].ovpn
) &