OpenVPN-Fragen - Migration von pfSense

Started by Patrick M. Hausen, August 16, 2024, 10:28:13 AM

Previous topic - Next topic
Hallo zusammen,

ich poste mal im deutschen Forum, weil ich hoffe, dass der liebe Jens hier mitliest und kurzfristig was dazu sagen kann  ;)

Ich baue gerade einen neuen OpenVPN-Zugang für alle Mitarbeiter. Die Netgate-Appliance, die das bisher macht, ist schon etwas älter, und wir haben ja diesen schönen OPNsense HA-Cluster ...

Ich benutze "Instances".

Die generierte Server-Konfiguration sieht so aus:

dev ovpns1
ping-timer-rem
topology subnet
dh /usr/local/etc/inc/plugins.inc.d/openvpn/dh.rfc7919
verify-client-cert require
remote-cert-tls client
server 217.29.46.16 255.255.255.240
client-config-dir /var/etc/openvpn-csc/1
auth-user-pass-verify "/usr/local/opnsense/scripts/openvpn/ovpn_event.py --defer '561fc255-2ff2-4853-aa4d-0c8a7f00acde'" via-env
learn-address "/usr/local/opnsense/scripts/openvpn/ovpn_event.py '1'"
client-disconnect "/usr/local/opnsense/scripts/openvpn/ovpn_event.py '561fc255-2ff2-4853-aa4d-0c8a7f00acde'"
tls-verify "/usr/local/opnsense/scripts/openvpn/ovpn_event.py '561fc255-2ff2-4853-aa4d-0c8a7f00acde'"
max-clients 13
multihome
push "register-dns"
push "dhcp-option DOMAIN intern.punkt.de"
push "dhcp-option DNS 217.29.45.12"
push "dhcp-option DNS 217.29.45.13"
push "route 217.29.44.0 255.255.254.0"
persist-tun
persist-key
keepalive 25 60
dev-type tun
dev-node /dev/tun1
script-security 3
writepid /var/run/ovpn-instance-561fc255-2ff2-4853-aa4d-0c8a7f00acde.pid
daemon openvpn_server1
management /var/etc/openvpn/instance-561fc255-2ff2-4853-aa4d-0c8a7f00acde.sock unix
proto udp
verb 3
disable-dco
up /usr/local/etc/inc/plugins.inc.d/openvpn/ovpn-linkup
down /usr/local/etc/inc/plugins.inc.d/openvpn/ovpn-linkdown
port 1194
duplicate-cn
mssfix


Und die exportierte Client-Konfiguration so:

dev tun
persist-tun
persist-key
client
resolv-retry infinite
remote ******.punkt.de 1194 udp
lport 0
verify-x509-name "C=DE, ST=Baden-Wuerttemberg, L=Karlsruhe, O=punkt.de GmbH, emailAddress=hostmaster@punkt.de, CN=vpn-server.punkt.de" subject
remote-cert-tls server
auth-user-pass
auth-nocache


Erstes Problem beim Verbinden mit Tunnelblick/OpenVPN 2.6.9:

2024-08-16 10:20:58.260531 Options error: Unrecognized option or missing or extra parameter(s) in [PUSH-OPTIONS]:1: register-dns (2.6.9)


Ich habe mir einen Wolf gegoogelt. Auch die Upstream-Doku ist nicht wirklich hilfreich. Wenn ich hier:
https://openvpn.net/community-resources/

"register-dns" in das Suchfeld eingebe, erhalte ich exakt 0 Treffer.

Ist das überhaupt die richtige Dokumentation? Wo finde ich eine vollständige Referenz aller Optionen?


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

Konnte es mir schon selbst beantworten, nachdem ich die Online-Hilfe in der Sense nochmal gelesen hatte. Die Option ist offensichtlich nur für Windows relevant und interessiert am Mac nicht. Push von Suchdomain und DNS-Servern klappt trotzdem.

Bleibt die Frage nach dem richtigen Link zur Referenz-Doku, falls so etwas existiert.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)


August 16, 2024, 10:52:21 AM #3 Last Edit: August 16, 2024, 10:55:36 AM by Patrick M. Hausen
Danke  :)

EDIT: Aaah ... unter "Articles" findet man die Referenz-Doku. Nicht unter "Documentation". Das wäre ja sinnvoll  ::)

Und die Suche findet Schlüsselworte in den "Articles" nicht. Ganz großes Tennis ...
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

Hi Patrick,

die Meldung kommt auf dem Client? Was hast du denn auf dem Mac (vermute ich) als OpenVPN Version? Ist das wirklich 2.6.9?

Ansonsten würde ich auf jeden Fall bei mixed devices (aka Windows, Mac, Linux) auf dem Server das "register-dns" aus dem Push rausnehmen. Effektiv tut das ja meistens nur unter Windows etwas, das die anderen OS da nix mit anfangen können, ist also verständlich. Allerdings können das Linux, Android und Co im Normalfall entweder filtern oder ignorieren und blockieren nicht direkt den Verbindungsaufbau, das macht aus irgendeinem bescheuerten Grund nur Apple bei MacOS und iOS. Sind die einzigen Devices, die da mit unbekannten Optionen immer Terz machen.

Daher erstmal register-dns aus dem Push rausnehmen und statt dessen bei denen, die es brauchen (aka Windows) in die Client Config mit einbauen. Das geht da nämlich ganz gut auch so rum ohne dass das für alle gepusht werden muss.

Gruß Jens
"It doesn't work!" is no valid error description! - Don't forget to [applaud] those offering time & brainpower to help you!
Better have some *sense as no(n)sense! ;)

If you're interested in german-speaking business support, feel free to reach out via PM.

Yep, Mac mit Tunnelblick und 2.6.9. Ist aber wurst, wir haben kein Windows - hab die Option raus genommen und gut ist.

Client specific override wird schwierig bei unserem Setup, siehe:
https://forum.opnsense.org/index.php?topic=42255.msg208481#msg208481

Noch ne Idee, weshalb DCO aus ist? Dachte, das geht jetzt mit FreeBSD 14.1?
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

> Noch ne Idee, weshalb DCO aus ist? Dachte, das geht jetzt mit FreeBSD 14.1?

Nein, tatsächlich nicht, da die Option aber jetzt neu dazugekommen ist, evtl. irgendwo noch ein Schalter zum explizit anschalten? Ich meinte ich habe im GIT gesehen, dass die per Schalter aktiviert werden muss, damit nirgends einfach DCO angeht.

Und ich meinte keine Client specific overrides - das ist ja im Server! Ich rede von der Client config, die du bspw. in den Tunnelblick reinkloppst. Die Client Config kannst du auch überschreiben wie du lustig bist. Bspw. bei nem Windows Client dann eben manuell noch register-dns mit reinklöppeln oder sowas. Deine Client Seiten-Konfig ist ja nicht fix - kannst du ja jederzeit umschreiben :)

Cheers
"It doesn't work!" is no valid error description! - Don't forget to [applaud] those offering time & brainpower to help you!
Better have some *sense as no(n)sense! ;)

If you're interested in german-speaking business support, feel free to reach out via PM.

Hatte das schon gefunden, danke. "Type" Auswahl ist jetzt TUN, TAP oder DCO. Da hatte ich zuerst nicht danach gesucht.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)