wissens-hunger
Goto Top

OPNsense Wireguard Tunnel zu Tunnel Verbindung

Hallo zusammen,

ich sehe grade den Wald vor lauter Bäumen nicht und hoffe auf etwas Hilfe. face-smile

Es geht darum von Unterwegs per VPN und Smartphne zu Standort A einzuwählen und von dort aus die Fritzbox von Standort B aufzurufen.

Was schon funktioniert:

- Von unterwegs per Smartphone zu Standort A einzuwählen
- Der S2S VPN zwischen Standort A und B
- Wenn ich mich im Lokalem Netzwerk von Standort A befinde erreiche ich auch die Fritzbox von Standort B.

Was ich nicht ändern kann:

- Kann leider die Fritzbox an Standort B nicht gegen ein Modem wechseln
- Den VPN der Fritzbox nutzen

Es ist bestimmt nur ein kleines Häkchen oder einen Routing Eintrag, aber ich komme grade nicht drauf.

Hoffe das ihr mir helfen könnt.
Anbei eine kleine Übersicht.
nw Übersicht


Gruß

Content-Key: 7148948695

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

Printed on: May 9, 2024 at 16:05 o'clock

Member: aqui
aqui May 14, 2023 updated at 14:08:45 (UTC)
Goto Top
Macht die OPNsense B NAT (IP Adress Translation) am WAN Port Koppelnetz zur FritzBox oder ist NAT dort deaktiviert? Das wäre für das Setup sehr wichtig zu wissen!

Für den Fall das du NAT machst ist die statische Route auf der FritzBox sinnfrei, denn die FritzBox könnte in dem Fall das lokale LAN hinter der OPNsense B ja gar nicht "sehen" da alles auf die WAN Port IP geNATet wird!
Zudem hast du dann auch noch die Firewall am WAN Port aktiv. Sprich man kommt unmöglich vom FritzBox LAN aufs lokale LAN der OPNsense B.
Hier fehlen leider wichtige Informationen deinerseits für eine zielführende Hilfe. face-sad

- Den VPN der Fritzbox nutzen
Die Fritzbox an B ist dann rein VPN technisch gar nicht mit den Firewalls irgendwie verbunden und eigentlich nur Paket "Durchlauferhitzer", richtig?
Sie muss dann aber zwingend ein Port Forwarding (Port Weiterleitung) der Wireguard UDP Ports (Default UDP 51820) auf die WAN IP der OPNsense eingetragen haben. Siehe Wireguard Tutorial und Grundlagen zur Router Kaskade.
Ansonsten kann die OPNsense A keinen WG Tunnel zur OPNsense B aufbauen.
Member: wissens-hunger
wissens-hunger May 14, 2023 at 14:10:47 (UTC)
Goto Top
Hallo aqui,

Danke, für seine Antwort. Hoffe das hilft dir weiter.
In der Fritzbox ist eine Statische Route
IP: 192.168.200.0/24
GW: 192.168.178.254

WAN der OPNsense:
IP: 192.168.178.254

In der Fritzbox ist ein Port Forwarding zur OPNsense eingetragen
Und auch von WAN der OPNsense zum WG Server.

Gruß
Member: aqui
aqui May 14, 2023 updated at 14:32:00 (UTC)
Goto Top
Und nochmals die entscheidende Frage die du wieder nicht beantwortet hast: Macht die OPNsense NAT (IP Adress Translation) am WAN Port???
Wenn du das nicht abgeschaltet hast (Im Default ist NAT immer aktiv an der OPNsense!) dann machst du an B ja doppeltes NAT und doppeltes Firewalling. Per se nicht falsch muss man aber immer auf dem Radar haben!

