OpenVPN Client Config > sehe den Wald vor lauter Bäumen nicht.

Started by fw115, July 23, 2025, 03:14:52 PM

Previous topic - Next topic
Hallo,

ich mal wieder.

Firewall nochmal Reset auf Werkszustand, restart from scratch.
Opnsense Version 25.7

LAN > 192.168.1.0/24
WAN > Vlan 132 32.xx.xx./24 mit 1 Nutzbaren festen IP
DMZ > 192.168.100.0/24
OpenVPN > 213.240.xx.xx./32 auf das ein 195.8.xx.xx/29 geroutet werden soll

Ping ist auf allen Interfaces möglich:

LAN <> DMZ geht
ping www.heise.de
PING www.heise.de (193.99.144.85) 56(84) bytes of data.
64 bytes from www.heise.de (193.99.144.85): icmp_seq=1 ttl=247 time=30.5 ms
64 bytes from www.heise.de (193.99.144.85): icmp_seq=2 ttl=247 time=29.9 ms
^C

LAN <> WAN mit DNS geht

ping www.heise.de
PING www.heise.de (193.99.144.85) 56(84) bytes of data.
64 bytes from www.heise.de (193.99.144.85): icmp_seq=1 ttl=247 time=30.5 ms
64 bytes from www.heise.de (193.99.144.85): icmp_seq=2 ttl=247 time=29.9 ms
^C

So. Jetzt OpenVPN:
vpn.conf vom provider:
Quotetls-client
client
dev tun
proto tcp
#proto tcp6
tun-mtu 1500
remote vpn3.xxx.de 1194
verify-x509-name vpn3.xxx.de name
cert cert_vpn.pem
key key_vpn.pem
ca vpn-ca.pem
cipher BF-CBC
comp-lzo
verb 3


Der Tunnel steht. Sehe das VPN auf dem Dashboard unter Interfaces mit der IP Adresse vom Provider.

Wie ist jetzt der Weg um:

1) die IP Adressen aus dem /29 Netz an Hosts in der DMZ zuzuweisen ?

2) was/wie sind die richtigen NAT Regeln und Rules damit der Traffic vom Internet über den Tunnel und dem /29 an die Hosts in der DMZ gehen und wieder zurück ?

Wenn was nicht klar genug sein sollte, bitte Hinweis.
Aber ich dreh mich gerade im Kreis.

Danke
 

Wo liegt denn dieses /29 an?
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Das wird über das VPN an die Interface Adresse 231.240.xx.xx/32 groutet.

Müsste ich nicht jetzt ohne das es eine entsprechende config gibt die 231.240.xx.xx/32 extern pingen können ?

Also du hast einen Account bei deinem VPN-Provider und kannst den Tunnel herstellen. Und der Provider routet zusätzlich ein /29 in den Tunnel? Hab ich das richtig?

Damit du 231.240.xx.xx/32 aus dem Internet anpingen kannst, musst du natürlich auf dem VPN-Interface eingehend eine Firewall-Regel haben, die das erlaubt. Oder eine Floating Regel, die global ICMP echo auf allen Interfaces erlaubt, das habe ich. Ich halte "ping" für zwingend notwendig und glaube nicht an "ICMP sperren".

Nun nehmen wir mal an, das /29 wäre 195.8.xx.0/29 - dann würde ich dem DMZ-Interface der OPNsense 195.8.xx.1/29 zuweisen. Dann kannst du 5 Server oder VMs an dieses DMZ-Interface anschließen mit 195.8.xx.2-6/29. Firewall-Regeln nach Bedarf, kein NAT.

Gruß
Patrick
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Quote from: fw115 on July 23, 2025, 07:13:36 PMDas wird über das VPN an die Interface Adresse 231.240.xx.xx/32 groutet.

Müsste ich nicht jetzt ohne das es eine entsprechende config gibt die 231.240.xx.xx/32 extern pingen können ?
Nein. Dazu müsste die gepingte IP auf deiner Seite einem Gerät zugewiesen werden, das der eventuell weitergeleitete oder geroutete Ping Request erreicht.
Aber sehen könntest du die Pakete am VPN Interface mit Packet Capture.

Aber das ist für deinen Zweck ja nicht nötig. Du kannst die Web-Anfragen einfach mittels NAT Regeln weiterleiten.

Wichtig:
- Der OpenVPN Client Instanz musst du ein Interface explizit zuweisen, falls das noch nicht geschehen ist.
- In Firewall: Rules: OpenVPN darf keine Pass-Regel existieren. Jedenfalls keine, die auf die weitergeleiteten Pakete zutrifft.

Dann kannst du einfach für jede IP eine NAT Port Forward Regel am VPN client Interface erstellen. Bspw.
Ziel: 195.8.xx.4, Port: 443
Weiterleitung:  192.168.100.16, Port: 443

Jeweils mit "Add associated Filter rule". Das sollte am Client Interface die Firewall Regeln erstellen.

Du könntest auch mit nur einer NAT One-to-One Regel das gesamte /29 Subnetz weiterleiten, wenn die Webserver IPs durchgehend und in der gewünschten Reihenfolge vorliegen.
Aber dann müsstest du die Filter Regeln am VPN Client Interface manuell erstellen.

