[erledigt] Wie wird die richtige Route gesetzt?

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
TomL

[erledigt] Wie wird die richtige Route gesetzt?

Beitrag von TomL » 26.02.2015 19:31:40

Moin

Heute morgen habe ich erfolgreich OpenVPN Version 2.3.6 auf einem Wheezy-Test-PC in Betrieb genommen. Und es funktioniert so weit prächtig. Ich kann von "draussen" via DynDNS rein ins Heimnetz, kann die Serverplatten auswählen, Ressourcen öffnen, wie z.b. ne Web-Cam, das klappt also alles. Nur kriege ich es jetzt mit dieser Version nicht mehr hin, dass ich von "draussen" via VPN über meinen Router surfen kann. Ich hatte das im letzten Sommer schon mal komplett fertig. Aber ich habs nicht mehr oder finde es nicht mehr, wie ich das gemacht habe ... mittlerweile sind ja alle Maschinen neu aufgesetzt, oder ausgetauscht.... ich habs wohl verloren. :cry:

In meiner Server-OpenVpn.conf ist

Code: Alles auswählen

push "redirect-gateway def1"
push "route 10.10.10.0 255.255.255.0"
enthalten. Das heisst wohl, sämtlicher auf meinem Heim-Router auf dem entsprechenden Port ankommender Traffic wird zu meinem OpenVpn-Server weiter geroutet, und von dort ins heimische LAN. Das funktioniert. Aber leider wird der fürs Internet-Surfen gedachte Traffic nicht wieder weiter aufs Standard-Gatewway (meinen Router) zurückgeleitet, und damit ins Web .... weil angeblich eine statische Route fehlt. Aber wo, wie, welche? Wie mache ich sowas? Wie richte ich die passende Route ein? Hier sind meine Netzwerkkenntnisse im Moment maßlos überfordert.

So sieht mein Netz aus:

Code: Alles auswählen

LAN-Umgebung:
==============
Heim-Netz           10.10.10/24   Zuhause (Server, Clients)
VPN-Netz            10.10.20/24   "Draußen"-Netz (Tablet, Smartphone, Laptop)

WAN-IP              104.2.3.119   Provider zuhause
WISP-IP             192.168.1.1   öffentlicher AP

Standard-Gateway    10.10.10.1    DSL-Router/Web-Interface
PC1                 10.10.10.2    PC1 als 'einfacher' File-Server im LAN
                    10.10.20.1    PC1 ist gleichzeitig auch VPN-Server
PC2                 10.10.10.3    Workstation
PC3                 10.10.10.4    Workstation

Outdoor-PC          10.10.20.6    z.B. Web-Notbook oder Laptop als Road-Warrior, etc.

                            
                              +---------------+    
Netzwerk 1: 10.10.10/24       |PC 1 (RasPI)   |    +---------------+
+-----------------------+     |File-SRV       |    |     PC 2      |    +---------------+
|Standard-Gateway/      |     |eth:10.10.10.2 |    | Workstation   |    | Web-Cam3      |    +---------------+
|DSL-Router/Web-Interf. |     |OpenVPN-SRV    |    |               |    |               |    |     PC n      |
|DNS: myLAN.dyndns.org  |     |tun:10.10.20.1 |    |eth:10.10.10.3 |    |               |    | Workstation   |
|eth: WAN-IP 104.2.3.119|     +--+------------+    |               |    |eth:10.10.10.4 |    |               |
|eth: LAN-IP 10.10.10.1 |        |                 +--+------------+    |               |    |eth:10.10.10.n |
|Route:  10.10.20.0 >   |        |                    |                 +--+------------+    |               |
|           > 10.10.10.2|        |                    |                    |                 +--+------------+
+-----------------------+--------+--------------------+--------------------+--------------------+--->>
          ||                
          ||                                                                                    
          ||
          ||
+-----------------------+                         +---------------+
|WEB-Interface: ?       |                         |  Outdoor-PC   |
|DNS: ?                 |<------------+           |(Road-Warrior) |
|eth: WAN-IP v.Provider |            /            |               |
|eth: LAN-192.168.1.1   |           +------------>|eth:192.168.1.8|  Netzwerk 3: 10.10.20/24
|                       |                         |tun:10.10.20.6 |  OpenVPN-Tunnel via Internet
+-----------------------+                         +---------------+
Netzwerk 2: 192.168.1/24
(Unbekanntes Netzwerk (WISP = Hotel, Hotspot, UMTS))
Zuletzt geändert von TomL am 08.03.2015 14:49:36, insgesamt 1-mal geändert.

Benutzeravatar
chroiss
Beiträge: 332
Registriert: 29.10.2004 09:29:43
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: BREMEN (in Wellington,NZ a.D) (in OLDENBURG a.D.) (in BREMEN a.D.) (in COLOGNE a.D.)

Re: Wie wird die richtige Route gesetzt?

Beitrag von chroiss » 27.02.2015 08:22:28

Hallo,

zu der Route:

Auf dem StdGW 10.10.10.1 muss die Rueckroute fuer das Openvpn-Netz eingetragen werden. Soetwas wie

Code: Alles auswählen

