fingers
Goto Top

Linux OpenVPN Kill Switch

Moin ich nutze Linux Mint 19 (Debian) davor hatte ich Manjaro im Einsatz . Ich würde mir gerne einen Killswitch bauen mit den IPtabels , mit der UFW ist es ja Wohl möglich was ich bis jetzt gelesen habe. Ich bin ein absoluter Linux Anfänger das war auch der Grund dafür das ich mich von Manjaro verabschiedet habe . Was ich gerne Realisieren möchte ist dass ich mir zwei Profile erstelle

Profil 1 nur VPN Verbindung zugelassen

Profil 2 VPN nicht Aktiv

Ist diese Vorhaben umzusetzen für einen Anfänger oder sollte ich mich von meinem vorhaben Verabschieden ? . Da ich nicht irgendwas ins Terminal kopieren möchte , ich würde es schon gerne nachvollziehen können was ich da mache . Zu Anfang habe ich mir gedacht das ich alle Ports dicht mache und nur die OpenVPN Ports freigebe denn Port 80 blockiere. Naja das habe ich dann auch schnell gemerkt das ich damit nicht weiter komme . Vielleicht hat jemand einen Tipp für mich wie ich weiter komme mit meinem Vorhaben mein Englisch ist auch nicht das Beste dass soll mich aber nicht aufhalten .ich wünsche euch schonmal ein schönes Wochenende.

Gruß Ben

Content-Key: 470291

Url: https://administrator.de/contentid/470291

Printed on: April 20, 2024 at 00:04 o'clock

Member: Spirit-of-Eli
Spirit-of-Eli Jul 06, 2019 at 07:23:58 (UTC)
Goto Top
Moin,

das ist doch ganz simpel.
Du musst am OVPN Server nur "force tunneling" (entsprecht der route 0.0.0.0/0 als destination) aktivieren. Sobald sich dann ein Client verbindet, wird sämtlicher Traffic durch den Tunnel geleitet.

Gesteuert wird das ganze dadurch, das sich ein Client einloggt.

Ansonsten wird aus deiner Frage die Anforderung noch nicht sonderlich klar. Wieso hast du alles bis auf Port 80 geblockt?
Nutze auf jeden Fall UDP und ruhig den Standard Port soweit es sonst keine Erfordernisse zur Änderung gibt.
Durch die Blume soll der Client nur noch raus kommen wenn der Tunnel steht?

Gruß
Spirit
Member: maretz
maretz Jul 06, 2019 at 08:06:16 (UTC)
Goto Top
Moin,

ich verstehe nich wirklich was du willst... Nen KILL-Switch (wie ich den an meinem Mopped z.B. habe) macht genau eines: Die Kiste weg... Würde bei dir bedeuten du trennst einfach das VPN.

Du kannst natürlich auch ne firewall dazu nutzen und einfach allen Traffic von/zur VPN-IP blocken -> wenn der Client am VPN angemeldet ist und du sagst auf der Server-Firewall das an die IP nix mehr zu gehen hat kann der ja angemeldet sein (da das ja deine public-ip betrifft), es wird aber kein Traffic zum Endgeät durch den Tunnel fliessen....

Oder - wenn es final sein soll: Den Key bzw. das Zertifikat löschen/revoken -> dann is auch ruhe im Tunnel. Erfordert aber eben dann auch nen Eingriff um das wieder zu setzen (zumindest beim Zertifikat)
Member: Fingers
Fingers Jul 06, 2019 updated at 08:30:44 (UTC)
Goto Top
Moin sorry ist der Müdigkeit geschuldet ich Versuche es nochmal . Ich bin Kunde bei einem VPN Anbieter da ab und an die VPN Verbindung abbricht möchte ich verhindern das meine echte IP Adresse ans Tageslicht kommt und völlig Nackt dastehe. Zu dem Thema habe ich ein paar Lösung Vorschläge gefunden im Bezug auf die Firewall bzw IPtabels . Leider hat dies nicht wirklich geholfen und ich habe es auch nicht wirklich verstanden.Mein VPN Anbieter hat auch einen Windwos Client der dafür sorgt dass wenn die VPN Verbindung abbricht der gesamte Traffic nicht druchkommt , das meinte ich mit einem Killswitch . Für Linux gibt es eine Client der ist aber hoffnungslos veraltete , und für Linux gibt es halt von dennen keine Software . Daswegen Versuche ich eine andere Lösung zu finden. Ich hoffe ich habe es plausibel genug erklärt ich gebe mein bestes.

Hier ein Beispiel ich stehe dabei wirklich auf dem Schlauch was ich noch anpassen muss damit es funktioniert .


