OPNsense Forum

International Forums => German - Deutsch => Topic started by: rolsch on February 24, 2025, 02:16:54 PM

Title: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: rolsch on February 24, 2025, 02:16:54 PM
Wenn ich mittels VPN: OpenVPN: Instances einen neuen VPN-Client anlege, also OPNSense als Client (!),
wie kann ich hier eines von zwei WAN Interfaces adressieren?

In "VPN: OpenVPN: Clients [legacy]" konntge ich ja bisher das gewünschte WAN-Interface direkt auswählen,
aber jetzt mit der "neuen" Config über "VPN: OpenVPN: Instances" gibt es dass ja nicht mehr.

Hinweis:
Ich nutze ein pppoe0-WAN und ein statisches igc1-WAN Interface.
- das igc1-WAN Interface soll für die ausgehende VPN-Verbindung genutzt werden.

Gruß
rolsch
Title: Re: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: Patrick M. Hausen on February 24, 2025, 02:49:44 PM
Firewall-Regel outbound mit explizit gesetztem Gateway? Statische Route zum OpenVPN-Server über den Gateway? Eines von beiden.
Title: Re: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: rolsch on February 28, 2025, 09:42:14 AM
Quote from: Patrick M. Hausen on February 24, 2025, 02:49:44 PMFirewall-Regel outbound mit explizit gesetztem Gateway? Statische Route zum OpenVPN-Server über den Gateway? Eines von beiden.

Kannst du mir die erste Variante mal näher beschreiben?
Title: Re: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: Patrick M. Hausen on February 28, 2025, 10:16:02 AM
Floating Regel, Source any, Destination die VPN-Gegenstelle, Destination Port und Protokoll passend, Action allow, Gateway der gewünschte Gateway.

Wenn die VPN-Gegenstelle keine eindeutige Adresse hat, weil das irgend so ein "VPN-Provider" ist, dann halt auch any und nur an Ziel-Port und Protokoll TCP oder UDP fest machen.
Title: Re: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: rolsch on March 01, 2025, 08:07:22 PM
Klappt leider noch nicht so wie gewollt:

OPNSense als VPN-Client zu einem externen VPN-Hoster.
Eines von zwei WAN-Interfaces soll ausgehend permanent VPN-Traffic handeln.
LAN-Clients innerhalb OPNsense sollen über diese Verbindung geroutet werden.

VPN:OpenVPN:Instances einen VPN-Client angelegt (OPNSense als Client!) = Verbindung zu meinem VPN-Hoster
- im Connection-Status steht nun "connected"

Interfaces:Assignments:  Interface "ovpn" dem Device "ovpnc1" zugeordnet und enabled

System:Gateways:Configuration wurden nun "OVPN_VPNV4" und "OVPN_VPNV6" angelegt
- "OVPN_VPNV4" zeigt nun eine IP unter Gateway
- "OVPN_VPNV6" habe ich disabled, der VPN-Provider bietet nur v4

Firewall:NAT:Outbound: steht auf Hybrid: mit dem + Zeichen eine Rule angelegt mit Interface "ovpn" und gespeichert & apply

Firewall:Rules:LAN_igc0: mit der IP eines Testrechners auf das Gateway "OVPN_VPNV4" konfiguriert

Der Testrechner kommuniziert über die VPN
- funktioniert

Ich habe zwei VDSL als Multi-WAN konfiguriert:
"OPT3_PPPOE0_PPPO" und "WAN_igc1_DHCP" zu der GATEWAY-Gruppe "WANGWGROUP".

Andere Testrechner kommunizieren hierüber, die Last wird zwischen den beiden WAN verteilt.
- funktioniert

Nun möchte ich den VPN-Traffic NUR über das WAN-Interface "WAN_igc1_DHCP" leiten.

"Floating Regel, Source any, Destination die VPN-Gegenstelle, Destination Port und Protokoll passend, Action allow, Gateway der gewünschte Gateway."
- Destination VPN-Gegenstelle (=Provider) habe ich als Alias genommen da der DNS-Name auf ca. 14 IP's aufgelöst wird.
- Gateway "WAN_igc1_DHCP"

Was mich hier schon gedanklich stört ist die Tatsache,
dass schon ein Gateway "OVPN_VPNV4" über das Interface "ovpn" erzeugt wurde und funktional ist.
- kann man dann noch den Traffic so umbiegen?
Title: Re: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: viragomann on March 01, 2025, 08:40:36 PM
Quote from: rolsch on March 01, 2025, 08:07:22 PM"Floating Regel, Source any, Destination die VPN-Gegenstelle, Destination Port und Protokoll passend, Action allow, Gateway der gewünschte Gateway."
Die Direction auf "out" gestellt?

Quick muss auch angehakt sein. Das ist es aber standardmäßig.

Quote from: rolsch on March 01, 2025, 08:07:22 PMWas mich hier schon gedanklich stört ist die Tatsache,
dass schon ein Gateway "OVPN_VPNV4" über das Interface "ovpn" erzeugt wurde und funktional ist.
- kann man dann noch den Traffic so umbiegen?
Das sind verschiedene Netzwerksegmente.
Das ovpn Gateway ist das virtuelle der VPN (Tunnel). Das verwendest du, um Traffic von intern über die VPN zu routen.
Die Policy-Routing Regel verwendet das WAN Gateway für den (äußeren) VPN-Traffic. Das ist voneinander völlig unabhängig.
Title: Re: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: rolsch on March 02, 2025, 02:26:11 PM
Jepp,
danke für die Hinweise,
die Erklärung zu den Gateways ist einleuchtend.

Ich habe die Direction in der Floating-Regel auf "out" gesetzt (zuerst mit "in" getestet). Quick ist an, klar.
Der Traffic will partout nicht auf das "WAN_igc1_DHCP" WAN-Interface.