route add -net 10.10.20.0/24 dev eth0 gw 10.10.10.2
Und ich glaube die Ovpn-server.conf sollte folgendene (vollstaendige) Anweisung haben:
(Ich benutze Version: 2.2.1 --- also bin ich mir mit 2.3.6 nicht sicher)

Code: Alles auswählen

push "redirect-gateway"
push "route-gateway 10.10.20.1"
push "route 10.10.10.0 255.255.255.0"
Zudem sollte der Raspi (ovpn-server) ip forwarding erlauben:

Code: Alles auswählen

echo 1 > /proc/sys/net/ipv4/ip_forward
Gruesse
chroiss
"The only secure computer is one that's unplugged, locked in a safe, and buried 20 feet under the ground in a secret location... and I'm not even too sure about that one"--Dennis Huges, FBI.

TomL

Re: Wie wird die richtige Route gesetzt?

Beitrag von TomL » 27.02.2015 17:07:39

Moin

Danke für Deine Antwort.... aber leider hats nicht geklappt..... :roll: ... Auf meiner Fritzbox war die Route schon so eingetragen, wie Du beschrieben hast. Ebenso war in der Server.Conf schon der Redirect und die Route enthalten, auch so, wie Du beschrieben hast. Wenn ich jedoch push "route-gateway 10.10.20.1" hinzufüge, funktioniert gar nichts mehr. Ich habe natürlich auch kontrolliert, ob die

Code: Alles auswählen

nano /etc/sysctl.conf                                  
---> net.ipv4.ip_forward=1 
und ob die

Code: Alles auswählen

/proc/sys/net/ipv4/ip_forward
---> 1
enthält. Ist alles korrekt. Jetzt eben habe ich noch mal alle meine Steps mit diesem Wiki-Artikel abgeglichen, und entsprechend mit

Code: Alles auswählen

iptables -t nat -A POSTROUTING -o eth0 -s 10.10.20.0/24 -j SNAT --to 10.10.10.12
auch die Iptables gesetzt (IP 12 ist im Moment mein Testrechner mit dem VPN) ... aber auch das war erfolglos. Das Elend ist, dass es einfach "schweigend" nicht funktioniert. Ich kriege im VPN-Server-Log noch nicht mal ne Fehlermeldung. Innerhalb des Netzes funktioniert alles. Nur wird der vom "Roadwarrior" kommende und fürs Internet gedachte Traffic nicht vom VPN-Server wieder zurück zum Standard-Gateway (die Fritzbox) und ins Web geroutet. Ich denke, die "Anfragen" hängen einfach mangels Route auf dem Raspi fest, und ich weiss nicht, wie ich sie weiter auf Reise schicken kann.

Was mich an der Stelle besonders irritiert, ist der fehlende Inhalt. Wenn ich das auf Konsole mache, ist dennoch nix in den IPtables enthalten:

Code: Alles auswählen

root@raspi3:/home/thomas# iptables -t nat -A POSTROUTING -o eth0 -s 10.10.2.0/24 -j SNAT --to 10.10.1.12
root@raspi3:/home/thomas# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

dufty2
Beiträge: 1711
Registriert: 22.12.2013 16:41:16

Re: Wie wird die richtige Route gesetzt?

Beitrag von dufty2 » 27.02.2015 17:56:30

Wie das Plural-s von "iptables" schon vermuten lässt, gibt es mehrere "tables", daher

Code: Alles auswählen

# iptables -L -n -t nat
Ohne die "-t ..."-Angabe wird als Default die table "filter" benutzt, somit ist gleich

Code: Alles auswählen

# iptables -L -n -t filter
# iptables -L -n

Benutzeravatar
chroiss
Beiträge: 332
Registriert: 29.10.2004 09:29:43
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: BREMEN (in Wellington,NZ a.D) (in OLDENBURG a.D.) (in BREMEN a.D.) (in COLOGNE a.D.)

Re: Wie wird die richtige Route gesetzt?

Beitrag von chroiss » 28.02.2015 04:07:14

Der iptables Eintrag ist unnoetig, wenn richtig geroutet wird. Und das hast du mit der Route auf der Fritzbox.

Code: Alles auswählen

iptables -t nat -A POSTROUTING -o eth0 -s 10.10.20.0/24 -j SNAT --to 10.10.10.12
(snat sollte man vermeiden, wenn man kann. und das kann man sehr gut in diesem fall :) )

Und wenn du die Fritzbox anpingen kannst von deinem Client-Rechner aus einem Fremdnetz mit aufgebautem Tunnel. Dann weisst du dass die Route auch funktioniert. Genauso weiss du, dass ip_forwarding angeschaltet ist auf dem Raspi. Jetzt ist die Frage wie denn deine routing-Tabelle auf deinem Client aussieht. Wird dein Standardgateway ueberhaupt umgebogen auf 10.10.20.1 ? Manche Clients haben Probleme mit den Push Anweisungen des Servers, so dass das GW nicht umgebogen wird. Eventuell hilft, dann ein Eintrag in der Client.conf

Code: Alles auswählen

route-gateway 10.10.20.1
redirect-gateway
Viele Gruesse
chroiss
"The only secure computer is one that's unplugged, locked in a safe, and buried 20 feet under the ground in a secret location... and I'm not even too sure about that one"--Dennis Huges, FBI.

Antworten