Die meisten Menschen nehmen an, dass eine .ovpn-Datei ein VPN konfiguriert. Das tut sie nicht: Sie konfiguriert einen Client, und alles, was sie verlangt, muss auf der anderen Seite bereits vorhanden sein. Eine Zeile in der Datei zu ändern kann ändern, was Ihr Rechner versucht, niemals, was der Server anbietet. Diese Unterscheidung erklärt den größten Teil der Verwirrung um Profile, die sich nicht importieren lassen oder keine Verbindung aufbauen.

Lesen Sie die Datei als Liste von Anfragen an Ihren Client, und die meisten ihrer Zeilen werden offensichtlich.

Die Datei beschreibt Ihren Client, nicht den Server

Ein Profil bündelt einen remote-Endpunkt, einen Transport, einen Schnittstellentyp, Identitätsmaterial und jedes clientseitige Verhalten, das der Betreiber wünscht. Jede Zeile wird beim Start vom Client ausgeführt. Keine davon erreicht den Server als Konfigurationsänderung, und keine kann einen Listener erzeugen, der nicht bereits läuft. Ein Profil, das TCP 443 gegenüber einem Server nennt, der nur auf UDP 1194 lauscht scheitert am ersten Paket.

Deshalb verhält sich dieselbe Datei auf zwei Clients unterschiedlich: Die Datei fragt, und der Client entscheidet, wie viel der Anfrage er erfüllen kann.

Transportzeilen müssen zu einem Listener passen, der bereits existiert

proto und remote Zeilen müssen mit dem übereinstimmen, was der Server tatsächlich bindet. UDP ist die übliche Wahl, weil ein verlorenes Datagramm den Tunnel nicht zum Stocken bringt, während TCP restriktive Netze überleben kann, zum Preis von Head-of-Line-Blocking innerhalb des Tunnels. Ein Profil von UDP auf TCP umzustellen bringt den Server nicht dazu, TCP zu akzeptieren; es sorgt nur dafür, dass der Client an einen Port sendet, den niemand liest.

Port 443 ist beliebt, weil er Netze durchquert, die fast nichts anderes zulassen, und er bleibt eine OpenVPN-Sitzung statt einer HTTPS-Anfrage. Wenn der Betreiber mehrere remote Zeilen veröffentlicht, probiert der Client sie der Reihe nach aus, was eine Failover-Liste und keine Lastverteilungsentscheidung ist. Behalten Sie die Kombinationen, die der Betreiber ausgeliefert hat, statt einen Host aus einem Eintrag mit einem Port aus einem anderen zu mischen.

Eingebettete Schlüssel ändern den Umgang mit der Datei

Zertifikate und Schlüssel können eingebettet zwischen den Tags <ca>, <cert> und <key> stehen oder als separate Dateien referenziert werden. Eingebettetes Material macht das Profil eigenständig und zugleich zu einem Geheimnis, denn der private Clientschlüssel reist darin mit. Ein CA-Zertifikat ist öffentliches Vertrauensmaterial und unbedenklich teilbar; ein privater Schlüssel nicht, selbst wenn er wie ein unlesbarer Textblock aussieht.

Die Passphrase, die einen Schlüssel schützt, ist ein separates Geheimnis vom Kontopasswort, und ihre Verwechslung führt zu einem Authentifizierungsfehler, der wie falsche Anmeldedaten aussieht.

Routen und DNS stammen möglicherweise gar nicht aus der Datei

Routing kann vom Server gepusht, vom Profil mit redirect-gateway gesetzt oder den eigenen Voreinstellungen des Clients überlassen werden. Die heruntergeladene Datei bestimmt daher nicht vollständig, wohin der Verkehr geht, nachdem der Tunnel steht. Wenn interne Namen aufgelöst werden und öffentliche Seiten nicht, tut die Split-Tunnel-Richtlinie das, wofür sie entworfen wurde, und versagt nicht.

DNS folgt demselben Muster: Ein gepushtes dhcp-option DNS kann vom Client angewendet, ignoriert oder von einem lokalen Resolver-Manager überschrieben werden. Prüfen Sie den Resolver-Status nach dem Verbinden, statt das Profil erneut zu lesen.

Nicht unterstützte Optionen sind eine Frage der Clientversion

Importwarnungen bedeuten meist, dass der Client eine Direktive nicht implementiert, nicht dass die Datei beschädigt ist. Desktop-Clients können Skripte und Plugins unter dokumentierten Kontrollen ausführen, während mobile Clients einen engeren Satz akzeptieren und Zeilen, die sie nicht verstehen, stillschweigend verwerfen können. Eine Cipher- oder TLS-Einstellung, die ein älterer Client ablehnt, ist ein Versionsproblem, das mit dem Betreiber zu lösen ist. Unbekannte Rechte zu aktivieren, um einen Import zu erzwingen, tauscht eine Warnung gegen eine größere Angriffsfläche.

Bewahren Sie die Originaldatei zum Vergleich auf, notieren Sie die genaue nicht unterstützte Direktive in Ihrer Anfrage und bitten Sie um ein Profil, das für den Client gebaut ist, den Sie tatsächlich ausführen.

Bestätigen Sie nach jedem Ersatz, welchen Profileintrag die App verwendet, denn das Importieren einer neuen Datei überschreibt nicht immer die alte.

Ähnliche Artikel