peterh96
Goto Top

Raspberry PI als VPN Client - Zugriff auf VPN LAN

Hallo,

ich möchte einen Raspberry PI als OpenVPN Client in mein Netzwerk stellen.

Dieser soll es möglich machen, vom Client LAN (192.168.178.0/24) auf die VPN Subnetze 10.0.1.0/24 und 10.1.0.0/24 zugreifen zu können.

Ich würde dann bei meiner Fritzbox in der Routingtabelle die beiden Subnetze auf den Raspberry PI umleiten.

Was muss ich am Raspberry PI machen, damit diese Anfragen auch im VPN LAN ankommen?

Vielen Dank im Voraus.

Content-Key: 312483

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

Printed on: April 19, 2024 at 02:04 o'clock

Member: PeterH96
PeterH96 Aug 12, 2016 at 17:24:02 (UTC)
Goto Top
Lösung:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
Member: aqui
aqui Aug 13, 2016, updated at Jan 30, 2022 at 13:46:30 (UTC)
Goto Top
Eine "Silbertablet Anleitung" findest du, wie immer, hier im Forum:
IKEv2 VPN Server für Windows und Apple Clients mit Raspberry Pi

Der "Masquerading" Tip oben ist Unsinn wenn der RasPi als VPN Client laufen solll, vergiss das !
Den RasPi als OpenVPN Client zu installieren ist ein Kinderspiel... Guckst du hier:
https://jankarres.de/2014/10/raspberry-pi-openvpn-vpn-client-installiere ...
bzw. auch hier:
OpenVPN Server installieren auf pfSense Firewall, Mikrotik. DD-WRT oder GL.inet Router

Die beiden 10er IP Netze werden dir automatisch vom OpenVPN Server auf den RasPi als Client in die Routing Tabelle injiziert. Das kannst du mit netstat -r -n sehen oder mit ip route show auf dem RasPi.

Wichtig ist nur das deine Endgeräte im Netz den RasPi als Gateway für die 10er Netze finden. Da sie die FritzBox als Default Gateway haben musst du zwingend der FritzBox eine statische Route auf die 10er Netze eintragen !!
Entweder einen globale Route:
Zielnetz: 10.0.0.0, Maske 255.252.0.0, Gateway: <LAN-IP_Adresse_RasPi>

Dann werden ALLE 10.0.0.0 bis 10.3.255.255 Netze zum RasPi geroutet. Oder du kannst das auch dediziert machen:
Zielnetz: 10.0.1.0, Maske 255.255.255.0, Gateway: <LAN-IP_Adresse_RasPi>

Zielnetz: 10.1.0.0, Maske 255.255.255.0, Gateway: <LAN-IP_Adresse_RasPi> //

Das wars.... Schon rennt dein VPN
P.S.: Warum hast du selber den Thread auf gelöst geklickt ?? War er denn jetzt schon gelöst ??
Member: PeterH96
PeterH96 Aug 13, 2016 at 13:31:34 (UTC)
Goto Top
Ja klar, auf dem RasPi hatte ich Zugriff auf die beiden Netze, aber wenn ich diese Netze in der Routingtabelle der FritzBox angegeben habe, hatte ich von Clients die die Fritzbox als Gateway eingetragen haben dennoch keinen Zugriff auf diese Netze.

P.S.: Ja, mit den beiden Regeln ist das Thema gelöst!
Member: aqui
aqui Aug 13, 2016 at 17:02:34 (UTC)
Goto Top
Was denn nun ?? Du hast weiterhin keine Zugriff aber das Problem ist gelöst ?
Bahnhof ??
Wenn ip route show die Erreichbarkeit der Netze im Tunnel anzeig, dann ist IP technisch alles in Ordnung..
Wenn die Erreichbarkeit dann noch scheitert kann es nur nioch an der lokalen Firewall der Endgeräte liegen. (Windows)
Member: PeterH96
PeterH96 Aug 13, 2016 at 20:59:21 (UTC)
Goto Top
Ja nur mit den beiden iptables Regeln funktioniert es.
Member: aqui
aqui Aug 14, 2016 updated at 09:20:38 (UTC)
Goto Top
Das bedeutet dann das der Client NAT (IP Adress Translation) macht im Tunnel. Er setz also alle IPs zentral auf die Tunnel IP als Absender Adresse um.
Genau das gleiche also was ein DSL Router zum Provider hin macht.
Wenn du nicht von außen auf das Netz zugreifen willst kannst du das so lassen. Wenn du zugreifen willst hast du das Problem das die NAT Firewall den Zugriff verhindert. Der klassiche Nachteil wenn man NAT (Masquerading) macht !

Der Grund warum es bei dir mit transparentem Routing nicht funktioniert sind die fehlenden statischen Routen im Router !
Das gilt natürlich für BEIDE Seiten ! In der jeweiligen Routing Tabelle müssen die jeweils lokalen Netze über den Tunnel Link erreichbar sein ! netstat -r -n oder ein ip route show zeigen dir das auf beiden Seten bei unixoiden OS. Bei Winblows ist es route print.
Hättest du die konfiguriert würde es auch ohne NAT / Masquerading gehen !
Traceroute ist hier immer dein Freund !
Member: PeterH96
PeterH96 Aug 14, 2016 at 10:19:10 (UTC)
Goto Top
Auf der Fritzbox sind beide Netze auf den Raspberry geroutet.

Routing Tabelle des Raspberrys:
root@raspberrypi:~# ip route show
default via 192.168.178.150 dev eth0  metric 202
10.0.1.0/24 via 10.0.2.1 dev tun0
10.0.2.0/24 dev tun0  proto kernel  scope link  src 10.0.2.2
10.1.0.0/24 via 10.0.2.1 dev tun0
192.168.178.0/24 dev eth0  proto kernel  scope link  src 192.168.178.8  metric 202

Traceroute von einem Windows Client:
Routenverfolgung zu 10.0.1.1 über maximal 30 Hops

  1    <1 ms    <1 ms    <1 ms  192.168.178.150
  2    <1 ms    <1 ms    <1 ms  raspberrypi.fritz.box [192.168.178.8]
  3     *        *        *     Zeitüberschreitung der Anforderung.
  4     *        *        *     Zeitüberschreitung der Anforderung.
  5  ^C

Meine FritzBox: 192.168.178.150

Und dennoch kann ich von einem Client der meine FritzBox als Gateway eingetragen hat ohne diese beiden iptables Regeln nicht auf einen Client in einem der beiden Subnetzte zugreifen.
Member: aqui
aqui Aug 15, 2016 updated at 08:54:01 (UTC)
Goto Top
Ist die 10.0.2.0 dein internes OVPN Netzwerk ?? Hoffentlich dann auch mit einem 24 Bit Prefix, oder ??
Ansonsten überschneidet sich das mit den externen Netzen.
Die Routing Tabelle ist ja soweit richtig wie du sehen kannst. Beide Netze werden in den Tunnel geroutet und der RasPi hat die .178.150, richtig ?
Hoffentlich statisch und kein DHCP am RasPi.

So gesehen ist IP technisch alles richtig. Das der Ping und Traceroute fehlschlägt kann dann nur noch eine Folge der internen Windows Firewall sein die per se ICMP (Ping, Traceroute) blockt.
https://www.windowspro.de/tipp/ping-windows-7-server-2008-r2-zulassen