Wie benutze ich OpenVPN über eine restriktive Firewall?

Ich bin derzeit in der Situation, OpenVPN auf einem persönlichen VPS einzurichten, um eine Verbindung hauptsächlich über eine zu restriktive Firewall herzustellen. Alle unten genannten Setups funktionieren, wenn sie über eine nicht installierte Verbindung verwendet werden.

Ich habe versucht:

  1. OpenVPN läuft auf dem standard-port -
  2. OpenVPN läuft auf Port 443 (Ich starte OpenVPN manuell über die Befehlszeile auf dem VPS und sehe, dass der Server die Verbindung meldet fast sofort geschlossen, nehme ich an, dies ist ein Ergebnis von DPI auf der Firewall)
  3. STunnel läuft auf Port 443, um auf OpenVPN zuzugreifen und DPI auszuweichen. Dies ist das erfolgreichste und ermöglicht eine Verbindung und einen Internetzugang über das VPN für ~10-20 Sekunden, bevor die Verbindung gewaltsam geschlossen wird.

Kann ich noch etwas versuchen?

Author: R.L. Stine, 2012-09-25

4 answers

Verbindungen, die nach einer gewissen Zeit abgeschnitten werden, weisen manchmal auf einen Byte-pro-Sekunde-Grenzwert hin. Versuchen Sie zu sehen, ob die Verlangsamung Ihrer VPN-Verbindung funktioniert. Wenn Sie OpenVPN für UDP konfiguriert haben, versuchen Sie es mit TCP (443 UDP kann blockiert sein, während 443 TCP möglicherweise nicht erkannt wird).

Besuchen Sie eine bekannte Site, die SSL verwendet, und überprüfen Sie das Zertifikat. Dann mach das gleiche zu Hause. Wenn sie nicht übereinstimmen, verwendet Ihr Standort einen transparenten HTTPS-SSL-Proxy und kann Ihr HTTPS tatsächlich sehen Verkehr.

Es ist möglich, dass etwas, das nicht Port 443 ist, nicht so genau beobachtet wird. Versuchen 22.

Es mag dumm klingen, 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 oder.

 11
Author: LawrenceC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-03-22 21:53:24

Ich glaube, ich weiß, warum sich die Stunnel-Methode so verhält. Dies 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 leitet alle Ihre Pakete über das VPN weiter ,mit Ausnahme der OPENVPN-Pakete. actualy openvpn fügt eine Route für Ihre Server-IP-Adresse hinzu. Wenn Sie jedoch Stunnel verwenden, um eine Verbindung zu Ihrem OPENVPN-Server herzustellen, verbinden Sie openvpn mit einer Loopback-Schnittstelle, und es gibt keine Route zu Ihrem Server außerhalb Ihres VPN möchten Stunnel-Pakete also zum Server gehen und sie gehen zu Ihrem VPN und Ihre VPN-Pakete gehen zu Stunnel:)

Sie müssen also eine Route zu Ihrer Server-IP hinzufügen, die außerhalb Ihres VPN (Ihres Heimrouters) liegt.

Und für das Problem mit der Methode Port 443 ich ganna sagen, dass vielleicht Ihre die Firewall mit SPI oder DPI und die können leicht machen diffrent openvpn-Pakete von https (ssl) Pakete. Der beste Weg ist also, Stunnel zu verwenden, oder wenn die Firewall SSL-Pakete blockiert, ist es besser zu verwenden obfsproxy oder fteproxy, um es zu umgehen.

(ich weiß, der post ist alt, aber ich war auf der Suche nach der Antwort über das gleiche problem seit Wochen ,also wollte ich teilen, was ich learnd über diese)

 5
Author: Reza Askari,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2015-09-01 11:43:39

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 über

sudo openvpn --config configFile.ovpn

Sie sollten eine Regel hinzufügen, um den Stunnel-Server aus dem OpenVPN-Tunnel zu entfernen.

sudo /sbin/ip route add stunnel_ip via default_gateway_ip

Stellen Sie dann eine Verbindung zu Ihrem OpenVPN-Server her. Wenn Sie fertig sind, können Sie diese Regel entfernen durch:

sudo /sbin/ip route del stunnel_ip

Um die Dinge einfacher zu machen, damit Sie nicht vergessen würden, erstellen Sie ein Shell-Skript, das die regel und führen Sie die OpenVPN, wenn OpenVPN beendet wird, wird die Regel gelöscht:

sudo /sbin/ip route add stunnel_ip via default_gateway_ip

sudo openvpn --config configFile.ovpn

sudo /sbin/ip route del stunnel_ip

Auf Android, verwenden "OpenVPN für Android" client durch " Arne Schwabe "und" SSLDroid "durch"Balint Kovacs".

Schließen Sie dann im OpenVPN-Client "SSLDroid" aus dem VPN-Profil aus, das den Stunnel durchläuft.

Ich hätte gerne Rezas Antwort oder Kommentar dort upvote, aber diese Reputation Score Regel hinderte mich.

 3
Author: 0x00FE,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-08-22 00:17:30

Ich habe es noch nie versucht (also lemme weiß, ob es funktioniert!), aber geben Sie einen Schuss @ mit ssh-tunneling über 443 und führen Sie Ihre OpenVPN-durch den tunnel. Möglicherweise benötigen Sie einen zusätzlichen Remote-Host, um 443 abzuhören, wenn Sie keinen haben, aber hier gibt es ein Beispiel http://www.anonyproz.com/openvpnsshtunnel.pdf für die Verwendung ihres Proxy-Dienstes [Anmerkung des Herausgebers: Dieser Wayback Machine Link ist möglicherweise sicherer], aber dies 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 Baustellen blockiert hat, z dice.com damals, als sie populär waren.

 1
Author: MDMoore313,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-10-31 19:47:46