fundave3
Goto Top

Openvpn Routing in beide richtungen

Guten Abend,

Ih brauche mal einen Rat, da ich gerade einen Denkfehler habe.
Meinen Raspberry nutze ich als Openvpn Gateway um auf die VMs die auf meinem Dedicated Server liegen in einem eigenen Netz zuzugreifen.
Dabei möchte ich von dem Server Netz auch Zugriff auf mein Heimnetz haben, da ich noch eine NAS Zuhause habe.
Mein Aufbau sieht wie folgt aus :

Openvpn Server hat zwei Adressen:
virbr1 : 10.210.13.1/24
tun0 : 10.194.22.1/24

Mittels client-config-dir habe ich dem PI eine Statische Adresse gegeben.
ifconfig-push 10.194.22.50 255.255.255.0
iroute 10.211.14.0 255.255.255.0
Auf dem Client habe ich die Route der gegenstelle eingesetz.
route 10.210.13.0/24

Die Firewallregeln auf dem Server

iptables -I FORWARD -i virbr1 -o tun0 -s 10.210.13.0/24 -d 10.211.14.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -I FORWARD -i tun0 -o virbr1 -s 10.211.14.0/24 -d 10.210.13.0/24 -m conntrack --ctstate NEW -j ACCEPT
Also ohne NAT.
Die Entsprechende Route liegt ja schon an.

Firewallregeln auf Raspberry

iptables -t nat -F POSTROUTING
iptables -t nat -A POSTROUTING -o eth0 -s 10.210.13.0/24 -j MASQUERADE


ICh komme von Server --> Raspberry in mein Heim Netz
ICh kann das Netz von Raspberry --> Server Netz
Aber ich kann nicht von Heimnetz ins Server Netz.
Eine Statische route habe ich in dem Router für das Netz 10.210.13.0/24 eingetragen mit dem Gateway Raspberry.
IP Forwarding ist auch aktiviert.
Die Route 10.210.13.0'/24 habe ich in der Client Config eingetragen.

Doch ich vermute es macht wenig Sinn mit NAT auf einer Seite und ohne NAT auf der anderen Seite zu arbeiten.

Wie bekomme ich das Sauber hin ? Irgendwo habe ich einen Denkfehler.

Vielen Dank

Content-ID: 383923

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

Ausgedruckt am: 05.11.2024 um 12:11 Uhr

aqui
aqui 21.08.2018 aktualisiert um 11:53:11 Uhr
Goto Top
Doch ich vermute es macht wenig Sinn mit NAT auf einer Seite und ohne NAT auf der anderen Seite zu arbeiten.
Ja, da hast du Recht. NAT im internen Netzwerk zu machen ist vollkommener Blödsinn und muss nicht sein. Schafft nur mehr Probleme.
Nochmal die Fakten:
  • Der Raspberry mit dem OVPN Server liegt in deinem lokalen Netz ?
  • Der dedicated Server ist wo ? Internet Hoster oder auch bei dir im lokalen Netz ?
Eine kleine Topologie Skizze wäre hilfreich hier, da nicht 100% klar ist wie dein Design aussieht.
Dabei möchte ich von dem Server Netz auch Zugriff auf mein Heimnetz haben
Wenn der RasPi im Heimnetz liegt ist das eigentlich Default, denn der schickt ja mit "push route x.y.z.0" die Heimnetz Route automatisch an den Client.
Soll vom Client das lokale Netz auch an den OVPN Server bekannt gemacht werden muss in die Client Konfig das "route" oder "ip route" Kommando.
Hier hilft immer die Routing Tabelle sowohl des Clients als auch des Servers weiter ob die korrekt ist.
netstat -r -n bei Linux und route print bei Winblows.
Die zeigt dir genau was wohin geroutet wird wenn das VPN aktiv ist.
Dein Internet Router im Heimnetz muss 2 statische Routen haben:
  • Einmal die ins OVPN Netz
  • Einmal die ins Netz was hinter dem OVPN Client ist.
Wenn du dort z.B. nur 10er IPs hast, dann kannst du auch eine Summary Route dort eintragen wie:
ip route 10.210.0.0 255.254.0.0 <lokale_ip_adresse_ovpn_server>

Das routet dir dann alle Netze von 10.210.0.0 bis 10.211.0.0 auf den OVPN Server.
Ebenso hilfreich wäre mal ein Traceroute auf die Zielsysteme.
Traceroute zeigt dir die Routing Hops einzeln an. Da siehst du dann immer gleich wo es hängt. Dort wo es hängt ist meist auch der (Routing) Fehler !
fundave3
fundave3 23.08.2018 um 20:59:05 Uhr
Goto Top
Soo also ich bin auf eine Lösung gekommen.

Da mein PI das VPN Netz( 10.194.22.0/24 )kennt da er ja Mitglied ist,brauche ich ja dort keine Route.
In dem Fall muss ich lediglich Statische Routen in meinem Standard Router Für
10.210.13.0(Server Netz) --> Über Raspi angeben.
Wenn man IP Forwarding dauerhaft aktiviert , funktioniert das sogar nach einem Reboot face-smile Faszinierend was ....

In dem Fall musste ich die Firewallregeln auf beiden Seiten gleich setzen.
Auf dem Server

iptables -I FORWARD -i virbr1 -o tun0 -s 10.210.13.0/24 -d 10.211.14.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -I FORWARD -i tun0 -o virbr1 -s 10.211.14.0/24 -d 10.210.13.0/24 -m conntrack --ctstate NEW -j ACCEPT

Das Geiche auf dem PI für das VPN Netz und mein privates Netz.

iptables -I FORWARD -i eth0 -o tun0 -s 10.211.14.0/24 -d 10.210.13.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -I FORWARD -i tun0 -o eth0 -s 10.210.13.0/24 -d 10.211.14.0/24 -m conntrack --ctstate NEW -j ACCEPT

Simsalabim und ich kann transparent Routen.

Interesannt wenn man den Fehler findet.
Wichtig: Die Regeln gelten ja nur im Betrieb. Also nach dem NEustart nicht mehr.
ICh habe diese dann noch in die /etc/rc.local geschrieben. Dann funtkioniert es auch.

Vielen Dank.
aqui
aqui 24.08.2018 um 11:57:01 Uhr
Goto Top
Auf dem Pi ist mit normalem Raspian eigentlich keinerlei iptables aktiv ?!
Fragt sich also warum du daran rumfummeln must ?!
Aber egal....wenns nun klaptt ist ja alles perfekt ! face-wink