Die statische Route an der FritzBox ist dann völlig sinnfrei und auch kontraproduktiv und kannst du wieder löschen.
Die OPNsense B setzt ja dann alles um auf ihre WAN Port IP, die ja eine IP aus dem lokalen LAN der FB ist. Folglich "denkt" die FritzBox alles was von der OPNsense B kommt ist etwas aus ihrem lokalen LAN. Damit ist dann eine statische Route völlig überflüssig.
Die ist nur dann sinnvoll wenn das NAT an der Firewall deaktiviert ist!!
Machst du also NAT solltest du diese Route unbedingt wieder löschen!
Grundlagen zu dieser NAT Thematik in Router Kaskaden mit doppeltem NAT wird dir in den folgenden 3 Threads explizit erklärt:
Kopplung von 2 Routern am DSL Port
Routing von 2 und mehr IP Netzen mit Windows, Linux und Router
IPsec IKEv2 VPN für mobile Benutzer auf der pfSense oder OPNsense Firewall einrichten
Lesen und verstehen!!

In der Fritzbox ist ein Port Forwarding zur OPNsense eingetragen
Das ist auch korrekt so!
Und auch von WAN der OPNsense zum WG Server.
Bahnhof??? Wieso WG Server?? 🤔 Der WG Server ist doch auf der Firewall selber?!
Hier hast du wohl was grundlegend verwechselt, oder?! Die Aussage ist etwas wirr...

Du meinst sicher das du am Regelwerk auf dem WAN Port der Firewall B dort UDP 51820 von any auf die "WAN_IP_ADDRESS" der Firewall passieren lässt, richtig??
Zusätzlich musst du drauf achten das der Haken bei "Block RFC 1918 IP networks" am WAN Port der kaskadierten OPNsense B entfernt ist, denn dein Fritzbox LAN ist ja ein RFC 1918 IP Netzwerk!

Befinden sich noch Endgeräte im lokalen LAN der FritzBox? Diese können prinzipbedingt dann durch die Firewall am WAN Port keine Endgeräte im lokalen LAN der OPNsense B erreichen und auch keine Endgeräte via VPN im lokalen LAN der OPNsense A. Das sollte dir in dem Setup klar sein.
Andersrum geht es aber. Geräte im lokalen LAN OPNsense A und B können Endgeräte im lokalen LAN FritzBox B erreichen.
Nur das du das designtechnisch auf dem Radar hast.
Details zur richtigen Wireguard Einrichtung auf der OPNsense inspesondere dem Interface Assignment des virtuellen WG Interfaces findest du u.a. auch HIER.
Member: wissens-hunger
wissens-hunger May 14, 2023 updated at 14:46:49 (UTC)
Goto Top
Und nochmals die entsc heidende Frage die du wieder nicht beantwortet hast: Macht die OPNsense NAT (IP Adress > Translation) am WAN Port???
Wenn du das nicht abgeschaltet hast (Im Default ist NAT immer aktiv an der OPNsense!) dann machst du an B ja doppeltes NAT und doppeltes Firewalling. Per se nicht falsch muss man aber immer auf dem Radar haben!
nat
Ups, vergessen die Antwort zu schreiben. Sorry.
Ja habe ich.

Du meinst sicher das du am Regelwerk auf dem WAN Port der Firewall B dort UDP 51820 von any auf die > "WAN_IP_ADDRESS" der Firewall passieren lässt, richtig??
Zusätzlich musst du drauf achten das der Haken bei "Block RFC 1918 IP networks" am WAN Port der kaskadierten OPNsense B entfernt ist, denn dein Fritzbox LAN ist ja ein RFC 1918 IP Netzwerk!
Ja, habe ich.
Befinden sich noch Endgeräte im lokalen LAN der FritzBox?
Nein.

Gruß
Member: aqui
aqui May 14, 2023 updated at 15:15:34 (UTC)
Goto Top
Ups, vergessen die Antwort zu schreiben. Sorry. Ja habe ich.
OK, dann die FB Route bitte nicht löschen! face-wink
Gut ist das das FB LAN dann auch nur reines Koppelnetz ist. Soweit alles erstmal richtig gemacht! 👍

