OpenVPN Server soll Internet Traffic nicht routen

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
BerndM
Beiträge: 21
Registriert: 20.05.2020 23:58:59

OpenVPN Server soll Internet Traffic nicht routen

Beitrag von BerndM » 12.07.2020 16:33:27

Hallo,

ich habe mir einen VPN Server eingerichtet um von untwegs aus auf meine Daten zugreifen zu können. Er funktioniert auch gut. Nur leider wird auch der Internet Traffic über die VPN Leitung mit gerouted. Weiß leider nicht warum und finde im Internet immer nur das Gegenteil als Problem.

Ich will das über VPN nur die Daten zu meinen privaten Netz gehen und das zum Internet über das vorhandene Gateway. Ist einfach schneller.
Lösung dazu habe ich eine gefunden. Ich musste in Gnome OpenVPN Client die Einstellung bei IPv4 "Diese Verbindung nur für Resourcen in deren Netzwerk verwenden" aktivieren. Dieses Problem bzw. Einstellung gibt es auch bei KDE.

Meines erachtens ist das doch der falsche Weg. Der Client sollte doch nur über die ovpn Datei konfiguriert werden. Wenn ich das vergesse und im Internet unterwegs bin, wird es doch sehr lahm sein.

Hat jemand eine Ahnung wie ich dieses verhinden kann? Oder besser gesagt, wie ich dieses Häckchen mit der OpenVPN Server Konfiguration hinbekomme.

Als Server nutze ich Debian 10 und als Client Debian 10 in VBox.

server.conf

Code: Alles auswählen

port 1194
proto udp
dev tun0
ca ca.crt
cert vpn-server.crt
key vpn-server.key
dh dh.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist /var/log/openvpn/ipp.txt
push "route 192.168.7.0 255.255.255.0"
client-config-dir ccd
route 10.8.1.0 255.255.255.0
push "dhcp-option DNS 192.168.7.2"
keepalive 10 120
tls-auth ta.key 0 # This file is secret
cipher AES-256-CBC
auth SHA256
user nobody
group nogroup
persist-key
persist-tun
status      /var/log/openvpn/openvpn-status.log
log         /var/log/openvpn/openvpn.log
log-append  /var/log/openvpn/openvpn.log
verb 3
explicit-exit-notify 1
ccd/client1

Code: Alles auswählen

ifconfig-push 10.8.1.100 10.8.0.1
client.conf

Code: Alles auswählen

client
dev tun
proto udp
remote mein.server.de 1194
resolv-retry infinite
nobind
user nobody
group nogroup
persist-key
persist-tun
key-direction 1
remote-cert-tls server
cipher AES-256-CBC
auth SHA256
verb 3
traceroute ohne aktiven VPN

Code: Alles auswählen

traceroute to google.de (172.217.16.67), 30 hops max, 60 byte packets
 1  xxxxxxxxxxxxxxxxx (192.168.179.1)  2.469 ms  2.412 ms  2.387 ms
 2  xxxxxxxxxxxxxxxxx (62.155.247.161)  21.262 ms  21.151 ms  21.124 ms
 3  xxxxxxxxxxxxxxxxx (217.5.93.2)  31.476 ms xxxxxxxxxxxxxxxxx (217.0.195.157)  30.519 ms  31.368 ms
 4  80.156.160.118 (80.156.160.118)  40.134 ms  40.026 ms  40.003 ms
 ......
14  ham11s01-in-f3.1e100.net (172.217.16.67)  35.580 ms  36.863 ms  36.687 ms
traceroute mit aktiven VPN und ohne das Häckchen

Code: Alles auswählen

traceroute to google.de (172.217.16.67), 30 hops max, 60 byte packets
 1  _gateway (10.8.0.1)  4.034 ms  4.026 ms  4.023 ms
 2  xxxxxxxxxxxxxxxxx (192.168.7.1)  4.021 ms  4.018 ms  4.015 ms
 3  xxxxxxxxxxxxxxxxx (62.155.247.161)  22.976 ms  22.993 ms  22.995 ms
 4  xxxxxxxxxxxxxxxxx (217.5.93.2)  33.188 ms xxxxxxxxxxxxxxxxx (217.0.195.157)  32.185 ms xxxxxxxxxxxxxxxxx (217.0.197.233)  34.223 ms
 5  80.156.160.118 (80.156.160.118)  40.494 ms  41.773 ms  41.774 ms
 ......
15  par03s13-in-f67.1e100.net (172.217.16.67)  38.703 ms  38.689 ms  38.684 ms
traceroute mit aktiven VPN und mit Häckchen

Code: Alles auswählen

