URLs hinter IPsec Tunnel mit Wireguard VPN erreichen
Hallo,
Ich habe bei uns in der Firma einen Wireguard-Server eingerichtet (wg-easy verwaltet in einer docker compose), dieser ist installiert auf einem raspberry pi (172.16.100.230) in unserem internen Netzwerk.
Nun möchte ich gerne, dass die Mitarbeiter auch die Adressen, welche hinter einem IPseC-Tunnel liegen erreichen können. Der Tunnel wird auf einem Lancom 1793VA Router aufgebaut und ist so aufgebaut, dass wir aus all unseren internen Netzen das dorthinter liegende Netz 10.101.207.0/24 erreichen können, solange wir unsere Zugriffe maskieren als 192.168.71.9.
Wenn man vom Büro aus auf eine der URLs im Tunnel zugreift ist alles ganz normal, jetzt über Wireguard scheint aber die Maskierung nicht zu funktionieren, denn für den Router sieht es so us als kämen die Zugriffe von der internen IP des Raspberry Pi.
[IP-Router] 2025/03/18 00:54:50,420
IP-Router Rx (LAN-1, INTRANET, RtgTag: 100):
DstIP: 10.101.207.58, SrcIP: 172.16.100.230, Len: 52, DSCP: CS0/BE (0x00), ECT: 0, CE: 0
Prot.: TCP (6), DstPort: 80, SrcPort: 61245, Flags: S
Seq: 1771532036, Ack: 0, Win: 64860, Len: 0
Option: Maximum segment size = 1380
Option: NOP
Option: Window scale = 8 (multiply by 256)
Option: NOP
Option: NOP
Option: SACK permitted
Route: WAN Tx (LOTTO-BW)
[IP-Router] 2025/03/18 00:54:50,425
IP-Router Rx (IPSEC, RtgTag: 100):
DstIP: 172.16.100.230, SrcIP: 10.101.207.58, Len: 40, DSCP: CS0/BE (0x00), ECT: 0, CE: 0
Prot.: TCP (6), DstPort: 61240, SrcPort: 80, Flags: A
Seq: 1650762384, Ack: 3980152507, Win: 3535, Len: 0
Route: LAN-1 Tx (INTRANET)
[IP-Router] 2025/03/18 00:54:50,446
IP-Router Rx (IPSEC, RtgTag: 100):
DstIP: 172.16.100.230, SrcIP: 10.101.207.58, Len: 52, DSCP: CS0/BE (0x00), ECT: 0, CE: 0
Prot.: TCP (6), DstPort: 61245, SrcPort: 80, Flags: SA
Seq: 515532743, Ack: 1771532037, Win: 13660, Len: 0
Option: Maximum segment size = 1366
Option: NOP
Option: Window scale = 2 (multiply by 4)
Option: SACK permitted
Option: END
Route: LAN-1 Tx (INTRANET)
Ich habe es schon mit SNAT auf dem Pi selbst versucht, aber egal was ich tue die source ip bleibt bei der adresse des pi selbst und wird nicht als 192.168.71.9 maskiert. Auf dem Lancom Router selbst habe ich eine statische Route für die Maske hin zum Pi angelegt, aber das hat auch nix gebracht. Firewallregeln habe ich keine angelegt.
Ich hoffe jemand kann mir hierbei helfen. Wenn euch irgendwas an Infos fehlt bitte sagen, dann reiche ich es nach.
Ich habe bei uns in der Firma einen Wireguard-Server eingerichtet (wg-easy verwaltet in einer docker compose), dieser ist installiert auf einem raspberry pi (172.16.100.230) in unserem internen Netzwerk.
Nun möchte ich gerne, dass die Mitarbeiter auch die Adressen, welche hinter einem IPseC-Tunnel liegen erreichen können. Der Tunnel wird auf einem Lancom 1793VA Router aufgebaut und ist so aufgebaut, dass wir aus all unseren internen Netzen das dorthinter liegende Netz 10.101.207.0/24 erreichen können, solange wir unsere Zugriffe maskieren als 192.168.71.9.
Wenn man vom Büro aus auf eine der URLs im Tunnel zugreift ist alles ganz normal, jetzt über Wireguard scheint aber die Maskierung nicht zu funktionieren, denn für den Router sieht es so us als kämen die Zugriffe von der internen IP des Raspberry Pi.
[IP-Router] 2025/03/18 00:54:50,420
IP-Router Rx (LAN-1, INTRANET, RtgTag: 100):
DstIP: 10.101.207.58, SrcIP: 172.16.100.230, Len: 52, DSCP: CS0/BE (0x00), ECT: 0, CE: 0
Prot.: TCP (6), DstPort: 80, SrcPort: 61245, Flags: S
Seq: 1771532036, Ack: 0, Win: 64860, Len: 0
Option: Maximum segment size = 1380
Option: NOP
Option: Window scale = 8 (multiply by 256)
Option: NOP
Option: NOP
Option: SACK permitted
Route: WAN Tx (LOTTO-BW)
[IP-Router] 2025/03/18 00:54:50,425
IP-Router Rx (IPSEC, RtgTag: 100):
DstIP: 172.16.100.230, SrcIP: 10.101.207.58, Len: 40, DSCP: CS0/BE (0x00), ECT: 0, CE: 0
Prot.: TCP (6), DstPort: 61240, SrcPort: 80, Flags: A
Seq: 1650762384, Ack: 3980152507, Win: 3535, Len: 0
Route: LAN-1 Tx (INTRANET)
[IP-Router] 2025/03/18 00:54:50,446
IP-Router Rx (IPSEC, RtgTag: 100):
DstIP: 172.16.100.230, SrcIP: 10.101.207.58, Len: 52, DSCP: CS0/BE (0x00), ECT: 0, CE: 0
Prot.: TCP (6), DstPort: 61245, SrcPort: 80, Flags: SA
Seq: 515532743, Ack: 1771532037, Win: 13660, Len: 0
Option: Maximum segment size = 1366
Option: NOP
Option: Window scale = 2 (multiply by 4)
Option: SACK permitted
Option: END
Route: LAN-1 Tx (INTRANET)
Ich habe es schon mit SNAT auf dem Pi selbst versucht, aber egal was ich tue die source ip bleibt bei der adresse des pi selbst und wird nicht als 192.168.71.9 maskiert. Auf dem Lancom Router selbst habe ich eine statische Route für die Maske hin zum Pi angelegt, aber das hat auch nix gebracht. Firewallregeln habe ich keine angelegt.
Ich hoffe jemand kann mir hierbei helfen. Wenn euch irgendwas an Infos fehlt bitte sagen, dann reiche ich es nach.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 672006
Url: https://administrator.de/forum/urls-hinter-ipsec-tunnel-mit-wireguard-vpn-erreichen-672006.html
Ausgedruckt am: 13.04.2025 um 02:04 Uhr
6 Kommentare
Neuester Kommentar
Das hiesige Wireguard Tutorial zu der Thematik hast du in aller Ruhe gründlich gelesen und entsprechend in deiner RasPi Server Konfig umgesetzt?! 🤔
Deine Beschreibung der IP Adressierung ist etwas widersprüchlich. Hier wäre es hilfreich du erklärst die nochmal ganz genau.
Hilfreich wäre gewesen deine WG Server Konfig Datei und auf die der WG Clients hier einmal zu posten. Sehr wahrscheinlich hast du in den "AllowedIPs" der WG Clients einen Crypto Routing Eintrag für die jeweils remoten IP Netze vergessen.
Möglich auch das du vergessen hast auf dem Lancom eine statische Route auf das interne WG VPN IP Netz einzutragen? Wegen der fehlenden Konfigs kann man hier jetzt nur raten.
Ein detailiertes Beispiel für einen im internen LAN betriebenen WG Server und die dazu korrespondierende Route auf dem Internet Router findest du u.a. HIER.
Wichtig wäre auch die IPsec Phase 2 SAs zu kennen vom IPsec Router (Lancom), denn dort muss das interne WG Netz auch als P2 definiert sein damit Traffic dafür in den IPsec Tunnel gesendet wird.
NAT gehört keinesfalls in den Tunnel sondern wenn, dann immer auf die Firewall. Siehe WG Tutorial...
Deine Beschreibung der IP Adressierung ist etwas widersprüchlich. Hier wäre es hilfreich du erklärst die nochmal ganz genau.
- Welches IP Netz am lokalen, internen LAN und die dortigen IPs vom Lancom und WG Server?
- Ggf. statische IP Routen dort wenn vorhanden
- Welches interne IP Netz nutzt du am Wireguard VPN?
- Welches remote IP Netz hängt an der IPsec Verbindung. Ggf. mit aktuellen IPsec Phase 2 SAs
Hilfreich wäre gewesen deine WG Server Konfig Datei und auf die der WG Clients hier einmal zu posten. Sehr wahrscheinlich hast du in den "AllowedIPs" der WG Clients einen Crypto Routing Eintrag für die jeweils remoten IP Netze vergessen.
Möglich auch das du vergessen hast auf dem Lancom eine statische Route auf das interne WG VPN IP Netz einzutragen? Wegen der fehlenden Konfigs kann man hier jetzt nur raten.
Ein detailiertes Beispiel für einen im internen LAN betriebenen WG Server und die dazu korrespondierende Route auf dem Internet Router findest du u.a. HIER.
Wichtig wäre auch die IPsec Phase 2 SAs zu kennen vom IPsec Router (Lancom), denn dort muss das interne WG Netz auch als P2 definiert sein damit Traffic dafür in den IPsec Tunnel gesendet wird.
NAT gehört keinesfalls in den Tunnel sondern wenn, dann immer auf die Firewall. Siehe WG Tutorial...
Public Keys zusätzlich zu den so oder so vorhandenen Keys zu benutzen ist ziemlich überflüssig und kannst du auch weglassen um deine Konfig zu vereinfachen.
Das ist so wenn du zum Gürtel noch den Hosenträger brauchst...also unnötig.
Du hast zudem das oben zitierte Tutorial scheinbar nicht gelesen, denn dann wäre dir aufgefallen das du eine falsche Maske fürs interne WG Netz in deiner Konfig unter AllowedIPs verwendest!
Dein Netz sollte so aussehen, ist das korrekt?
Das ist so wenn du zum Gürtel noch den Hosenträger brauchst...also unnötig.
Du hast zudem das oben zitierte Tutorial scheinbar nicht gelesen, denn dann wäre dir aufgefallen das du eine falsche Maske fürs interne WG Netz in deiner Konfig unter AllowedIPs verwendest!
Dein Netz sollte so aussehen, ist das korrekt?
Gateway ist die 172.16.100.1 und nicht .254
Du meinst die IP/Gateway Adresse des WG Servers? Wenn ja, welche IP hat denn der Lancom, dann passe ich das an?Nur nebenbei:
Stimmen kann das was du sagst nicht, denn dann wäre die .1 der WG Server und im Client gibst du den DNS Server auch mit der .1 an was niemals stimmen kann, denn der WG Server arbeitet in der Regel nicht als DNS Server.
Wenn man alle DNS Anfragen der WG Clients unbedingt über einen lokalen DNS schicken will oder muss kommt da der Lancom rein oder ein ggf. vorhandener lokaler DNS Server dort. Andernfalls lässt man den DNS Eintrag im Client schlicht und einfach weg. (Siehe zur DNS Thematik auch hier im WG Tutorial)
Sollte ich da jetzt quasi dieses cryptokey-routing in den allowedIPs aufnehmen?
Nein! Das hast du ja schon gemacht, nur falsch.Du sollst da nur die Subnetzmaske des internen IP Netzes bzw. der internen Geräte beim Crypto Routing Eintrag AllowedIPs" anpassen. Das sind doch immer /32 Hostmasken! Die sind bei dir, wie oben schon gesagt, falsch!
Es darf dort NICHT das gesamte interne IP Netz angegeben werden, sondern immer nur die dedizierten Geräte mit einer /32er Hostmaske! Leider machen das viele Laien immer und immer wieder falsch.
Wenn der WG Server intern z.B. die 10.8.0.254 bei dir hat dann sieht die von denn sinnfreien Preshared Keys befreite Client Konfig für den .3er Client so aus:
[Interface]
PrivateKey = kGhvdkRknXs5U9y9SgGbXdY9o/33PJT9R279du5L01k=
Address = 10.8.0.3/24
DNS = 172.16.100.1
[Peer]
PublicKey = RHDWNNk4ekACmsu36BZMf/ar5Szds6aQY9Zn9GIRs3Q=
AllowedIPs = 10.8.0.254/32, 172.16.100.0/24, 172.16.120.0/24, 10.101.207.0/24
Endpoint = <lancom_wan_ip>:51820
Die dazu korrespondierende Server Konfig Datei sähe dann für den .3er Client so aus:
[Interface]
Address = 10.8.0.254/24
PrivateKey = AB1234P6j2O0PH1838gYnv5p5n27HVmVWJRjZr12345=
ListenPort = 51820
[Peer]
PublicKey = 4321Abc06YX3gA4P0sQzywNX8c1sHSeu+oqsrI84321=
AllowedIPs = 10.8.0.3/32
Wenn das nun die Lösung ist bitte deinen Thread dann auch als erledigt markieren!
Wie kann ich einen Beitrag als gelöst markieren?
Wie kann ich einen Beitrag als gelöst markieren?