Was ein öffentlicher VPN-Hostname beweisen kann und was nicht
Ein Hostname verweist auf einen Endpunkt und kaum mehr. Er beweist weder das Protokoll noch den Ausgangsort noch die Aufbewahrungsrichtlinie des Betreibers, an keinem beliebigen Tag.
Hostnamen und Länderflaggen sehen wie Fakten über einen Server aus, und keines von beiden ist eines. Ein Name verweist auf Adressen, die sich ändern können, und die Wörter darin hat gewählt, wer ihn registriert hat. Protokoll, Ausgangsort und Protokollierungsverhalten brauchen jeweils eigene Belege. Beginnen Sie mit dem, worauf der Name tatsächlich auflöst, und entscheiden Sie dann, was weiterhin unbekannt ist.
Der Name löst auf, und sonst ist nichts geklärt
Ein Hostname ist ein Zeiger im DNS, und die Einträge dahinter können sich je nach Resolver, je nach Tageszeit und je nach der vom Client bevorzugten Adressfamilie unterscheiden. Zwei Personen, die denselben Verzeichniseintrag lesen, können durchaus verschiedene Maschinen erreichen. Der Name sagt, wonach Sie fragen, nicht, was antworten wird.
Auch Abfrageergebnisse ändern sich ohne Ankündigung, was zählt, wenn ein Profil eine Adresse statt des Namens festnagelt. Ein Profil, das die alte Adresse fest eingebaut hat, scheitert weiter, nachdem der Betreiber den Dienst verlegt hat, und der Fehler sieht wie ein blockierter Port aus. Halten Sie die aufgelösten Adressen neben dem Profil fest, damit ein späterer Vergleich eine Ausgangsbasis hat. Nichts davon sagt etwas darüber, wer das andere Ende betreibt.
dig +short vpn.example.net A
dig +short vpn.example.net AAAA
dig +short vpn.example.net A @1.1.1.1
Transport und Identität sind getrennte Fragen
Eine offene Webseite unter dem Hostnamen prüft einen Listener auf einem Port. OpenVPN, IPsec und SSTP lauschen anderswo, auf ihren eigenen Ports und Protokollen, ein erreichbarer Webserver sagt also nichts über sie.
Verzeichniseintrag und Profil müssen bei Transport, Port und Zugangsdaten übereinstimmen. Die Identität wird über die Zertifikatskette oder den Fingerabdruck des Gegenstellenschlüssels geprüft, mit dem der Client eingerichtet wurde, nicht über die Schreibweise des Hosts. Ein Name mit einem vertrauten Projektwort beweist nur, dass ihn jemand registriert hat. Lesen Sie das Zertifikat, das der Dienst vorlegt, und vergleichen Sie Aussteller und Subjekt mit dem, was das Profil erwartet.
openssl s_client -connect vpn.example.net:443 -servername vpn.example.net </dev/null 2>/dev/null |
openssl x509 -noout -subject -issuer -dates
Länderkürzel sind keine Standortprüfung
Ein Kürzel wie jp oder de in einem Verzeichnis ist eine Registrierung, und IP-Geolokationsdatenbanken weichen oft genug voneinander ab, dass keine als absolute Wahrheit gelten sollte. Geteiltes Hosting, Anycast und schlichte Fehlkonfiguration verschieben den beobachteten Ort allesamt vom Kürzel weg.
Der praktische Test ist der eigene Weg der Anwendung: welche Adresse sie erreicht und was eine Ausgangsadressprüfung aus der Sitzung heraus zeigt. Eine beobachtete Ausgangsadresse ist eine Eigenschaft der Route in diesem Moment, keine an den Namen gebundene Garantie. Verzeichnisse von Freiwilligen fügen eine weitere Ebene hinzu, denn wer einen Eintrag registriert hat, muss nicht derjenige sein, der die Maschine betreibt. Notieren Sie, was Sie gemessen haben und wann, statt dessen, was der Eintrag versprochen hat.
Prüfen Sie den angebotenen Dienst, dann den Betreiber
Sind Transport und Identität geklärt, bleibt die Frage nach dem Verhalten des Betreibers, und die verlangt dokumentarische Belege statt Vermutungen. Eine Datenschutzerklärung, ein veröffentlichter Kontakt und ein Transparenzhinweis sind Belege für Absicht; keiner davon beweist die Praxis, und das Fehlen aller drei ist ebenfalls eine Information.
Bei einem öffentlichen oder freiwillig betriebenen Knoten sollten Sie annehmen, dass der Ausgang geteilt ist und wer ihn betreibt, sehen kann, was hindurchgeht. Diese Annahme, nicht der Hostname, sollte entscheiden, was Sie durch den Tunnel schicken.
curl -sSI https://vpn.example.net/ | head -n 5
whois 203.0.113.25 | grep -i -E 'orgname|netname'
Behalten Sie den Namen für das, worin er gut ist: einen Endpunkt finden und sich damit verbinden. Alles darüber hinaus muss gesondert geprüft werden, an dem Tag, an dem es zählt.