Wireguard VPN mit 2x RaspberryPI LAN zu LAN
Hallo zusammen,
ich habe mich die letzten Tage mit der grundsätzlichen Funktion von Wireguard auseinander gesetzt und konnte das Zielnetzwerk über verbundene Clients erreichen und auf allen Geräten arbeiten. Dazu habe ich einen Wireguard Server mit einem Raspberry PI abgebildet.
Auf den Clients dann die entsprechende APP installiert und die PeerX.conf verteilt. Eben eine Config pro Client
Jetzt möchte ich jedoch ein anderes Szenario abbilden, und zwar möchte ich das Zielnetzwerk von mehreren Geräten aus einem gemeinsamen LAN erreichen über einen weiteren Raspberry PI. ... Siehe dazu mein Bild.
PC1 PC2 PC3 (nur als Beispiel), sollen am ende das NAS erreichen und die VPN des Lokalen Raspberry PI benutzen.
Nach meiner Vorstellung habe ich den Raspberry PI auf "meiner Seite" als Client eingerichtet und den auf der "Vater Seite" als Server. Ich dachte mit einer Statischen Route in meinem Router wär es getan, leider verwirft der Raspberry auf eth0 die Pakete:
Im Edgerouter habe ich zum Test folgende Statische Routen hinterlegt:
Hier die Configs dazu:
Server Seite Vater Raspberry PI
Client Seite ICH Raspberry PI
Soweit so gut, von meinem RaspberryPI kann ich nun die gegen Seite erreichen und die gegen Seite mich.
Desweiteren kann ich das 192.168.178.0/24 von meinem Raspberry aus erreichen.
Bisher alles so wie es soll, jedoch erreiche ich von meinem 192.168.100.0/24 Netz weder das 192.168.201.0/24 Netz, noch das 192.168.178.0/24.
Ich habe das Gefühl, ich müsse noch irgendetwas in den iptables machen oder aber mir fehlt ein Teil (NAT?), damit der Raspberry auf meiner Seite nicht gleich alles verwirft...
Hat jemand Rat um am Ende die gegen Seite von allen Geräten aus zu erreichen?
ich habe mich die letzten Tage mit der grundsätzlichen Funktion von Wireguard auseinander gesetzt und konnte das Zielnetzwerk über verbundene Clients erreichen und auf allen Geräten arbeiten. Dazu habe ich einen Wireguard Server mit einem Raspberry PI abgebildet.
Auf den Clients dann die entsprechende APP installiert und die PeerX.conf verteilt. Eben eine Config pro Client
Jetzt möchte ich jedoch ein anderes Szenario abbilden, und zwar möchte ich das Zielnetzwerk von mehreren Geräten aus einem gemeinsamen LAN erreichen über einen weiteren Raspberry PI. ... Siehe dazu mein Bild.
PC1 PC2 PC3 (nur als Beispiel), sollen am ende das NAS erreichen und die VPN des Lokalen Raspberry PI benutzen.
Nach meiner Vorstellung habe ich den Raspberry PI auf "meiner Seite" als Client eingerichtet und den auf der "Vater Seite" als Server. Ich dachte mit einer Statischen Route in meinem Router wär es getan, leider verwirft der Raspberry auf eth0 die Pakete:
PING 192.168.201.201 (192.168.201.201): 56 data bytes
Request timeout for icmp_seq 0
92 bytes from 192.168.100.1: Redirect Host(New addr: 192.168.100.200)
Vr HL TOS Len ID Flg off TTL Pro cks Src Dst
4 5 00 0054 4077 0 0000 3f 01 8be8 192.168.100.47 192.168.201.201
Im Edgerouter habe ich zum Test folgende Statische Routen hinterlegt:
Route type = gateway
Destination network = 192.168.201.0/24
Next hop address = 192.168.100.200
Route type = gateway
Destination network = 192.168.178.0/24
Next hop address = 192.168.100.200
Hier die Configs dazu:
Server Seite Vater Raspberry PI
[Interface]
Address = 192.168.201.200/24
ListenPort = 51820
PrivateKey = XXX
#replace eth0 with the interface open to the internet (e.g might be wlan0)
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
#Client ICH
[Peer]
PublicKey = XXX
AllowedIPs = 192.168.201.201/32
Client Seite ICH Raspberry PI
[Interface]
Address = 192.168.201.201/32
DNS = 192.168.178.1
PrivateKey = XXX
#replace eth0 with the interface open to the internet (e.g might be wlan0)
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
#Server VATER
[Peer]
PublicKey = XXX
Endpoint = eine.ddnss.org:51820
AllowedIPs = 192.168.201.0/0, 192.168.178.0/24
Soweit so gut, von meinem RaspberryPI kann ich nun die gegen Seite erreichen und die gegen Seite mich.
Desweiteren kann ich das 192.168.178.0/24 von meinem Raspberry aus erreichen.
Bisher alles so wie es soll, jedoch erreiche ich von meinem 192.168.100.0/24 Netz weder das 192.168.201.0/24 Netz, noch das 192.168.178.0/24.
Ich habe das Gefühl, ich müsse noch irgendetwas in den iptables machen oder aber mir fehlt ein Teil (NAT?), damit der Raspberry auf meiner Seite nicht gleich alles verwirft...
Hat jemand Rat um am Ende die gegen Seite von allen Geräten aus zu erreichen?
root@danielraspi:~# ping 192.168.178.1
PING 192.168.178.1 (192.168.178.1) 56(84) bytes of data.
64 bytes from 192.168.178.1: icmp_seq=1 ttl=63 time=32.0 ms
64 bytes from 192.168.178.1: icmp_seq=2 ttl=63 time=31.10 ms
64 bytes from 192.168.178.1: icmp_seq=3 ttl=63 time=31.7 ms
64 bytes from 192.168.178.1: icmp_seq=4 ttl=63 time=31.6 ms
64 bytes from 192.168.178.1: icmp_seq=5 ttl=63 time=32.0 ms
Daniels-MacBook-Pro:~ xxx$ traceroute 192.168.178.1
traceroute to 192.168.178.1 (192.168.178.1), 64 hops max, 52 byte packets
1 192.168.100.1 (192.168.100.1) 1.411 ms 0.885 ms 1.087 ms
2 192.168.100.200 (192.168.100.200) 1.375 ms 3.218 ms 1.443 ms
3 * * *
4 * * *
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 624694
Url: https://administrator.de/contentid/624694
Ausgedruckt am: 22.11.2024 um 12:11 Uhr
24 Kommentare
Neuester Kommentar
Die iptable – auf "Serverseite" – ist mMn. korrekt. Meine hier funktioniert zumindest und sieht – before caffee – genauso aus.
a) Ich würde sie aber mal testhalber auf "Clientseite" deaktivieren. Die macht dort eh nur in einem Site2Site-Setup Sinn.
b) Das Fehlerbild kommt mir bekannt vor und klingt nach einem Fehler in den "Allowed-IPs" des Cients:
Bin ... immer noch ohne Kaffee ... wackelig, aber ich habe da nirgends 0/0 drin. Das klappte bei mir trotz diverser Tipp-Seiten nicht. Die "interne" VPN-NAT-Gegenstelle hat bei mir /32 und das dortige "Realnetzwerk" bekommt 0/24. Damit läufts hier seit Monaten dauerhaft stabil auch mit mehreren Clients. Du kannst aber natürlich auch erstmal nur die IP des NAS/32 nehmen.
Viel Erfolg!
a) Ich würde sie aber mal testhalber auf "Clientseite" deaktivieren. Die macht dort eh nur in einem Site2Site-Setup Sinn.
b) Das Fehlerbild kommt mir bekannt vor und klingt nach einem Fehler in den "Allowed-IPs" des Cients:
Bin ... immer noch ohne Kaffee ... wackelig, aber ich habe da nirgends 0/0 drin. Das klappte bei mir trotz diverser Tipp-Seiten nicht. Die "interne" VPN-NAT-Gegenstelle hat bei mir /32 und das dortige "Realnetzwerk" bekommt 0/24. Damit läufts hier seit Monaten dauerhaft stabil auch mit mehreren Clients. Du kannst aber natürlich auch erstmal nur die IP des NAS/32 nehmen.
Viel Erfolg!
ch habe das Gefühl, ich müsse noch irgendetwas in den iptables machen
Ja, du machst NAT im inneren Tunnel was natürlich völliger Quatsch ist. Daraus resultieren die ganzen Probleme denn damit ist kein transparentes Routing zwischen beiden Netzen möglich. Die gesamte Verwendung von iptables und damit auch NAT ist bei eigenen Netzen ja völlig überflüssig und auch kontraproduktiv. Vergiss den Unsinn also und lasse das weg. Wozu willst du NAT in deinen eigenen Netzen machen ? Sinnfrei...und schafft durch die Routing Einbahnstrasse nur Probleme.Dein ganzes Site-to-Site VPN Konzept ist eigentlich völlig krank und solltest du nochmals überlegen. Wozu hast du denn potente VPN Router in beiden Netzen beschafft die problemlos ein Site-to-Site VPN abbilden können ?
Es ist doch völlig unsinnig dann diese Router nicht zu nutzen und das unsinnigerweise über einen RasPi in jedem Netz zu quälen. Den Sinn und die Logik dieses VPN Konzeptes versteht doch kein Mensch ??
Benutze deine 2 VPN Router um die VPN Netzwerk Kopplung zu machen und gut iss...
Ein Routing ist denke ich auf keinen der Raspberrys aktiv, was müsste ich dafür tun?
Einfach einmal Tutorials lesen ! weiß gerad nicht obs ne rolle spielt.
Nein, spielt natürlich keinerlei Rolle...dzzzzWas bei OpenVPN gilt, gilt auch bei Wireguard:
Merkzettel: VPN Installation mit OpenVPN
Ändert aber nichts an 2 weiteren Kardinalsfehlern:
- NAT im Tunnel ist Unsinn
- Generell falsches VPN Konzept. Warum kauft man teure Router fürs Netz die man dann gar nicht Bestimmungs gemäß nutzt ? Aber egal....
@aqui:
Das Thema VPN/NAT wird zwar immer beschimpft. Nur basieren alle(?) Wireguard-Anleitungen auf NATen. Zumindest die, die mir untergekommen sind - und das waren doch einige.
Für Dich ist das aber doch nen Klacks? Wir müsste denn so ein Wireguard(!)-Setup ohne NAT aussehen? Mich würde das wirklich in der Umsetzung interessieren. Nur hilft mir dabei keine Verlinkung auf die - sicherlich sehr ausgefeilte - OpenVPN-Anleitung
@danone:
Fürn Raspi gibts doch umfangreiche Anleitungen, teilweise sogar mit fertigen Scripts für Wirguard und PiHole, da ist das Routing schon fix und fertig. Ansonsten das hier prüfen: https://linuxize.com/post/how-to-set-up-wireguard-vpn-on-ubuntu-20-04/#s ...
Hier ggfs. noch den 51820 freigeben: https://www.heise.de/tipps-tricks/Ubuntu-Firewall-einrichten-4633959.htm ...
Das Thema VPN/NAT wird zwar immer beschimpft. Nur basieren alle(?) Wireguard-Anleitungen auf NATen. Zumindest die, die mir untergekommen sind - und das waren doch einige.
Für Dich ist das aber doch nen Klacks? Wir müsste denn so ein Wireguard(!)-Setup ohne NAT aussehen? Mich würde das wirklich in der Umsetzung interessieren. Nur hilft mir dabei keine Verlinkung auf die - sicherlich sehr ausgefeilte - OpenVPN-Anleitung
@danone:
Fürn Raspi gibts doch umfangreiche Anleitungen, teilweise sogar mit fertigen Scripts für Wirguard und PiHole, da ist das Routing schon fix und fertig. Ansonsten das hier prüfen: https://linuxize.com/post/how-to-set-up-wireguard-vpn-on-ubuntu-20-04/#s ...
Hier ggfs. noch den 51820 freigeben: https://www.heise.de/tipps-tricks/Ubuntu-Firewall-einrichten-4633959.htm ...
Ok, wer lesen kann ist klar im Vorteil ... soll ja doch ein Site-to-Site sein und das Problem tritt "diesseits" auf. Und ich sach noch "before coffee" ;---)
Die hier haste bestimmt schon gesehen? https://quacktacular.net/2020/04/24/site-to-site-vpn-with-wireguard-and- ...
Ich selber habe ein Site2Site mit einer "windows-Seite" leider selber nicht zu laufen gebracht. Trotz aktivem Routing. Habe dann das Setup variiert.
Die hier haste bestimmt schon gesehen? https://quacktacular.net/2020/04/24/site-to-site-vpn-with-wireguard-and- ...
Ich selber habe ein Site2Site mit einer "windows-Seite" leider selber nicht zu laufen gebracht. Trotz aktivem Routing. Habe dann das Setup variiert.
@danone:
die beiden anderen LINKs (Routing aktivieren in /etc/sysctl.conf) und evtl. die Portfreigabe am Raspi hast Du auch geprüft?
die beiden anderen LINKs (Routing aktivieren in /etc/sysctl.conf) und evtl. die Portfreigabe am Raspi hast Du auch geprüft?
Zeile 27/28. Ist aber schon aktiv.
Neustart haste mal gemacht? Manche Einstellungen werden nicht automatisch übernommen.
Ich würde - in der Not - mal testen ob auf dem Client Raspi ne Firewall aktiv ist?! Du willst ja vom lokalen Netzwerk auf den (lokalen) Client-Raspi udn irgendwo dazwischen steht was im Weg?! Ich mache das hiemit:
https://www.heise.de/tipps-tricks/Ubuntu-Firewall-einrichten-4633959.htm ...
Ist aber - zugegebener Maßen - ein stochern im Nebel. Genauso, wie ich irgendwelche ipv6-Unterstützungen in den Routern deaktivieren würde.
Neustart haste mal gemacht? Manche Einstellungen werden nicht automatisch übernommen.
Ich würde - in der Not - mal testen ob auf dem Client Raspi ne Firewall aktiv ist?! Du willst ja vom lokalen Netzwerk auf den (lokalen) Client-Raspi udn irgendwo dazwischen steht was im Weg?! Ich mache das hiemit:
https://www.heise.de/tipps-tricks/Ubuntu-Firewall-einrichten-4633959.htm ...
Ist aber - zugegebener Maßen - ein stochern im Nebel. Genauso, wie ich irgendwelche ipv6-Unterstützungen in den Routern deaktivieren würde.
Zunächst mal Glückwunsch, dass es geht. Hm, was war es denn jetzt genau?
So wie ich das sehe, hast Du die schon von mir im 2. Post kritisierten "Allowed IPs" modifiziert. Darüber hinaus hast Du jetzt andere "IP-Table-Befehle".
Aber auf beiden Seiten der VPN unterschiedliche. Kann das sein bei Site2Site?
So wie ich das sehe, hast Du die schon von mir im 2. Post kritisierten "Allowed IPs" modifiziert. Darüber hinaus hast Du jetzt andere "IP-Table-Befehle".
Aber auf beiden Seiten der VPN unterschiedliche. Kann das sein bei Site2Site?
Zitat von @satosan:
Dein Fehler : 192.168.201.0/0 allowed IP in der Original-Config. Da gent natuerlich nix durch. Schade das ich hier nicht frueher war.
VG
Sato
Ich zitiere mal aus meinem Post von Sonntag 7.38 Uhr:Dein Fehler : 192.168.201.0/0 allowed IP in der Original-Config. Da gent natuerlich nix durch. Schade das ich hier nicht frueher war.
VG
Sato
"b) Das Fehlerbild kommt mir bekannt vor und klingt nach einem Fehler in den "Allowed-IPs" des Cients:
Bin ... immer noch ohne Kaffee ... wackelig, aber ich habe da nirgends 0/0 drin. Das klappte bei mir trotz diverser Tipp-Seiten nicht. Die "interne" VPN-NAT-Gegenstelle hat bei mir /32 und das dortige "Realnetzwerk" bekommt 0/24. Damit läufts hier seit Monaten dauerhaft stabil auch mit mehreren Clients. Du kannst aber natürlich auch erstmal nur die IP des NAS/32 nehmen."
Hätte also auch nix gebracht, wärst Du vorher da gewesen