SOCKS vs. SSH Local Port Forwarding


Antworten:


23

Mit -Lleitet SSH alle Verbindungen an ein festes Ziel weiter. Wenn Sie eine Verbindung zum lokalen Port herstellen, werden alle von Ihnen gesendeten Daten direkt an den Remote-Host gesendet, den Sie in angegeben haben -L. Dazu müssen Sie natürlich wissen, zu welchem ​​Host Sie Verbindungen weiterleiten möchten.

Bei -Dist das Ziel "dynamisch" - nach dem Herstellen einer Verbindung zum lokalen Port müssen Sie das SOCKS-Proxy-Protokoll verwenden, um eine weitere Verbindung zu einem beliebigen Remote-Host herzustellen. Dies macht SSH im Grunde zu einem echten Proxy-Server, der für Aktivitäten wie das Surfen im Internet geeignet ist, bei denen Sie das Ziel nicht im Voraus kennen.

Führen Sie ssh -D 1080beispielsweise Firefox aus und konfigurieren Sie es so, dass ein SOCKS 5-Proxy unter verwendet wird localhost:1080.


2
Ich benutze es oft, ssh -D 8080 myhomecomputerwenn ich meinen Laptop im öffentlichen WLAN verwende.
Evan Krall

2
@EvanKrall Ist der Vorteil dieses Ansatzes die Tatsache, dass der gesamte Datenverkehr (vorausgesetzt, die Anwendungen verwenden tatsächlich den SOCKS-Proxy) über Ihre SSH-Verbindung verschlüsselt wird (dh es werden keine Klartext- Netzwerkanforderungen gestellt)? Wie kann man außerdem sicherstellen, dass der gesamte Datenverkehr über den Proxy gesendet wird? Gibt es eine empfohlene Möglichkeit, dies für alle Anwendungen zu tun?
Blong

1
@blong: Es wird empfohlen, stattdessen eine betriebssystemweite VPN-Verbindung zu verwenden.
user1686

Ah, ich verstehe, danke @grawity. Ich dachte, es könnte etwas sein, das man ohne einen VPN-Client implementieren könnte :)
blong
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.