Code:
#!/bin/bash

#Iptables Regeln für VPN:

sudo iptables -t filter -A OUTPUT -o wlan0 -p udp -m multiport --dports 1149,149,1150,150,1151,151,53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t filter -A OUTPUT -o wlan0 -p tcp -m multiport --dports 1152,152 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t filter -A OUTPUT -o eth0 -p udp -m multiport --dports 1149,149,1150,150,1151,151,53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t filter -A OUTPUT -o eth0 -p tcp -m multiport --dports 1152,152 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t filter -A INPUT -i wlan0 -p udp -m multiport --sports 1149,149,1150,150,1151,151,53 -m state --state ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t filter -A INPUT -i wlan0 -p tcp -m multiport --sports 1152,152 -m state --state ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t filter -A INPUT -i eth0 -p udp -m multiport --sports 1149,149,1150,150,1151,151,53 -m state --state ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t filter -A INPUT -i eth0 -p tcp -m multiport --sports 1152,152 -m state --state ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t filter -A OUTPUT --dst 192.168.0.0/16 -j ACCEPT
sudo iptables -t filter -A INPUT --src 192.168.0.0/16 -j ACCEPT
sudo iptables -t filter -A OUTPUT --dst 10.0.0.0/8 -j ACCEPT
sudo iptables -t filter -A INPUT --src 10.0.0.0/8 -j ACCEPT
sudo iptables -t filter -A OUTPUT --dst 172.16.0.0/12 -j ACCEPT
sudo iptables -t filter -A INPUT --src 172.16.0.0/12 -j ACCEPT

sudo iptables -t filter -A OUTPUT -o wlan0 -j DROP
sudo iptables -t filter -A INPUT -i wlan0 -j DROP
sudo iptables -t filter -A OUTPUT -o eth0 -j DROP
sudo iptables -t filter -A INPUT -i eth0 -j DROP* * *



Moin,

das ist doch ganz simpel.
Du musst am OVPN Server nur "force tunneling" (entsprecht der route 0.0.0.0/0 als destination) aktivieren. Sobald sich dann ein Client verbindet, wird sämtlicher Traffic durch den Tunnel geleitet.

Gesteuert wird das ganze dadurch, das sich ein Client einloggt.

Ansonsten wird aus deiner Frage die Anforderung noch nicht sonderlich klar. Wieso hast du alles bis auf Port 80 geblockt?
Nutze auf jeden Fall UDP und ruhig den Standard Port soweit es sonst keine Erfordernisse zur Änderung gibt.
Durch die Blume soll der Client nur noch raus kommen wenn der Tunnel steht?

Gruß
Spirit
Member: Spirit-of-Eli
Spirit-of-Eli Jul 06, 2019 at 08:35:40 (UTC)
Goto Top
Von was für einem Client reden wir denn?
Ich dachte du setzt einen eigenen Server auf.
Member: maretz
maretz Jul 06, 2019 at 08:47:22 (UTC)
Goto Top
Moin,

dann wäre die erste Anlaufstelle ja der ANBIETER vom VPN... Mit der Firewall wirst du da aber nicht viel weiter kommen - klar kannst du einfach allen Traffic sperren aber so wirklich hilfreich is das auch nicht. Wenn dann müsstest du den Traffic auf den Ports per Drop wegwerfen, dann hängt es aber von deiner Anwendung ab - da es High-Ports sind darf die sich einfach auch andere nehmen und glücklich werden. Hier wäre dann eher der Standard-Weg (deny all, nur allow was du wirklich willst) und hoffen das deine Anwendung nich einfach z.B. via 80 oder 443 rausgeht. ODER - am einfachsten - einfach mal keine zweifelhaften Anwendungen verwenden....

Dir muss nur klar sein das dich ein VPN von einem unbekannten Anbieter erst mal vor rein gar nix schützt auch wenn die Werbung gerne was anderes verspricht... Dein PROVIDER kann nicht mitlesen was du machst - schön. Der VPN-Anbieter (je nachdem was er protokolliert) kann das aber natürlich und entsprechend einfach bist du weiterhin auffindbar. Denn dessen Datenverkehr sagt ja auch von welcher VPN_IP der Traffic zu welchem Ziel gegangen ist...