Die Lösung ist dann sehr einfach, denn dann hängt alles davon ab was in den AllowedIPs definiert ist, sprich was du in den WG Tunnel routest. Und... wie dein Regelwerk am virtuellen WG Interface eingestellt wird!
Da du dazu leider keine Angaben machst wird eine genaue Hilfe sehr schwer bzw. ist dann eher Raterei. face-sad Wie sollen wir ohne dieses Regelwerk zu kennen dir ggf. Fehler aufzeigen können...?!
Member: wissens-hunger
wissens-hunger May 14, 2023 updated at 15:41:46 (UTC)
Goto Top
Die Lösung ist dann sehr einfach, denn dann hängt alles davon ab was in den AllowedIPs definiert ist, sprich was du in den WG Tunnel routest. Und... wie dein Regelwerk am virtuellen WG Interface eingestellt wird!
Dazu habe ich oben ja ein Bild gemacht. Ich kann es ja hier nochmal schreiben.
Wie schon geschrieben, die Site to Seite VPN funktioniert und auch die Einwahl per Smartphone. face-smile

WG Client Smartphone Config:
Address = 10.2.2.11/32
AllowedIPs = 0.0.0.0/0
Port = 12345 (Beispiel)

WG Server Smartphone Config:
IP: 10.2.2.1/24, 192.168.100.0/24
Port = 12345 (Beispiel)
WG S2S Site A
IP 10.1.1.1/24
AllowedIPs: 10.1.1.1/24, 192.168.200.0/24, 192.168.178.0/24
Port = 6789 (Beispiel)

WG S2S Site B
IP 10.1.1.2/32
AllowedIPs: 10.1.1.1/24, 192.168.100.0/24
Port = 6789 (Beispiel)

Firewall würde ich zum Testen eine any zu any Regel einstellen um zu sehen ob es funktioniert um dann es einzuschränken.

Gruß
Member: aqui
aqui May 14, 2023 updated at 16:06:28 (UTC)
Goto Top
Dazu habe ich oben ja ein Bild gemacht.
Aber leider alles ohne jegliche Firewall Regelwerke anzugeben bzw. das was in der WG Konfig mit den "AllowedIPs" angegeben ist und in den Tunnel gehen soll!

Du kannst oben schon sehen das du dort falsche Subnetzmasken für die internen IP Adressen agegeben hast. Damit ist das Routing dann inkorrekt. Diese müssen immer /32er Hostmasken sein. Siehe auch Wireguard Tutorial face-wink
Was etwas verwirrend ist das du dein Smartphone einmal als Server und einmal als Client definierst.
  • Was ist es denn wirklich?? In der Regel arbeitet ein Smartphone immer im Client Mode (VPN Initiator) und nie als Server! Das solltest du nochmal checken.
  • Ist es gewollt das du ein Gateway Redirect am Smartphone machst also ALLES in den VPN Tunnel sendest auch lokalen Internet Traffic?
  • Deine interne WG Adressierung stimmt nicht! Dein Smartphone Client ist in einem völlig anderen, internen IP Netz als deine Firewalls!! Das kann man machen, müsste aber so nicht sein und ist überflüssig bzw. verkompliziert unnötig das Routing, denn der Server kann sowohl Site2Site als auch das Smartphone bedienen.
  • Zudem ist die Client Adressierung falsch. Die internen Client IP hat immer die Maske des internen Netzes (/24 bei dir) nur die AllowedIPs nutzen eine /32 Hostmaske.
  • Du hast wiederum vergessen welcher der beiden Firewalls die WG Server Rolle beinhaltet?!
Firewall würde ich zum Testen eine any zu any Regel einstellen um zu sehen ob es funktioniert
Du meinst die Regel auf der virtuellen internen VPN Schnittstelle???
Sorry, etwas präziser solltest du mit deinem Feedback schon sein, sonst muss man unnötigerweise alles immer wieder und wieder explizit nachfragen um dir gezielt helfen zu können.
Solltest du also das virtuelle interne Interface meinen lautet die Antwort JA.
Hier wäre eine any zu any Schrotschussregel erstmal zielführend.
Beachte bitte das dieses Regelwerk ausschliesslich nur auf dem virtuellen WG Interface zu setzen ist was nach dem Interface Assignment auftaucht und NICHT auf dem System generierten Interface was leer bleiben muss!
Hier am Beispiel einer pfSense mit Wireguard:
wgreg.
Member: wissens-hunger
wissens-hunger May 14, 2023, updated at May 15, 2023 at 04:40:12 (UTC)
Goto Top
Danke, für die Links. face-smile

