Ihr VPN-Profil enthält einen privaten Schlüssel, nicht nur Einstellungen
Serveradressen stehen neben privaten Schlüsseln, eingebetteten Geheimnissen und Tokens. Bevor Sie ein Profil in einen Support-Thread einfügen, sollten Sie wissen, welche Zeilen die Identität sind.
Jeder, der ein VPN-Profil in einen Foren-Thread einfügt, geht von derselben Annahme aus. Die Datei enthält nur eine Serveradresse und ein paar Optionen, deshalb wirkt das Teilen wie das Teilen einer Telefonnummer. Dann liest jemand sie und findet in der vierten Zeile einen unverschlüsselten privaten Schlüssel.
Das Profil ist keine Dokumentation über den Tunnel. Es ist die Identität des Tunnels, ausgeschrieben.
Die Objekte in der Datei haben nicht dieselbe Geheimhaltungsstufe
Ein öffentliches CA-Zertifikat soll reisen. Ein privater Client-Schlüssel nicht. Wenn beide in derselben Datei erscheinen, lässt das harmlose den ganzen Anhang sicher wirken. Das ist die Falle.
OpenVPN verschlimmert das konstruktionsbedingt. Es erlaubt, Zertifikate, Schlüssel und Authentifizierungsmaterial direkt einzubetten. Das ist bequem für die Bereitstellung und verheerend fürs Teilen. Die Datei, die mit einem lesbaren Zertifikatsblock beginnt, setzt sich in die private Hälfte fort.
WireGuard ist darin direkter. Der Interface-Abschnitt trägt einen privaten Schlüssel, und jeder Peer kann zusätzlich einen vorab geteilten Schlüssel tragen. Es gibt keine Unklarheit darüber, welche Zeilen zählen. Fast jede Zeile zählt.
Ein Screenshot ist dasselbe Leck in einem anderen Format
Eine Konfiguration als QR-Code zu kodieren macht sie nicht zu einer Vorschau. Der Code trägt dieselben Bytes, und jede Handykamera im Raum kann ihn entschlüsseln. Dasselbe gilt für einen Screenshot des Konfigurationsfensters eines Clients, in dem der Schlüssel in der Ecke lesbar ist.
Authentifizierungsdateien und referenzierte Schlüsselpfade gehören zum selben Audit. Ein Profil, das auf eine externe Datei zeigt, ist nicht automatisch sicherer, weil der Pfad irgendwohin auflösen kann, wo ein Leser hinkommt. Ein Token in einer Authentifizierungsdatei ist so brauchbar wie ein Passwort, und es sieht selten danach aus.
Schicken Sie den Fehlertext, nicht den Schlüssel
Die Diagnose braucht den Fehlertext, die Clientversion und die Namen der ausprobierten Optionen. Sie braucht den Schlüssel nicht. Schreiben Sie die Frage mit diesen drei Dingen und ersetzen Sie jedes Geheimnis und jede unnötige Netzwerkennung, bevor die Datei Ihren Rechner verlässt.
Der Handbuchabschnitt von OpenVPN zu Inline-Dateien ist eine nützliche Karte, wo diese Objekte sitzen. Er erinnert auch daran, wie viele davon ein einzelnes Profil enthalten kann.
# which lines in this profile look like secrets?
grep -n -E 'PrivateKey|PresharedKey|password|auth-user-pass|BEGIN .*PRIVATE KEY' wg0.conf
# OpenVPN: show the structure without printing key material
awk '/BEGIN/{print NR": "$0} /^[a-z-]+ /{print NR": "$1}' office.ovpn
Lesen Sie dann den endgültigen Anhang, statt sich auf Ihre Erinnerung an die Bearbeitung zu verlassen. Schlüssel verstecken sich in späteren Blöcken, in einem nicht geschwärzten Kommentar und in einer Zeile, die Sie für strukturell hielten.
Nach einer Offenlegung ist Rotation die einzige Reparatur
Das Löschen des Beitrags widerruft nichts. Wer die Datei erhalten hat, besitzt weiterhin gültige Zugangsdaten, deshalb muss der Aussteller sie über den eigenen Prozess des Dienstes widerrufen oder ersetzen. Eine lokale Kopie zu entfernen ändert am fernen Ende nichts.
Bewahren Sie funktionierende Profile mit einer geschützten Methode auf, und entfernen Sie veraltete importierte Einträge bewusst, statt drei Kopien in einem Downloadordner zu lassen. Ein Profil, das Sie nicht mehr nutzen, ist weiterhin ein gültiger Zugang, bis es widerrufen wird.
Die Gewohnheit, die sich aufzubauen lohnt, ist klein. Bevor ein Profil den Rechner verlässt, fragen Sie, was außer der Adresse noch darin steht, und antworten Sie, indem Sie die Datei lesen, statt sich an sie zu erinnern.