traceroute to google.de (172.217.16.67), 30 hops max, 60 byte packets
 1  xxxxxxxxxxxxxxxxx (192.168.179.1)  4.800 ms  4.682 ms  4.625 ms
 2  xxxxxxxxxxxxxxxxx (62.155.247.161)  20.514 ms  20.242 ms  21.461 ms
 3  xxxxxxxxxxxxxxxxx (217.0.195.157)  29.274 ms  30.116 ms xxxxxxxxxxxxxxxxx (217.0.197.233)  32.220 ms
 4  80.156.160.118 (80.156.160.118)  38.396 ms  38.364 ms  38.179 ms
 ......
14  ham11s01-in-f3.1e100.net (172.217.16.67)  36.014 ms  35.986 ms  36.131 ms
ip route ohne aktiven VPN

Code: Alles auswählen

default via 192.168.179.1 dev wlan0 proto dhcp metric 600 
169.254.0.0/16 dev wlan0 scope link metric 1000 
192.168.179.0/24 dev wlan0 proto kernel scope link src 192.168.179.21 metric 600
ip route mit aktiven VPN und ohne Häckchen

Code: Alles auswählen

default via 10.8.0.1 dev tun0 proto static metric 50 
default via 192.168.179.1 dev wlan0 proto dhcp metric 600 
10.8.0.1 dev tun0 proto kernel scope link src 10.8.1.100 metric 50 
10.8.0.1 via 10.8.0.1 dev tun0 proto static metric 50 
91.48.187.132 via 192.168.179.1 dev wlan0 proto static metric 600 
169.254.0.0/16 dev wlan0 scope link metric 1000 
192.168.7.0/24 via 10.8.0.1 dev tun0 proto static metric 50 
192.168.179.0/24 dev wlan0 proto kernel scope link src 192.168.179.21 metric 600 
192.168.179.1 dev wlan0 proto static scope link metric 600
Was mir auffällt ist, das der OpenVPN Client sehr viele Routes konfiguriert. Eventuell liegt es auch an meinem verrückten Testaufbau:
Server: Debian 10 mit OpenVPN per LAN an Fritz!Box
Client: Debian 10 auf VBox (Host ist auch der OpenVPN Server, da brauche ich nicht rumlaufen zum testen :D ), per USB-WLAN Stick an Gast Zugang der Fritz!Box
Fritz!Box macht Portweiterleitung auf OpenVPN Server für 1194

Wie kann ich bei traceroute mit aktiven VPN und ohne das Häckchen den ersten Eintrag bzw. bei ip route mit aktiven VPN und ohne Häckchen den ersten Eintrag verhindern?

Schönes Wochenende allen und evtl. hat jemand die Lösung,
Bernd

TomL

Re: OpenVPN Server soll Internet Traffic nicht routen

Beitrag von TomL » 12.07.2020 18:39:54

BerndM hat geschrieben: ↑ zum Beitrag ↑
12.07.2020 16:33:27
ich habe mir einen VPN Server eingerichtet um von untwegs aus auf meine Daten zugreifen zu können. Er funktioniert auch gut. Nur leider wird auch der Internet Traffic über die VPN Leitung mit gerouted.
Ich weiss nicht, ob das tatsächlich so ist. Das solltest Du mal auf dieser Seite mit und ohne OpenVPN-Verbindung testen. Und beim Testen sollten VPN-Server und VPN-Client NICHT aus dem gleichen Netz werkeln. Das heisst, der OVPN-Server läuft normal zuhause über den DSL-Router, der OVPN-Client (zum Beispiel ein Laptop), verbindet sich über ein Smartphone, dass einen Accesspoint über Tethering öffnet. Damit verbindet sich der Laptop als VPN-Client letztlich über Deinen Handy-Provider und somit über das Internet nachhause zum Server.
  • Ohne OpenVPN sollte der Laptop nun auf der Seite unter Host-Info den Handy-Provider anzeigen
  • Mit OpenVPN wird m.M.n. bei Deiner Conf auch der Handy-Provider angezeigt, nur DNS-Anfragen laufen über den Server zuhause
  • Wenn tatsächlich der gesamte Traffic über das VPN geroutet werden würde, würde bei Host-Info der heimische DSL-Provider angezeigt werden, obwohl der Laptop über das Handy-Netz verbunden ist.
Ich will das über VPN nur die Daten zu meinen privaten Netz gehen und das zum Internet über das vorhandene Gateway.