Was ist es denn wirklich?? In der Regel arbeitet ein Smartphone immer im Client Mode (VPN Initiator) und nie als Server! Das solltest du nochmal checken.
Ne, im Client Mode

Ist es gewollt das du ein Gateway Redirect am Smartphone machst also ALLES in den VPN Tunnel sendest auch lokalen Internet Traffic?
Ja, wenn ich unterwegs bin in fremden WLANs will ich meinen Internetanschluss nutzen und ggf. auf Dateien zugreifen.

Habe jetzt mal paar Screenshots von der WG Config von Site A gemacht. Ist glaube ich einfacher. ;)
wg local 1
Server

wg client 1
Smartphone

wg s2s 1
S2S

Smartphone Config:
[Interface]
PrivateKey = 
Address = 10.1.1.11/32
DNS = 1.1.1.1, 9.9.9.9

[Peer]
PublicKey = 
AllowedIPs = 0.0.0.0/0
Endpoint = client-to-site-b.de:1234
PersistentKeepalive = 25

Du meinst die Regel auf der virtuellen internen VPN Schnittstelle???
Jap.

Gruße und vielen dank für die Geduld. face-smile
Member: aqui
aqui May 15, 2023 updated at 08:30:45 (UTC)
Goto Top
Ja, wenn ich unterwegs bin in fremden WLANs will ich meinen Internetanschluss nutzen
OK, dann ist der Gateway Redirect auf dem Client natürlich korrekt!

Deine WG Konfig ist als solche viel zu umständlich gedacht. Du solltest keine 2 interne WG Netze dafür definieren. Das ist überflüssig. In so einem kleinen Setup macht das keinen Sinn und es reicht ein internes WG Netz völlig.
Baue das also um auf eine simple, klassische Standard Konfig.

Hier findest du eine identische Beispielkonfig wie das genau auszusehen hat mit der Adressierung und den "AllowedIPs" und an der du dich orientieren kannst:
Wireguard Site2Site mit Roadwarrior
Member: wissens-hunger
wissens-hunger May 15, 2023 at 15:02:06 (UTC)
Goto Top
Danke, für dein Link

Wollte es für mich trennen deswegen die beiden WG Interfaces.

Wäre es mit meinem Setup trotzdem möglich auf die Fritzbox zuzugreifen?

Gruß
Member: aqui
aqui May 15, 2023 updated at 15:15:05 (UTC)
Goto Top
Ja, natürlich, es geht auch mit 2 unterschiedlichen internen WG IP Netzen. (Siehst du z.B. in diesem Thread mit einem etwas anspruchsvolleren Setup).
Du musst dann allerdings bei den Allowed IPs zusätzlich immer dann deine Client IP Adresse mit einer /32 Maske eintragen ansonsten wird das Client IP Netz nicht in den Tunnel geroutet.
Vice versa natürlich auch die beiden lokalen IP Netze beim Client.

Du merkst aber schon wie aufwändig das alles wird weil du immer diese doppelte IP WG Adressierung berücksichtigen musst die dir außer erhöhtem Konfig Aufwand sonst nichts bringt.
Member: wissens-hunger
wissens-hunger May 15, 2023 at 16:06:01 (UTC)
Goto Top
Alles klar. Auch hier danke für den Link. Das kommt meinem Setup sehr nahe.
Gebe dir aber recht. Je mehr Host im Netzwerk sind desto mehr muss konfiguriert werden.
Dann kann es ab da unübersichtlich werden.

Heißt für mich jeder Host im jeweiligen Netzwerk musst ich mit einer /32 angeben.

