So funktioniert VpnHood
Eine VpnHood-App leitet den Datenverkehr des Geräts durch einen verschlüsselten Tunnel zu Ihrem Server – und dieser weiter ins Internet. So fließt der Datenverkehr von Anfang bis Ende.
Auf dem Gerät
Die App erfasst den Datenverkehr über den virtuellen Netzwerkadapter des Betriebssystems. Unterstützt werden TCP, UDP und Ping. Alle anderen Pakete werden verworfen.
Auch Split-Tunneling wird direkt auf dem Gerät geregelt. Ausgeschlossener Datenverkehr – nach App, Land, Domain oder IP-Adresse – fließt direkt ins Internet und erreicht Ihren Server nie. Mehr dazu unter Split-Tunneling.
Die App konfiguriert auch das DNS des Geräts: wahlweise nach Vorgabe des Nutzers oder standardmäßig über die öffentlichen DNS-Server von Google. DNS-Anfragen bleiben geschützt im Tunnel – selbst wenn Split-Tunneling die Ziel-Webseite daran vorbeileitet.
Der Tunnel
Standardmäßig verbindet sich die App über TLS – dieselbe Verschlüsselung wie bei HTTPS – mit dem TCP-Port Ihres Servers (443, sofern nicht geändert) und kommuniziert wie moderne Web-Apps über WebSocket-Nachrichten. Der gesamte Datenverkehr im Tunnel ist von Anfang bis Ende per TLS verschlüsselt.
Vor dem Senden von Daten prüft die App das Serverzertifikat. Sie akzeptiert Zertifikate einer vertrauenswürdigen Zertifizierungsstelle für den Namen im Zugangsschlüssel oder genau das Zertifikat mit dem im Schlüssel hinterlegten Fingerabdruck. Deshalb funktioniert der Server anfangs auch mit selbstsignierten Zertifikaten, und Schlüssel bleiben selbst nach der Erneuerung eines vertrauenswürdigen Zertifikats gültig.
In den Protokolleinstellungen der App können Nutzer statt TCP auch UDP oder QUIC wählen. UDP sendet die Datenpakete per AES-GCM-Verschlüsselung an den UDP-Port Ihres Servers. QUIC überträgt dieselben Daten wie TCP über QUIC mit integriertem TLS. Ihr Server teilt jeder App mit, welche Optionen verfügbar sind; wird die gewählte Option nicht unterstützt (etwa hinter einem Reverse-Proxy), weicht die App automatisch auf TCP aus. Blockiert ein Netzwerk jedoch den UDP-Port, kann eine auf UDP eingestellte App erst dann Daten übertragen, wenn der Nutzer wieder auf TCP wechselt.
Anfragen an Ihren Server, die nicht von einer VpnHood-App stammen, erhalten lediglich einen HTTP-Fehler – genau wie eine Website, die eine Anmeldung erfordert.
TCP: Als Pakete oder Anfrage für Anfrage
Standardmäßig überträgt die App TCP als Pakete durch den Tunnel. Ihr Server leitet sie über seinen eigenen Netzwerkadapter wie ein Router weiter. Das ist die schnellste und akkuschonendste Methode.
Im Cloak-Modus beendet die App stattdessen jede Verbindung lokal auf dem Gerät und bittet Ihren Server in einer separaten Anfrage, diese aufzubauen. Ihr Server stellt die Verbindung zur Website selbst her und leitet die Daten weiter. Für das Netzwerk sieht der Datenverkehr nicht mehr wie ein durchgehender VPN-Tunnel aus, sondern wie reguläre Browseranfragen. Dies kostet minimal Tempo sowie Akku, und die App nutzt bestehende Verbindungen effizient für die nächste Anfrage wieder.
Die App nutzt diese Methode auch ohne Cloak-Modus: wenn der Server keinen eigenen Netzwerkadapter hat (wie in Docker) oder wenn der Datenverkehr nach Domains aufgeteilt wird.
UDP und Ping
UDP wird unabhängig vom gewählten Protokoll immer paketbasiert durch den Tunnel übertragen. Dasselbe gilt für Pings: Die App leitet Echo-Requests weiter und verwirft andere ICMP-Pakete. Ihr Server sendet beides über seinen Netzwerkadapter weiter – oder wickelt Pings bei fehlendem Adapter eigenständig über eigene Sockets für das Gerät ab.
Auf dem Server
Unter Linux installiert nutzt VpnHood! SERVER einen eigenen Netzwerkadapter und leitet Datenpakete per NAT wie ein Router ins Internet weiter. Ein Docker-Container besitzt keinen solchen Adapter; dort arbeitet der Server als Proxy: Apps übertragen TCP-Verbindungen anfragebasiert, und der Server öffnet jede Verbindung, jeden UDP-Socket und Ping selbst. Apps wechseln automatisch in diesen Modus.
In beiden Fällen wird niemals Datenverkehr an die eigenen IP-Adressen oder das lokale Netzwerk weitergeleitet.
Erfordert einen offenen TCP-Port sowie den beim ersten Start festgelegten UDP-Port für Apps im UDP-Modus. QUIC ist standardmäßig deaktiviert. Unter Server-IP-Adressen einrichten erfahren Sie, wie Sie den UDP-Port ermitteln.
Ein verwalteter Server erreicht VpnHood! MANAGER über HTTPS unter access.vpnhood.com, um bei jeder App-Verbindung die Schlüssel zu prüfen und die Nutzung zu erfassen. MANAGER stellt nie direkte Verbindungen zum Server her, und Apps kommunizieren nie direkt mit MANAGER. MANAGER kann eine App auch an einen anderen Server im Cluster weiterleiten. Ein eigenständiger Server prüft Schlüssel direkt anhand lokaler Dateien.
Aufbau eines Zugangsschlüssels
Ein Zugangsschlüssel enthält alle Angaben, die die App zur Erkennung Ihres Servers benötigt: Domainname, IP-Adressen, Port, Name oder Fingerabdruck des Zertifikats sowie ein Schlüssel-Geheimnis. Der Schlüssel ist lediglich kodiert, nicht verschlüsselt: Jeder mit einem Schlüssel kann die Adressen Ihres Servers einsehen und sich verbinden. Geben Sie Schlüssel nur an vertrauenswürdige Nutzer weiter. Erfahren Sie unter Sperrung von Server-IP-Adressen verhindern, wie Sie Ihre Adressen schützen.