Ist eigentlich kein Problem, wobei ich dann das VPN allgemein (also beim Surfen) deaktiviert lassen würde, dann stellt sich das Probem erst gar nicht. Und wenn ichs brauche, öffne ich eben die Verbindung nach hause, aber nur solange, wie ichs brauche. Für den Moment wärs mir dann auch egal, wenn das Surfen kurzzeitig etwas lahmer wäre. BTW, ich selber würde keinesfalls verbunden in einem fremden Netz via lokalem Gateway surfen und gleichzeitig einen Tunnel nach hause öffnen.
Lösung dazu habe ich eine gefunden.

Nimm einfach den push dns aus der server.conf raus, wenn Du sowieso über das lokale Gateway surfen willst, kannst Du auch die lokalen DNS-Surfer nutzen.
Hat jemand eine Ahnung wie ich dieses verhinden kann? Oder besser gesagt, wie ich dieses Häckchen mit der OpenVPN Server Konfiguration hinbekomme.
Ich habe echt keine Ahnung, was ein Häkchen bei der OpenVPN-Konfiguration ist. Ich nutze seit über 10 Jahren Openvpn, aber ich mach das immer alles direkt im Terminal, da gibts sowas nicht... und auch solche Probleme gibts da nicht ... tut mir leid.
Als Server nutze ich Debian 10 und als Client Debian 10 in VBox.
Auf beiden Geräte beides mal VPN in einer VM...? ... womöglich jeweils noch via Masquerading aus der VM? Wieso das denn? Das ist imho aber ein selbstgezimmerter Bremsklotz. Ich sehe darin überhaupt keine Vorteile ... weder sicherheitstechnisch, noch sonst was.

Und was mir auch aufgefallen ist, ist das völlige Fehlen von ca, cert und key in der Client.conf. Da wundert mich, dass überhaupt eine Verbindung zustande kommt. Steht wirklich nichts auffälliges im Log, hinsichtlich Authentifizierung, Schlüsselverhandlung, etc. ? Ich kann das irgendwie gar nicht glauben, dass das auf sichere Weise läuft.

BerndM
Beiträge: 21
Registriert: 20.05.2020 23:58:59

Re: OpenVPN Server soll Internet Traffic nicht routen

Beitrag von BerndM » 12.07.2020 23:16:00

Hallo Thomas,

recht vielen Dank für Deine Hilfe. Ich habe das jetzt mal mit der Seite von Dir getestet und mein Handy als Hotspot genutzt. Ich habe das nicht so gemacht, da meine Datenrate per Handy zu Hause unter alle grunzgrunz ist und ich keine verbindung erhalten hatte. Das iPhone oder mein provider blockieren 1194/UDP. Ich habe das jetzt auf 443/TCP umkonfiguriert und siehe da ich kann es nutzen.

Ich habe mit und ohne VPN zwei unterschiedliche IPv4 Addressen. Also sollte die Konfiguration so richtig sein. Den traceroute kann ich so vergessen. Aber ich sehe ja, dass ich auf meinen privaten Server draufkomme, wenn ich VPN aktiviert habe.

Den DNS Server push in der server.conf habe ich drin um die Namensauflösung von meinen internen Netz nutzen zu können. Ich habe keine Lust eine IP einzutippen oder auf jeden rechner die hosts zu pflegen.
Ich weiß nur nicht wie das Ganze funktioniert wenn ich mit meinen Laptop in einem anderen Netz bin, wo es auch einen lokalen DNS Server usw. gibt. Ich hoffe das dieser nicht überschrieben wird. Oder bleibt der meine ohne push für meine Domain beim VPN Client erhalten?

Die cert, key usw. habe ich nicht mit gepostet, da diese in der client1.ovpn mit direkt drin stehen. Das sind keine einzelnen Dateien. Macht einiges leichter, ist aber auch nicht so schön, da diese in Klartext drin stehen. Bin beim überlegen den google Authenticator mit zu nutzen. Das kommt dann ein anderes Wochenende mit drauf.

Die VMs nutze ich nur zum testen. Im Realbetrieb habe ich diese nicht in Benutztung. Für meine Arbeit nutze ich aber schon seit über 10 Jahre VMs, da Windows sehr oft neu installiert werden muss und ich dazu keinen Lust mehr hatte. Mit der heutigen Rechenleistung der Laptops ist das auch kein Problem. Meiner ist 5 Jahre (Dell Precision-M6800 mit 32GB RAM und 2xSSD) alt und ist noch schnell genug, das ich auch geschwindigkeitsintensive Programme nutzen kann. Die neuen Modelle mit PCIe SSD und i9/10 sind da noch schneller. Da schaffe ich es wohl kaum die CPU auf Dauer bei 100% zu bekommen. Und ich arbeite ab und zu mit 3 VMs parallel.

So, noch ein paar Tage Test und dann kommt das auf meinen richtigen Server drauf.

Danke,
Bernd

TomL

