1 min read

openvpn Restriktionen umgehen

openvpn Restriktionen umgehen
Photo by Julia Fiander / Unsplash

Debian-12 stellt eine neuere openvpn-Version zur Verfügung als Debian-11, die einige Einstellungen nicht mehr zulässt. Das ist natürlich sinnvoll, weil diese Einstellungen als zusehens unsicher eingestuft sind. Teils sind sie aber nicht wirklich unsicher, so dass man sich mit einem leicht älteren Betriebssystem (Debian-11) mit dem VPN verbinden kann. Wenn es sich dann um ein Kundennetz handelt, kann man den Kunden zwar beraten, aber man kann ihn letztlich nicht zwingen sein System zu aktualisieren. Zumal einige Verbindungen und damit einige Personen involviert wären. Also, wie hacke ich ein Feature wieder ins Debian-12, was unter Debian-11 noch zur Verfügung stand?

Mein Kunde verwendete als Ciphers AES-256-CBC mit HMAC SHA-512 Legitimierung. Das lehnt das unter Debian-12 installierte openvpn ab. Unangenehmer weise schreibt openvpn unter Debian-12 nicht in die Log-Files, so dass die Fehlersuche schwierig wurde.

Aber es gibt doch einen recht einfachen Hack: weil openvpn die Option --tls-cert-profile insecure akzeptiert. Das openvpn Binary liegt unter Debian-12 im Verzeichnis /usr/sbin. Man kann es in openvpn.orig umbenennen und unter openvpn.wrap ein Wrapperskript mit folgendem einfachem Inhalt

#!/bin/sh
/usr/sbin/openvpn.orig "$@" --tls-cert-profile insecure

anlegen. Das Wrapperskript fügt die Option an den openvpn-Aufruf an. Dann kann ein Link openvpn angelegt werden, der auf openvpn.wrap verweist. So könnte der link auch auf openvpn.orig zeigen, um wieder das Standardverhalten einzustellen. Das ganze sah dann folgendermaßen aus:

lrwxrwxrwx 1 root root     12  5. Jun 20:01 openvpn -> openvpn.wrap
-rwxr-xr-x 1 root root 944872 11. Nov 2023  openvpn.orig
-rwxr--r-- 1 root root    271 16. Apr 10:23 openvpn.wrap

Durch diesen Zweizeiler wurde meine schöne VPN-Router-Lösung, die ich in Debian 11 als openvpn-Router vorgestellte hatte, natürlich hinfällig 😢