Als Beispiel Smartphone: 10.1.1.2/2, 192.168.100.50/32, 192.168.100.51/32 usw.
oder
Als Beispiel S2S: 10.2.2.2/2, 192.168.200.60/32, 192.168.200.60/32 usw.

Gruß
Member: aqui
Solution aqui May 15, 2023 updated at 17:57:44 (UTC)
Goto Top
jeder Host im jeweiligen Netzwerk musst ich mit einer /32 angeben.
Ausschliesslich nur bei den "AllowedIPs" !!
Die internen Adressen die unter "Address" definiert werden haben immer ihre "normale" Netzwerk Adresse. Wie gesagt... Lies das Tutorial und die Beispiele, dort steht alles haarklein wie es richtig auszusehen hat! face-wink

Dein Beispiel ist falsch!! Bitte wirklich einmal die Tutorials und Beispiele lesen die man dir hier als Lösung postet! face-sad
Zumindestens wenn es der "AllowedIP" Parameter ist und dein internes IP Netz für die Clients das 10.1.1.0 /24 ist und das Smartphone die .1/24 hat. Bei S2S dann intern 10.2.2.0/24 und die Router jeweils intern .1 mit lokalem LAN .100.0/24 für Router 1 und intern .2. mit lokalem LAN .100.0/24 für Router 2.
  • Eine /2er Subnetzmaske gibt es gar nicht!
  • Für das Smartphone gilt dann: "AllowedIPs = 0.0.0.0/0" und nix anderes denn dort machst du ja Gateway Redirect
  • Router 1: "AllowedIPs = 10.1.1.1/32, 10.2.2.2/32, 192.168.200.0/24"
  • Router 2: "AllowedIPs = 10.1.1.1/32, 10.2.2.1/32, 192.168.100.0/24"
Eigentlich doch ganz einfach und logisch, oder?

Solltest du nur mit einem internen IP Netz arbeiten (10.2er Netz weglassen) wie empfohlen dann gilt:
  • Für das Smartphone (intern 10.1.1.3 /24) gilt dann: "AllowedIPs = 0.0.0.0/0" und nix anderes denn dort machst du ja Gateway Redirect.
  • Router 1: "AllowedIPs = 10.1.1.2/32, 10.1.1.3/32, 192.168.200.0/24"
  • Router 2: "AllowedIPs = 10.1.1.1/32, 10.1.1.3/32, 192.168.100.0/24"
Member: wissens-hunger
wissens-hunger May 16, 2023 updated at 17:52:05 (UTC)
Goto Top
Nach mehrmaligen Lesen glaube ich es zu verstanden zu haben aber, die Realität sieht leider anders aus.
Ich sehe die Verbindung in beiden Firewalls, aber bekomme leider keine Verbindung.
Firewallregeln für Wireguard sind any zu any.

opnsense vigor
OPNSense von Vigormodem und Smartphone

opnsense fb
OPNSense bei der Fritzbox.

Gruß
Member: aqui
aqui May 17, 2023 at 07:12:27 (UTC)
Goto Top
Firewallregeln für Wireguard sind any zu any.
Sieht aber in den von dir geposteten Screenshots völlig anders aus!! Dort ist weit und breit nichts von any zu any zu sehen?!
Entweder hast du also die falschen Screenshots gepostet oder nutzt ein völlig falsches Regelwerk. Dann muss man sich dann auch nicht groß wundern das nix klappt. face-wink
Member: wissens-hunger
Solution wissens-hunger May 21, 2023 at 13:21:34 (UTC)
Goto Top
Problem gelöst.
In der FRITZ!Box hat die statische Route gefehlt.
Hatte sie dort eingetragen aber, irgendwie würde sie nicht übernommen.

Danke, für eure Hilfe.

Schönen Sonntag.

Grüße
Member: aqui
aqui May 22, 2023 at 10:03:34 (UTC)
Goto Top
Kleine Ursache, große Wirkung... face-wink
Glückwunsch das es nun rennt wie es soll! 👏👍