So verbergen Sie den OpenVPN-Verkehr – Ein Leitfaden für Anfänger

Da die Internetzensur weltweit verschärft wird, sind Regierungen immer besorgter darüber, die Verwendung von VPN zu verhindern, um ihre Beschränkungen zu umgehen. China mit seiner Great Firewall war in dieser Hinsicht besonders aktiv, und es gab viele Berichte von Personen, die VPNs in China verwenden und deren Verbindungen blockiert wurden.

Das Problem ist, dass es zwar unmöglich ist, die Daten in einem verschlüsselten VPN-Tunnel zu „sehen“, aber immer ausgefeiltere Firewalls sind in der Lage, Deep Packet Inspection (DPI)-Techniken zu verwenden, um festzustellen, ob Verschlüsselung verwendet wird (um beispielsweise die verwendete SSL-Verschlüsselung zu erkennen). von OpenVPN).

Es gibt eine Reihe von Lösungen für dieses Problem, aber die meisten erfordern ein gewisses Maß an technischem Fachwissen und serverseitiger Konfiguration, weshalb dieser Artikel lediglich eine Einführung in die verfügbaren Optionen darstellt. Wenn Ihnen das Ausblenden Ihres VPN-Signals wichtig ist und die Weiterleitung von Port 443 (siehe unten) nicht ausreicht, sollten Sie sich an Ihren VPN-Anbieter wenden, um zu besprechen, ob er bereit wäre, eine der unten beschriebenen Lösungen zu implementieren (oder alternativ einen Anbieter finden, z wie AirVPN, das diese Art von Unterstützung bereits anbietet).

Portweiterleitung OpenVPN über TCP-Port 443

Die bei weitem einfachste Methode, die einfach von Ihrer Seite (dem Client) aus durchgeführt werden kann, keine serverseitige Implementierung erfordert und in den meisten Fällen funktioniert, besteht darin, Ihren OpenVPN-Verkehr über TCP-Port 443 weiterzuleiten.

OpenVPN verwendet standardmäßig UDP-Port 1194, daher ist es üblich, dass Firewalls Port 1194 (und andere häufig verwendete Ports) überwachen und verschlüsselten Datenverkehr ablehnen, der versucht, ihn (oder sie) zu verwenden. TCP-Port 443 ist der Standardport, der von HTTPS (Hypertext Transfer Protocol Secure) verwendet wird, dem Protokoll, das zum Sichern von https://-Websites verwendet wird und im gesamten Internet von Banken, Gmail, Twitter und vielen weiteren wichtigen Webdiensten verwendet wird.

Die Verwendung von OpenVPN, das wie HTTPS SSL-Verschlüsselung verwendet, ist nicht nur sehr schwer über Port 443 zu erkennen, sondern das Blockieren dieses Ports würde den Zugriff auf das Internet stark beeinträchtigen und ist daher normalerweise keine praktikable Option für Möchtegern-Web-Zensoren.

Die Portweiterleitung ist eine der am häufigsten unterstützten Funktionen in benutzerdefinierten OpenVPN-Clients und macht den Wechsel zu TCP-Port 443 lächerlich einfach. Wenn Ihr VPN-Anbieter keinen solchen Client bereitstellt, sollten Sie sich an ihn wenden.

Leider ist die von OpenVPN verwendete SSL-Verschlüsselung nicht genau die gleiche wie „Standard“-SSL, und erweiterte Deep Packet Inspection (wie sie zunehmend in Ländern wie China verwendet wird) kann erkennen, ob verschlüsselter Datenverkehr mit „echtem“ SSL/ HTP-Handshake. In solchen Fällen müssen alternative Methoden gefunden werden, um der Entdeckung zu entgehen.

Obfsproxy

Obfsproxy ist ein Tool, das entwickelt wurde, um Daten in eine Verschleierungsschicht zu verpacken, wodurch es schwierig wird, zu erkennen, dass OpenVPN (oder andere VPN-Protokolle) verwendet werden. Es wurde kürzlich vom Tor-Netzwerk übernommen, hauptsächlich als Reaktion darauf, dass China den Zugang zu öffentlichen Tor-Knoten blockiert, aber es ist unabhängig von Tor und kann für OpenVPN konfiguriert werden.

Um zu funktionieren, muss obfsproxy sowohl auf dem Computer des Clients (unter Verwendung von beispielsweise Port 1194) als auch auf dem VPN-Server installiert sein. Dann muss aber nur noch folgende Kommandozeile auf dem Server eingegeben werden:

obfsproxy obfs2 –dest=127.0.0.1:1194 server xxxx:5573