Wenn du also nicht nur irgendwo TV-Sender im Ausland gucken möchtest hast du ehrlich gesagt nichts als extra Schutz solang du dich in deinen Netzwerken aufhälst... Bei öffentlichen Netzwerken sieht es etwas besser aus, aber wirklich viel auch nicht (warum sollte ich irgendeinem VPN-Anbieter den ich nich kenne mehr vertrauen als der Person die im Cafe neben mir sitzt?!?)
Member: Fingers
Fingers Jul 06, 2019 at 08:52:08 (UTC)
Goto Top
Nein eben nicht sorry das es so rüber Kamm . Mein Anbieter hat einen Windwos Client der auch wunderbar funktioniert nur der Linux Client ist für denn Arsch bzw die Gefahr ist halt sehr groß das ein IP Leak geschieht ohne das mann es mekrt . Mein Anbieter ist Perfekt Privacy
Member: Fingers
Fingers Jul 06, 2019 updated at 09:23:34 (UTC)
Goto Top
Moin,

Ja die Problematik kenne ich , vertrauen kann ich keinen VPN Anbieter das ist klar. Dann wäre das TOR Netzwerk die bessere Lösung und auch einfacher umzusetzen. Meinem Anbieter werden ich noch kontaktieren müssen aber ich denke das dies mich nicht wirklich weiterbringt . Aussage im Forum von dennen ist dass Linux was für Bastler ist und sie sich auf die Windows Client konzentrieren . Ich wünschte mir halt, dass es die einfache Lösung gibt , um es auch anders zu lösen . Im Grunde ist das was ich eigentlich auch erreichen möchte was du geschildert hast .
Zitat von @maretz:

Moin,

dann wäre die erste Anlaufstelle ja der ANBIETER vom VPN... Mit der Firewall wirst du da aber nicht viel weiter kommen - klar kannst du einfach allen Traffic sperren aber so wirklich hilfreich is das auch nicht. Wenn dann müsstest du den Traffic auf den Ports per Drop wegwerfen, dann hängt es aber von deiner Anwendung ab - da es High-Ports sind darf die sich einfach auch andere nehmen und glücklich werden. Hier wäre dann eher der Standard-Weg (deny all, nur allow was du wirklich willst) und hoffen das deine Anwendung nich einfach z.B. via 80 oder 443 rausgeht. ODER - am einfachsten - einfach mal keine zweifelhaften Anwendungen verwenden....

Dir muss nur klar sein das dich ein VPN von einem unbekannten Anbieter erst mal vor rein gar nix schützt auch wenn die Werbung gerne was anderes verspricht... Dein PROVIDER kann nicht mitlesen was du machst - schön. Der VPN-Anbieter (je nachdem was er protokolliert) kann das aber natürlich und entsprechend einfach bist du weiterhin auffindbar. Denn dessen Datenverkehr sagt ja auch von welcher VPN_IP der Traffic zu welchem Ziel gegangen ist...

Wenn du also nicht nur irgendwo TV-Sender im Ausland gucken möchtest hast du ehrlich gesagt nichts als extra Schutz solang du dich in deinen Netzwerken aufhälst... Bei öffentlichen Netzwerken sieht es etwas besser aus, aber wirklich viel auch nicht (warum sollte ich irgendeinem VPN-Anbieter den ich nich kenne mehr vertrauen als der Person die im Cafe neben mir sitzt?!?)
Member: Lochkartenstanzer
Lochkartenstanzer Jul 06, 2019 at 12:26:28 (UTC)
Goto Top
Moin,

Nimm einfach die default-route raus und mach nur eine statische Route zu Deinem VPN-Anbieter.

Und setz die default route erst be
bach dem Aufbau des Tunnels und lösche sie, wenn der Zunnel abgebaut wird.

lks
Member: Fingers
Fingers Jul 06, 2019 updated at 14:18:23 (UTC)
Goto Top
Moin ,

Wie stelle ich das an eine statische Route aufzubauen zu meinem VPN Anbieter ? Das klingt nach einem Plan könntest du mir das etwas genauer erklären ?

Gruß Fingers
Member: aqui
aqui Jul 07, 2019 updated at 10:11:27 (UTC)
Goto Top
Ich bin Kunde bei einem VPN Anbieter
Bei OpenVPN kennt der dann doch so oder so deinen Client Zugangs Key den ER hat den ja generiert und hat damit Zugriff auf alle deine Daten die übers VPN fliessen.
Das er den Key auch an Überwachungsbehörden weitergibt sollte ebenso klar sein wenn man öffentliche VPN Anbieter nutzt. Ganz besonders wenn diese nicht in der EU liegen wie z.B. CH.
Damit hast du dann so oder so jede Privatsphäre aufgegeben und es ist sinnfrei sich dann noch über die eigene IP zu sorgen usw. Etwas Selbstbetrug... Aber egal...
könntest du mir das etwas genauer erklären ?
Einfach mal das OVPN Tutorial hier lesen und verstehen:
OpenVPN Server installieren auf pfSense Firewall, Mikrotik. DD-WRT oder GL.inet Router