Ich bin derzeit in der Situation, OpenVPN auf einem persönlichen VPS einzurichten, um die Verbindung hauptsächlich über eine zu restriktive Firewall herzustellen. Alle im Folgenden genannten Setups funktionieren bei Verwendung über eine ausreichend Firewall-Verbindung.
Ich habe versucht:
- OpenVPN läuft auf dem Standardport
- OpenVPN läuft auf Port 443 (Ich starte OpenVPN manuell von der Kommandozeile des VPS aus und sehe, dass der Server fast sofort meldet, dass die Verbindung geschlossen wurde. Ich gehe davon aus, dass dies ein Ergebnis von DPI auf der Firewall ist.)
- STunnel läuft auf Port 443, um auf OpenVPN zuzugreifen und DPI auszuweichen. Dies ist die erfolgreichste und ermöglicht eine Verbindung und einen Internetzugang über das VPN für ~ 10-20 Sekunden, bevor die Verbindung zwangsweise geschlossen wird.
Kann ich noch etwas versuchen?
networking
security
vpn
firewall
RL Stine
quelle
quelle
Antworten:
Verbindungen, die nach einer bestimmten Zeit unterbrochen werden, weisen manchmal auf ein Limit von Bytes pro Sekunde hin. Versuchen Sie herauszufinden, ob die Verlangsamung Ihrer VPN-Verbindung funktioniert. Wenn Sie OpenVPN für UDP konfiguriert haben, versuchen Sie TCP (443 UDP kann blockiert sein, 443 TCP kann unentdeckt bleiben).
Besuchen Sie eine bekannte Site, die SSL verwendet, und überprüfen Sie das Zertifikat. Dann mache dasselbe zu Hause. Wenn sie nicht übereinstimmen, verwendet Ihr Standort einen transparenten HTTPS-SSL-Proxy und kann Ihren HTTPS-Datenverkehr tatsächlich anzeigen.
Möglicherweise wird etwas, das nicht Port 443 ist, nicht so genau überwacht. Versuchen Sie es mit 22.
Es klingt vielleicht dumm, aber versuchen Sie es über Port 80 und sehen Sie, was Sie bekommen. Sie können auch versuchen, einen HTTP-Tunnel zwischen Ihnen und dem VPS einzurichten, damit der Datenverkehr wie HTTP-Anforderungen aussieht.
Wenn Sie sich verrückt fühlen, versuchen Sie es mit Jod .
quelle
Ich glaube, ich weiß, warum sich die Tunnelmethode so verhält. Das liegt daran, dass Sie eine "statische Route" für den Stunnel-Server festlegen müssen. Lassen Sie mich das erklären. Wenn Sie eine Verbindung zu einem OpenVPN-Server herstellen, ändert sich Ihre Routingtabelle und alle Ihre Pakete werden über das VPN weitergeleitet, mit Ausnahme der OpenVPN-Pakete. Tatsächlich fügt openvpn eine Route für die IP-Adresse Ihres Servers hinzu. Wenn Sie stunnel verwenden, um eine Verbindung zu Ihrem OpenVPN-Server herzustellen, wird OpenVPN mit einer Loopback-Schnittstelle verbunden, und es gibt keine Route zu Ihrem Server außerhalb Ihres VPN stunnel :)
Sie müssen also eine Route zu Ihrer Server-IP hinzufügen, die außerhalb Ihres VPN (Ihres Heim-Routers) verläuft.
Und für das Problem mit der Methode Port 443 muss ich sagen, dass die Firewall möglicherweise SPI oder DPI verwendet und OpenVPN-Pakete leicht von HTTPS- (SSL-) Paketen unterscheiden kann. Der beste Weg ist also, stunnel zu verwenden. Wenn die Firewall SSL-Pakete blockiert, ist es besser, obfsproxy oder fteproxy zu verwenden, um sie zu umgehen.
(Ich weiß, dass der Beitrag zu alt ist, aber ich habe wochenlang nach einer Antwort auf das gleiche Problem gesucht, also wollte ich mitteilen, was ich darüber gelernt habe.)
quelle
Die Antwort von Reza Askari war genau die Antwort auf die dritte Frage. Dies geschah sowohl auf meinem Linux-Computer als auch auf Android.
Auf dem Computer, bevor Sie eine Verbindung zu OpenVPN herstellen
Sie sollten eine Regel hinzufügen, um den Stunnel-Server aus dem OpenVPN-Tunnel zu entfernen.
Stellen Sie dann eine Verbindung zu Ihrem OpenVPN-Server her. Wenn Sie fertig sind, können Sie diese Regel entfernen, indem Sie:
Erstellen Sie ein Shell-Skript, das die Regel hinzufügt und OpenVPN ausführt, damit Sie sie nicht vergessen. Wenn OpenVPN beendet wird, wird die Regel gelöscht:
Verwenden Sie auf Android den Client "OpenVPN für Android" von "Arne Schwabe" und "SSLDroid" von "Balint Kovacs".
Schließen Sie dann im OpenVPN-Client "SSLDroid" aus dem VPN-Profil aus, das den Tunnel durchläuft.
Ich hätte Rezas Antwort oder Kommentar dort gerne positiv bewertet, aber diese Bewertungsregel hat mich davon abgehalten.
quelle
Ich habe es noch nie ausprobiert (also weiß ich, ob es funktioniert!), Aber probiere es mit ssh-Tunneling über 443 aus und starte dein OpenVPN durch den Tunnel. Möglicherweise benötigen Sie einen zusätzlichen Remote-Host, um 443 abzuhören, wenn Sie keinen haben. Hier finden Sie jedoch ein Beispiel für die Verwendung des Proxyservices unter http://www.anonyproz.com/openvpnsshtunnel.pdf [Anmerkung der Redaktion: this Wayback Machine link mag sicherer sein], aber das ist auch Googlable:
https://www.google.com/search?q=ssh%20tunnel%20openvpn .
Ich kenne auch Leute, die diesen Ansatz als Proxy verwenden, weil ihr Arbeitgeber den Zugriff auf Job-Websites wie dice.com blockiert hat, als sie beliebt waren.
quelle