Re: OpenVPN Server soll Internet Traffic nicht routen

Beitrag von TomL » 13.07.2020 10:24:39

BerndM hat geschrieben: ↑ zum Beitrag ↑
12.07.2020 23:16:00
Ich habe mit und ohne VPN zwei unterschiedliche IPv4 Addressen. Also sollte die Konfiguration so richtig sein.
Gemäß Deiner Anforderung ist sie nicht richtig. Sowohl mit als auch ohne aktive VPN-Verbindung sollte auf der Seite immer die pseudo-öffentliche IP des Handys sowie bei Host-Info der Handy-Provider angezeigt werden. Wenn ich das richtig verstanden habe, wolltest Du doch zum Surfen das lokale Gastgeber-Gateway nutzen und nicht den Traffic über das Gateway des heimischen Routers umleiten.

Soweit es den 'push dns' angeht, da vermute ich, dass im Mobil-Netz bei Smartphone-VPN-Clients trotzdem der DNS des Handy-Providers verwendet wird, bei Smartphone-Tethering-Clients muss man den DNS zusätzlich manuell umbiegen, weil zunächst auch der des Handy genommen wird. Bei Verbindungen über öffentliche WLAN-Accesspoints kann es hingegen sein, dass DNS bei aktiver VPN-Verbindung wegen dem push vollständig über den Server zuhause abgewickelt wird und das alle DNS-Abfragen über den heimischen DSL-Router beantwortet werden. Das ist schwer so zu beantworten, weils zu viele Einflussgrößen gibt und man kann/sollte das deswegen ausgiebig testen.

BerndM
Beiträge: 21
Registriert: 20.05.2020 23:58:59

Re: OpenVPN Server soll Internet Traffic nicht routen

Beitrag von BerndM » 13.07.2020 12:53:58

Das meine Wahrnehmung der unterschiedlichen IP falsh ist, ist mir heute Morgen aufgefallen.

Der push DNS funktioniert auch über mein Handy. Das ist ja eine Anweisung für den Laptop und nicht für das Handy. Aber auch auf den Handy selber, also wenn ich mittels VPN auf mein Netzwerk zugreife funktioniert ohne Probleme. Ich kann bei beiden auf mein internes Netz zugreifen.

Warum der Internet Traffic immer über den VPN geht, obwohl diesbezüglich ich keine Konfiguration gemacht habe und nur eine Umkonfiguration des VPN Clients das behebt verstehe ich nicht. Ich könnte zwar verhindern das alle VPN Clients außerhalb meines IP Bereiches mittels iptables zugreifen. Das birgt leider die Gefahr das ich auch den VPN Server selber davon abklemme.

Gibt es denn keine Option für die ovpn Konfigurationsdatei die dieses Häckchen macht?

Grüße,
Bernd

Benutzeravatar
bluestar
Beiträge: 2427
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: OpenVPN Server soll Internet Traffic nicht routen

Beitrag von bluestar » 13.07.2020 12:55:28

Wie startest du OpenVPN auf deinem Client?

TomL

Re: OpenVPN Server soll Internet Traffic nicht routen

Beitrag von TomL » 13.07.2020 14:24:56

BerndM hat geschrieben: ↑ zum Beitrag ↑
13.07.2020 12:53:58
Der push DNS funktioniert auch über mein Handy. Das ist ja eine Anweisung für den Laptop und nicht für das Handy. Aber auch auf den Handy selber, also wenn ich mittels VPN auf mein Netzwerk zugreife funktioniert ohne Probleme. Ich kann bei beiden auf mein internes Netz zugreifen.
Push DNS hat nichts mit dem Zugriff auf Dein Heim-Netz zu tun, sondern damit, wo bei aktiver VPN-Verbindung die DNS-Abfragen beantwortet werden.
BerndM hat geschrieben: ↑ zum Beitrag ↑
13.07.2020 12:53:58
Warum der Internet Traffic immer über den VPN geht, obwohl diesbezüglich ich keine Konfiguration gemacht habe und nur eine Umkonfiguration des VPN Clients das behebt verstehe ich nicht.
Was meinst Du damit? Bezogen auf DNS oder auf etwas anderes? Eine Umkonfiguration welcher Art?
BerndM hat geschrieben: ↑ zum Beitrag ↑
13.07.2020 12:53:58
Gibt es denn keine Option für die ovpn Konfigurationsdatei die dieses Häckchen macht?
In welchem Programm? Um was zu erreichen? OpenVPN ist kein grafisches Programm und benötigt auch keinen grafischen Dialog. Das ist ein sehr systemnahes Programm zur Herstellung verschlüsselter Transfernetze. Häckchen irgendwo brauchts da nicht.

Antworten