Interessant ist die Tatsache dass es zwei VPN-Interfaces gibt:

1)
Interfaces:Assignments:  Interface "ovpn" dem Device "ovpnc1" zugeordnet und enabled
- das von mir erstellte Interface, auch sichtbar unter der Interfaces-Rubrik

2)
Auswählbar in der Floating-Rule oben bei Interface und in der NAT:Outbund Regel.
Woher kommt dieses "OpenVPN" Interface?

Habe aktuell keinen Schimmer wo ich noch nachschauen sollte...
Title: Re: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: viragomann on March 02, 2025, 07:48:55 PM
Ich habe eine solche Policy-Routing Floating-Regel aktuell nicht in Verwendung. Ich habe das lediglich 2 - 3 mal getestet und früher mal genutzt, hat aber sofort funktioniert.

Was genau passiert bei dir? Die Gegenstelle sieht dennoch die falsche WAN IP?
Wenn die Bedingungen zutreffen, kann ich mir nicht vorstellen, warum die Regel nicht greifen sollte. Vielleicht diese nur mal auf den Ziel-Port beschränken.
Die States der VPN über das andere WAN IP Gateway müssen nach einer Änderung natürlich gelöscht werden.

Quote from: rolsch on March 02, 2025, 02:26:11 PMInteressant ist die Tatsache dass es zwei VPN-Interfaces gibt:

1)
Interfaces:Assignments:  Interface "ovpn" dem Device "ovpnc1" zugeordnet und enabled
- das von mir erstellte Interface, auch sichtbar unter der Interfaces-Rubrik

2)
Auswählbar in der Floating-Rule oben bei Interface und in der NAT:Outbund Regel.
Woher kommt dieses "OpenVPN" Interface?
"OpenVPN" ist eine Interface-Gruppe, die OPNsense automatisch einrichtet, sobald eine OpenVPN Instanz eingerichtet wird, um den Traffic zu handeln. Ein explizites Zuweisen eines Interfaces zur Instanz ist ja nicht in jedem Fall nötig.

D.h., solange du nur eine einzige Instanz hast, kannst du auch "OpenVPN" verwenden.
Alle Regeln auf OpenVPN wirken sich auf sämtliche OpenVPN Verbindungen aus.
Title: Re: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: rolsch on March 02, 2025, 08:55:20 PM
Es scheint zu klappen, aber da muss ich erstmal drüber schlafen :-)

Policy-Routing Floating-Regel

NOK
"pass, Quick, IF = ovpn, Source any, Destination die VPN-Gegenstelle als Alias, Port any und Protokoll UDP, Gateway der gewünschte Gateway."
- Destination VPN-Gegenstelle (=Provider) habe ich als Alias genommen da der DNS-Name auf ca. 14 IP's aufgelöst wird.
- Gateway "WAN_igc1_DHCP"

OK
"pass, IF=WAN_igc1 (!), Source any, Destination die VPN-Gegenstelle als Alias, Port any Protokoll UDP, Gateway der gewünschte Gateway."
- Destination VPN-Gegenstelle (=Provider) habe ich als Alias genommen da der DNS-Name auf ca. 14 IP's aufgelöst wird.
- Gateway "WAN_igc1_DHCP"

Was ich jetzt noch nicht so richtig verstehe wieso ich als Interface in der Rule das Interface des Gateway hernehmen musste.
Title: Re: VPN: OpenVPN: Instances: VPN-Client (OPNSense als Client!): WAN IF festlegen
Post by: viragomann on March 02, 2025, 09:58:34 PM
Quote from: rolsch on March 02, 2025, 08:55:20 PMNOK
"pass, Quick, IF = ovpn
Das war deine Interpretation. Das hat hier niemand empfohlen.

Quote from: rolsch on March 02, 2025, 08:55:20 PMWas ich jetzt noch nicht so richtig verstehe wieso ich als Interface in der Rule das Interface des Gateway hernehmen musste.
Empfehle, sich erst mit den VPN Basics zu beschäftigen. Dass du die Netze nicht auseinander halten kannst, zieht sich schon durch den ganzen Thread.

Aber nochmals kurz:
Mit der VPN fügst du dem Router ein virtuelles Netzwerksegment mit eigenem virtuellem Interface und Subnetz hinzu, in deinem Fall ein Transit-Netz. Damit kannst du im Grunde alles Routing und Firewalling machen, was du auch auf anderen Interfaces machen kannst.
Das ist aber erst mal nicht Thema.
Ein Transit-Netz ist ein Netzwerk, dessen ganze Aufgabe es ist, andere Netze zu verbinden, also typisch für eine Site-to-Site VPN.

Eine VPN wird auch gerne als Tunnel bezeichnet. Außen herum besteht eine Verbindung zwischen zwei Endpunkten. In deinem Fall hier zwischen dem Client auf deiner Seite und dem Server. Dies ist die Verbindung, um die es dir hier geht. Diese möchtest du über ein bestimmtest WAN raus routen. Mit dem virtuellen Netzwerk, Interface und Gateway der VPN hat diese überhaupt nichts zu tun, abgesehen, dass sie dafür die Voraussetzung darstellt.

Diese Verbindung hat die IP des VPN-Servers als Ziel und geht damit gemäß der Routing-Tabelle zum WAN raus. Du möchtest aber diese Verbindung nun auf ein anderes Gateway umbiegen. Das geschieht mit der Floating Policy-Routing Regel, und diese ist damit eben am WAN (Default-Out) anzulegen. Dazu gibst du Ziel-IP und -Port an und das Gateway, wo die Verbindung hin geroutet werden soll.
Auf einem anderen Interface wird diese Regel keine Auswirkung haben, weil es da keinen entsprechenden Traffic gibt.