OpenVPN Killswtich

Aybee

Freshly Joined Member
Guten Tag und Frohe Ostern

Ich suche mir seit Tagen die finger wund nach einer Killswitch Möglichkeit für OpenVPN oder Viscosity, da ich den PP Manager nicht nutzen möchte mehr.

Die"Firewall Regel" im Windows funktioniert natürlich, allerdings kann ich damit nicht mehr auf meine Lokalen Geräte zugreifen u.a Drucker,FritzBox Oberfläche etc

Hat jemand eine Idee?
 
Last edited:
Kleiner Nachtrag:

Das ganze mit der Firewall war für mich irgendwie nur eine halbe Lösung.

Wenn man das Programm Viscosity (VPN Manager) (kostet 14$) (Windows und Mac) benutzt kann man vor dem Verbinden und nach Verbindungsabbruch 2 .bat Datei ausführen lassen durch das Programm.

Für Verbindungsabbruch habe ich folgende .bat erstellt
Bash:
netsh interface ip set address name = "Ethernet" static 0.0.0.0 255.255.255.0

* Ethernet durch den Namen eures Netzwerkadapter ersetzen

Dieser Befehl ändert den Gateway auf 0.0.0.0

Für Verbindungsaufbau habe ich folgendes erstellt
Bash:
netsh interface ip set address name = "Ethernet" dhcp

* Ethernet durch den Namen eures Netzwerkadapter ersetzen

Damit wird der Netzwerkadapter wieder auf DHCP gestellt.


Um die Datei ausführen zu können als Admin, müsst ihr evtl. über die Aufgabenplanung im Windows 2 Aufgaben erstellen noch. Für Killswitch On und KillSwitch Off

kill1.png

Bei Programm/Skript sucht er das zuvor erstellte Script für Kill On und Kill Off

Screenshot_2.png

Das ganze macht ihr nun 2 mal!

Danach müsst ihr dann noch 2 x .bat Scripte erstellen, damit die Scripte als Admin ausgeführt werden können mit folgenden Inhalt

Code:
schtasks.exe /run /tn NAMEEUREAUFGABE


Das ganze dann einfach in Viscosity einfügen und fertig, wichtig ist das ihr die .bat Datei dort einfügt womit ihr das Script als Admin ausführen könnt.

Screenshot_3.png


Sobald ich den VPN Trenne, kann ich keinen Ping mehr raus schicken oder eine Webseite aufbauen. Nach einem Reboot bleibt der Netzwerkadapter auf 0.0.0.0 und ändert sich erst wieder wenn ich eine VPN Verbindung aufbaue.

Ich bin kein Profi, wer also einen "Leak" damit noch findet, für die Info wäre ich dankbar.
 
Dein 0.0.0.0 nennt sich "Default Gateway" und ist entsprechend spezifiziert.
Das bedeutet im Prinzip "schick`s einfach raus".

Hast du bspw. einen Router in einem Netzwerk, dessen Traffic aufgrund der Netzwerkarchitektur grundsätzlich nur in eine Richtung gesendet werden kann (nur über ein Interface zum nächsten Netz)...dann kann man sich beim Routing die Mühe sprichwörtlich schmutzig sparen und setzt einfach 0.0.0.0 als Gateway...es geht ja nur in eine Richtung "raus", soll sich der nächste Router drum kümmern wo das Paket konkret hin soll.

Das kann in einem Heimnetzwerk auch klappen...ich würde daher rein zur Absicherung als Gateway eine definierte, nicht existierende IP-Adresse nehmen...aber nicht ein 0.0.0.0 Default Gateway.

Wenn dein (DSL)-Router daheim - welcher ohne VPN als reguläres Gateway fungieren würde - bspw. die 192.168.1.1/24 hat, dann würde ich eine "tote" IP setzen...bspw. 192.168.1.187/24. Die IP muss nur im selben Subnetz liegen.
Dann ist deine Internetanbindung auch nicht funktionsfähig, da hinter dieser Gateway-IP nichts liegt bzw. nichts, was als Gateway agiert.
 
Ich werde das mal ausprobieren, allerdings zeigt mein PC bei 0.0.0.0 auch kein LAN Symbol mehr an, der Ping geht nicht raus und Webseite sind nicht zu erreichen.

In viele Guide wird auch beschrieben das man route delete 0.0.0.0 über CMD nutzen soll damit nichts mehr raus geht, daher hab ich die 0.0.0.0 auch benutzt
 
Also wenn ich statt 0.0.0.0 eine IP aus dem Subnetz eintrage, gibt es das Problem das man danach die Netzwerkkarte nicht mehr zum laufen bekommt (warum auch immer).

Ich hab nun zusätzlich über die FritzBox Kindersicherung einige Regeln zusätzlich erstellt (wie im Forum hier beschrieben) obwohl ich denke das 0.0.0.0 gereicht hätte.
 