Dies weist obfsproxy an, auf Port 1194 zu lauschen, sich lokal mit Port 1194 zu verbinden und die entkapselten Daten dorthin weiterzuleiten (xxxx sollte durch Ihre IP-Adresse oder 0.0.0.0 ersetzt werden, um auf allen Netzwerkschnittstellen zu lauschen). Es ist wahrscheinlich am besten, eine statische IP bei Ihrem VPN-Anbieter einzurichten, damit der Server weiß, auf welchem ​​Port er lauschen soll.

Im Vergleich zu den unten vorgestellten Tunneling-Optionen ist obfsproxy nicht so sicher, da es den Datenverkehr nicht verschlüsselt, aber es hat einen viel geringeren Bandbreiten-Overhead, da es keine zusätzliche Verschlüsselungsebene trägt. Dies kann besonders für Benutzer an Orten wie Syrien oder Äthiopien relevant sein, wo Bandbreite oft eine kritische Ressource ist. Obfsproxy ist auch etwas einfacher einzurichten und zu konfigurieren.

OpenVPN über einen SSL-Tunnel

Ein Secure Socket Layer (SSL)-Tunnel kann allein als effektive Alternative zu OpenVPN verwendet werden, und tatsächlich verwenden viele Proxy-Server einen, um ihre Verbindungen zu sichern. Es kann auch verwendet werden, um die Tatsache, dass Sie OpenVPN verwenden, vollständig zu verbergen.

Wie oben erwähnt, verwendet OpenVPN ein TLS/SSL-Verschlüsselungsprotokoll, das sich geringfügig von „echtem“ SSL unterscheidet und das von ausgeklügelten DPIs erkannt werden kann. Um dies zu vermeiden, ist es möglich, die OpenVPN-Daten in eine zusätzliche Verschlüsselungsschicht zu „verpacken“. Da DPIs diese „äußere“ Schicht der SSL-Verschlüsselung nicht durchdringen können, können sie die „innere“ OpenVPN-Verschlüsselung nicht erkennen.

SSL-Tunnel werden normalerweise mit der plattformübergreifenden Stunnel-Software erstellt, die sowohl auf dem Server (in diesem Fall dem VPN-Server Ihres VPN-Anbieters) als auch auf dem Client (Ihrem Computer) konfiguriert werden muss. Daher ist es notwendig, die Situation mit Ihrem VPN-Anbieter zu besprechen, wenn Sie SSL-Tunneling verwenden möchten, und von ihm Konfigurationsanweisungen zu erhalten, wenn er einverstanden ist. Einige Anbieter bieten dies als Standarddienst an, aber AirVPN ist der einzige, den wir bisher überprüft haben (anonypoz ist ein weiterer).

Die Verwendung dieser Technik führt zu Leistungseinbußen, da dem Signal eine zusätzliche Datenschicht hinzugefügt wird.

OpenVPN über einen SSH-Tunnel

Dies funktioniert auf sehr ähnliche Weise wie die Verwendung von OpenVPN über einen SSL-Tunnel, außer dass die OpenVPN-verschlüsselten Daten stattdessen in eine Ebene der Secure Shell (SSH)-Verschlüsselung eingeschlossen werden. SSH wird hauptsächlich für den Zugriff auf Shell-Konten auf Unix-Systemen verwendet, daher ist seine Verwendung hauptsächlich auf die Geschäftswelt beschränkt und bei weitem nicht so beliebt wie SSL.

Wie beim SSL-Tunneling müssen Sie mit Ihrem VPN-Anbieter sprechen, damit es funktioniert, obwohl AirVPN es „out of the box“ unterstützt.

Fazit

Ohne sehr tiefgehende Paketprüfung sehen OpenVPN-verschlüsselte Daten genauso aus wie normaler SSL-Verkehr. Dies gilt insbesondere, wenn über TCP-Port 443 geroutet wird, wo a) Sie SSL-Verkehr erwarten würden und b) das Blockieren das Internet beeinträchtigen würde.

Länder wie der Iran und China sind jedoch sehr entschlossen, den unzensierten Zugang ihrer Bevölkerung zum Internet zu kontrollieren, und haben technisch beeindruckende (wenn auch moralisch verwerfliche) Maßnahmen ergriffen, um OpenVPN-verschlüsselten Datenverkehr zu erkennen. Da Sie in solchen Ländern sogar durch die Verwendung von OpenVPN in Konflikt mit dem Gesetz geraten können, ist es in diesen Situationen eine sehr gute Idee, eine der oben beschriebenen zusätzlichen Vorsichtsmaßnahmen zu treffen.