Grüße

Danke für die Tipps.

Die Interfaces machen mich fertig. Ich hab das da noch icht ganz im Griff.

Also ...

Ich habe 2 VPN "Interfaces"

opvpnc1> OpenVPN zugewiesen an opt3> VPN ( das was ich definiert habe)

Wenn ich das recht verstanden habe, sollte das VPN Interface somit richtig zugewiesen sein. Richtig ?

Das Interface ist UP mit der 231.xx.xx.xx/32

Damit sollte also vie Vorraussetzung da sein, per NAT

195.8.xx.2/29 an 192.168.100.10 zu "natten" mit Port xyz

Das heisst die Rules müssen dann in VPN erfolgen, was von mir definiert wurde.
In OpenVPN sind nur automatic rules drin.

OpenVPN ist eine Interface-Gruppe, die alle Interfaces enthält, die du anlegst.

Warum willst du unbedingt eingehend NATen? Weise das /29 der DMZ zu wie von mir beschrieben. Wenn der Provider das in Richtung deiner OPNsense routet, ist das doch optimal so.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Quote from: Patrick M. Hausen on July 23, 2025, 08:49:38 PMOpenVPN ist eine Interface-Gruppe, die alle Interfaces enthält, die du anlegst.
Quote from: fw115 on July 23, 2025, 08:47:07 PMIn OpenVPN sind nur automatic rules drin.

Und daher müssen Pass Regeln, die zutreffen würden, von da weg oder so geändert werden, dass sie nicht zutreffen. Das gilt auch für automatisch generierte Regeln.


Edit:

Ich möchte noch der Vollständigkeit halber hinzufügen, dass die Sache mit den Regeln am richtigen Interface nur für den Fall gilt, dass der VPN-Provider nicht dein Standardgateway ist, also nicht dein gesamter ausgehender Traffic über diese VPN läuft.
Aber das hatte ich aufgrund deiner Schilderung so angenommen.

Quote from: Patrick M. Hausen on July 23, 2025, 08:49:38 PMOpenVPN ist eine Interface-Gruppe, die alle Interfaces enthält, die du anlegst.

Warum willst du unbedingt eingehend NATen? Weise das /29 der DMZ zu wie von mir beschrieben. Wenn der Provider das in Richtung deiner OPNsense routet, ist das doch optimal so.

Enschuldige das ich so dumm nachfrage, aber ich habe zuviel rumgebastelt, dass ich mir selber nicht mehr traue.

Ich würde das /29 gerne an die DMZ zuweisen, da es sich für mich nach einer einfacheren Struktur der Verwaltung anhört.

Fragen dazu:

Wie weise ich das Netz korrekt zu ?
Wie sieht das mit den Rules und evt Port Zuweisungen für das /29 aus ?
Was ist mit dem Routing ? Macht die Opnsense das "on the fly" mit dem Zuweisen des /29 an die DMZ ?

VG
Torsten

Quote from: fw115 on July 23, 2025, 10:26:38 PMIch würde das /29 gerne an die DMZ zuweisen
Du meinst, an die einzelnen Server? Du möchtest also das /29 Netz intern betreiben.
Tatsächlich?
Das wird wohl etwas kompliziert.

Quote from: viragomann on July 23, 2025, 10:29:40 PM
Quote from: fw115 on July 23, 2025, 10:26:38 PMIch würde das /29 gerne an die DMZ zuweisen
Du meinst, an die einzelnen Server? Du möchtest also das /29 Netz intern betreiben.
Tatsächlich?
Das wird wohl etwas kompliziert.

Nein, das ist viel einfacher als der Port-Forwarding Mist.

Aber sorry - Details morgen.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

So, @fw115 - lass uns doch erstmal gucken, ob wenn der Tunnel aufgebaut ist, die eine /32 IP-Adresse auch tatsächlich aus dem Internet erreichbar ist.

Also Tunnel aufbauen klappt, ja? Dann leg doch mal diese Floating-Regel an wie in meinem Screen Shot. Die erlaubt, alles im Netz anzupingen und ist daher m.E. nicht irgendwie kritisch. Sie erlaubt auch nur "ping", sonst nichts mit ICMP. Bei "Interfaces" nichts auswählen, dann gilt sie global.

Und dann machst du mal aus dem Internet über irgendeine andere Verbindung ein "ping" auf die /32 Adresse. Das muss klappen. Wenn nicht, brauchen wir gar nicht erst weiter zu machen.

Grüße
Patrick
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Moin,

joa mxtoolbox /32 versucht anzupingen. Nix.

Die Aussage vom Provider, liegt an mir, die können alles pingen.

Ganz toll.

Hast du die Floating Regel eingerichtet? Ohne eine ausdrückliche Regel kann es nicht funktionieren.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Quote from: Patrick M. Hausen on July 25, 2025, 10:08:38 AMHast du die Floating Regel eingerichtet? Ohne eine ausdrückliche Regel kann es nicht funktionieren.

Ja, hab ich. Leider ohne Erfolg.