Ein VPN-Kill-Switch blockiert allen Netzwerkverkehr in dem Moment, in dem Ihre VPN-Verbindung abbricht, damit Ihre echte IP-Adresse nicht kurz durchsickert, während die App neu verbindet. Unter Windows und macOS ist das meist ein einzelner Schalter in den App-Einstellungen. Unter Linux hängt es stark davon ab, welche App oder welchen Client Sie nutzen, und wenn Sie OpenVPN oder WireGuard über die Kommandozeile statt über eine grafische App betreiben, müssen Sie eventuell manuell einen mit iptables oder nftables einrichten. So gehen Sie in beiden Fällen vor.
Schritt 1: Prüfen, ob Ihre VPN-App bereits einen hat
NordVPN, ProtonVPN, Surfshark und Mullvad liefern alle Linux-Apps oder Kommandozeilen-Tools mit integrierter Kill-Switch-Option, auch wenn genaue Bezeichnung und Position variieren. Suchen Sie im Einstellungsmenü Ihrer App nach Begriffen wie „Kill Switch", „Always-on VPN" oder „Netzwerksperre". Wenn Sie eine offizielle App statt einer manuell konfigurierten OpenVPN- oder WireGuard-Verbindung nutzen, ist das fast immer die einfachere und zuverlässigere Option, da sie vom Anbieter speziell für den eigenen Client gebaut und getestet wurde.
Schritt 2: Den integrierten Kill Switch aktivieren
Falls Ihre App die Option bietet, schalten Sie sie ein und starten Sie die App neu, damit die Einstellung sofort wirkt statt erst bei künftigen Verbindungen. Manche Apps unterscheiden zwischen einem Standard-Kill-Switch, der allen Traffic blockiert, wenn das VPN abbricht, und einem strengeren „Always-on"-Modus, der jeglichen Internetzugang blockiert, solange das VPN nicht aktiv verbunden ist, sogar bevor Sie manuell eine Sitzung gestartet haben. Für die meisten Nutzer ist die Standardoption die bessere Voreinstellung, da der strengere Modus unpraktisch sein kann, wenn Sie den Rechner häufig ohne laufendes VPN nutzen. Bei Unsicherheit lohnt sich ein Test mit der Standardeinstellung über ein paar Tage, bevor Sie zum strengeren Modus wechseln, um zu sehen, ob er Ihren gewohnten Arbeitsablauf stört.
Alle VPNs im direkten Vergleich? Unser vollständiger VPN-Vergleich zeigt Bewertungen nach 18 Kriterien.
Schritt 3: Einen manuellen iptables-Kill-Switch einrichten
Wenn Sie eine reine WireGuard- oder OpenVPN-Verbindung ohne grafische App betreiben, oder der Linux-Client Ihres Anbieters keinen Kill Switch enthält, können Sie einen mit iptables-Regeln bauen, die allen ausgehenden Traffic außer über die Netzwerkschnittstelle Ihres VPNs blockieren. Die Grundidee: die Standardrichtlinie auf Verwerfen allen Traffics setzen, dann explizit nur Traffic über die Schnittstelle Ihres VPN-Tunnels erlauben (üblicherweise tun0 für OpenVPN oder wg0 für WireGuard) sowie zur IP-Adresse Ihres VPN-Servers für den anfänglichen Handshake.
Eine Basisversion sieht so aus, auszuführen vor dem Verbinden:
sudo iptables -P OUTPUT DROP
sudo iptables -A OUTPUT -o tun0 -j ACCEPT
sudo iptables -A OUTPUT -d YOUR_VPN_SERVER_IP -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT
Ersetzen Sie YOUR_VPN_SERVER_IP durch die tatsächliche IP-Adresse des Servers, mit dem Sie sich verbinden, und passen Sie den Schnittstellennamen an Ihr Setup an. Dieses Regelwerk blockiert standardmäßig allen ausgehenden Traffic und schafft dann Ausnahmen für Ihren VPN-Tunnel, Ihren VPN-Server selbst (nötig, damit die Verbindung überhaupt zustande kommt) und Loopback-Traffic, den Ihr System braucht, damit interne Prozesse korrekt funktionieren.
Schritt 4: nftables für einen moderneren Ansatz nutzen
nftables ist das neuere Framework, das iptables auf den meisten aktuellen Linux-Distributionen ablöst, und behandelt dieselbe Logik mit sauberer Syntax. Ein vergleichbares Regelwerk in nftables sieht so aus:
sudo nft add table inet killswitch
sudo nft add chain inet killswitch output { type filter hook output priority 0 \; policy drop \; }
sudo nft add rule inet killswitch output oifname "wg0" accept
sudo nft add rule inet killswitch output ip daddr YOUR_VPN_SERVER_IP accept
sudo nft add rule inet killswitch output oifname "lo" accept
Unabhängig vom verwendeten Framework: Diese Regeln gelten, bis Sie sie entfernen oder neu starten. Wenn Sie das VPN absichtlich trennen und wieder normalen Internetzugang wollen, müssen Sie das Regelwerk zurücksetzen (sudo iptables -F für iptables, oder die Tabelle mit sudo nft delete table inet killswitch für nftables löschen), statt einfach nur die VPN-Anwendung zu schließen.
Schritt 5: Tatsächlich testen, ob es funktioniert
Dieser Schritt zählt mehr als die Einrichtung selbst, denn ein ungetesteter Kill Switch ist nur eine Vermutung. Bei verbundenem VPN und aktiven Regeln finden Sie den VPN-Prozess und beenden ihn zwangsweise, um einen unerwarteten Abbruch zu simulieren:
sudo pkill -9 openvpn
oder für WireGuard:
sudo wg-quick down wg0
Versuchen Sie dann sofort, eine beliebige Website zu laden. Funktionieren Ihre Kill-Switch-Regeln, sollte die Verbindung komplett fehlschlagen, statt still auf Ihre normale, ungeschützte Verbindung zurückzufallen. Lädt eine Seite trotzdem, prüfen Sie die Reihenfolge Ihrer Regeln und ob die Standardrichtlinie der OUTPUT- oder nftables-Kette tatsächlich auf Verwerfen gesetzt ist, denn eine falsche Regelreihenfolge ist der häufigste Grund, warum ein manueller Kill Switch tatsächlich gar nichts blockiert. Ein Neustart der Firewall-Konfiguration von Grund auf ist in solchen Fällen oft schneller, als einzelne Regeln nachträglich zu korrigieren.
Die Regeln über Neustarts hinweg persistent machen
Manuelle iptables- oder nftables-Regeln überstehen einen Neustart standardmäßig nicht. Auf den meisten Distributionen können Sie iptables-Regeln mit iptables-save > /etc/iptables/rules.v4 speichern und beim Booten über das iptables-persistent-Paket Ihrer Distribution wiederherstellen, oder Ihr nftables-Regelwerk direkt in /etc/nftables.conf schreiben und den systemd-Dienst nftables aktivieren, damit er automatisch lädt. Brauchen Sie den Kill Switch nur während bestimmter Sitzungen statt dauerhaft, ist ein einfaches Shell-Skript, das die Regeln vor dem Verbinden anwendet und nach dem Trennen entfernt, oft praktischer, als sie systemweit persistent zu machen. Ein solches Skript lässt sich leicht als Alias oder Funktion in der Shell-Konfiguration hinterlegen, sodass Sie es mit einem einzigen Befehl aufrufen können.
Häufige Probleme und Lösungen
DNS-Anfragen sickern trotzdem durch: Ihre Kill-Switch-Regeln decken möglicherweise nur ausgehenden Traffic auf Standardports ab, ohne DNS explizit zu behandeln. Stellen Sie sicher, dass Ihre VPN-App oder manuelle WireGuard-/OpenVPN-Konfiguration DNS durch die Tunnelschnittstelle leitet, und erwägen Sie eine explizite Regel, die DNS-Traffic (Port 53) außerhalb des Tunnels blockiert.
Der Kill Switch blockiert den anfänglichen VPN-Handshake: Das bedeutet meist, dass Ihre Regel, die Traffic zur IP des VPN-Servers erlaubt, nach dem Inkrafttreten der Standard-Verwerfen-Richtlinie geschrieben wurde, oder dass die Server-IP falsch ist. Prüfen Sie doppelt, ob die IP-Adresse mit dem tatsächlichen Server übereinstimmt, mit dem Sie sich verbinden, nicht mit einem Hostnamen, da iptables- und nftables-Regeln in der Regel eine aufgelöste IP-Adresse statt eines Domainnamens brauchen.
Regeln überstehen keinen Neustart: Wie oben beschrieben ist das erwartetes Verhalten, sofern Sie Persistenz nicht ausdrücklich über die Tools Ihrer Distribution eingerichtet haben.
Auf welchen Distributionen das funktioniert
Die obigen iptables- und nftables-Befehle funktionieren auf Debian, Ubuntu, Fedora, Arch und den meisten anderen großen Distributionen gleich, da beide Frameworks Teil des Standard-Netzwerk-Stacks des Linux-Kernels sind und nicht distributionsspezifisch. Der Hauptunterschied zwischen Distributionen liegt darin, welches Persistenz-Tooling standardmäßig verfügbar ist und wie das Paket heißt, prüfen Sie also die Dokumentation Ihrer Distribution für den genauen Namen des Persistenz-Pakets, falls die Regeln automatisch einen Neustart überstehen sollen. Ein kurzer Blick ins Wiki oder Handbuch der jeweiligen Distribution spart hier meist mehr Zeit, als durch Ausprobieren die richtige Paketbezeichnung zu suchen.
Hat Ihre VPN-App unter Linux einen integrierten Kill Switch, nutzen Sie ihn, das ist einfacher und vom Anbieter getestet. Betreiben Sie ein manuelles WireGuard- oder OpenVPN-Setup, schließt ein kurzes iptables- oder nftables-Regelwerk dieselbe Lücke in wenigen Minuten, und es durch zwangsweises Beenden des VPN-Prozesses zu testen ist die einzige Möglichkeit, wirklich zu bestätigen, dass es funktioniert. Mullvad und NordVPN enthalten beide einen zuverlässigen integrierten Kill Switch in ihren Linux-Apps, falls Sie die manuelle Einrichtung lieber ganz überspringen möchten.
Weiterlesen: VPN-Kill-Switch erklärt und Bestes VPN für Linux 2026.