Irgendwie kann ich hier nicht nachträglich bearbeiten :-(

Man könnte auch einfach

route delete 0.0.0.0 nutzen damit geht ebenfalls kein Ping raus und keine Webseite zu öffnen. Allerdings muss ich da noch Testen ob es einen Reboot überlebt..

Ist der weg vielleicht besser?
 
Last edited:
In dem Moment wenn du verhinderst, dass Traffic über ein lokales Gateway von deinem PC nach draußen kommt besteht kein Handlungsbedarf mehr.
Und damit hast du mit der Aussage "es hätte gereicht" vollkommen Recht.

Ich habe auch nicht gesagt, dass 0.0.0.0 nicht funktioniert (bei dir geht es ja). Ich wollte nur darauf hinaus, dass ich selbst "Bauchweh" hätte ein Default Gateway 0.0.0.0 zu nutzen um Traffic zu blockieren...aus Sicht eines ITlers einfach "unschön", auch wenn es funktional ist.
Ggf. habe ich mich da unklar ausgedrückt, dann ist das meine Schuld.

Wie sieht es bei dir mit IPv6 aus? Am Anschluss aktiv,deaktiviert oder sonstiges? Das wäre in Bezug auf Leaks auch zu betrachten.
 
Nein ist schon okay, ich wollte ja wissen ob das so reicht :) Ich bin da für Tipps immer Dankbar.

Für mich ist es leider unverständlich warum es für OpenVPN im Jahr 2020 einfach keinen KillSwitch gibt, oder warum da viele eine Wissenschaft raus machen. Im Grunde müsste die Software doch nur den Netzwerkadapter deaktivieren und vor dem neu Verbinden wieder Aktivieren. Der Vorteil bei OPVPN oder Viscosity ist eben das er sich 10 mal schneller Verbindet als der Client von PP der für mich extrem träge ist.

Ipv6 habe ich per Netzwerkadapter,Router und im Viscosity blockiert/deaktiviert, laut IPLeak wird da auch keine Adresse übermittelt. Als DNS nutze Cloudflare DNS und WebRTC habe ich Blockiert.

Zum Ursprung:

Code:
route delete 0.0.0.0

funktioniert auch bei mir (vorausgesetzt ein reboot überlebt es) , ist das aus IT Sicht besser als

Code:
netsh interface ip set address name = "Ethernet" static 0.0.0.0 255.255.255.0
 
Wenn es bei dir funktional ist (was es ja ist), würde ich bei

Code:
netsh interface ip set address name = "Ethernet" static 0.0.0.0 255.255.255.0

bleiben.

Wenn ich deinem Einwurf folge, kannst du auch mit

Code:
netsh interface set interface name="Ethernet" admin=DISABLED

den Adapter komplett deaktivieren.

Mit

Code:
netsh interface set interface name="Ethernet" admin=ENABLE

vice versa.

Die Frage ist, ob das mit Viscosity klappt.

EDIT:
Der Netzwerkadapter wäre damit deaktiviert bis deine .bat "Vor dem Verbindungsaufbau" diesen zunächst aktiviert.
"Nach dem Verbindungsabbau" würde eine andere .bat den Adapter dann wieder deaktivieren.
Dann geht folglich ohne VPN-Verbindung nichts mehr raus...also de fakto "tot".

Müsste man mit Viscosity testen.
 
Das klappt, leider dauert das "Aktivieren" zu lange und Viscosity springt dann wieder zum "Deaktivieren" daher ist mir die Idee mit 0.0.0.0 gekommen.

Warum Viscosity nicht wartet bis das Script zu Ende ist weiß ich nicht, also selbst ein Warten 10Sekunden im Script bringt kein Erfolg, hier müsste man schon irgendwie versuchen das Viscosity die Verbinudng verzögert um 5 Sekunden weiß nicht ob das per openvpn Config geht.
 
Last edited:
Ich gehe davon aus, die .bat rumpelt einmal durch und nach Abschluss der .bat will Viscosity dann unmittelbar danach die Verbindung aufbauen. Da das abschließende Aktivieren in diesem "Übergang" aber zu lange dauert klappt es nicht.
Wie gesagt, ich arbeite nicht mit Viscosity.

Man könnte in die .bat auch ein
Code:
timeout /T 3

hinzufügen, dann würde er in der .bat nach dem Aktivieren noch eine Pause von 3 Sekunden einlegen und danach wäre die .bat erst "beendet" und der Verbindungsaufbau sollte dann durch Viscosity erfolgen.

Das wäre ggf. einen Versuch wert, würde aber die Zeit des VPN-Aufbaus folglich etwas verzögern.

EDIT: Rechtschreibfehler ausgebügelt, ich schreibe gerne zu schnell^^
 
Nein das klappt leider nicht mit dem timeout /T 3 die Idee hatte ich auch schon. Viscosity fängt schon an zu verbinden während das Script noch am laufen ist, der Fehler ist das Viscosity eben nicht wartet bis das Script zu Ende ist.

Ob das ein Bug ist oder so sein soll (keine Ahnung) hab die Entwickler bereits angeschrieben dazu ob es keine möglichkeit gibt das Viscosity die Verbindung verzögert bis das Script zu Ende gelaufen.

Der Netzwerkadapter brauch bei mir ca 5.5 Sekunden bis er wieder Aktiv angezeigt wird und ist zu lange leider.

P.S Rechtsschreibfehler darfst du gerne behalten, Hauptsache ich verstehe dich :)

P.P.S Erstmal vielen dank für deine Hilfe und Mühe, finde ich sehr freundlich und ist nicht mehr üblich in vielen Foren.
 
Back
Top