SSH einen vorhandenen SOCKS-Proxy nutzen lassen
Verwenden Sie einen vorhandenen SOCKS-Proxy als Transport für eine SSH-Verbindung über einen kompatiblen ProxyCommand-Helfer.
ssh -D erzeugt einen SOCKS-Listener; es wählt keinen vorhandenen für die SSH-eigene Verbindung aus. Mit der OpenBSD-Implementierung von nc verwenden Sie einen Host-Eintrag in der SSH-Clientkonfiguration, etwa ~/.ssh/config:
Host server-via-socks
HostName ssh.example.com
User alex
ProxyCommand nc -X 5 -x 127.0.0.1:1080 %h %p
Rufen Sie ssh server-via-socks auf. Der Helfer kontaktiert den SOCKS5-Dienst auf dem Rechner des SSH-Clients und fordert Zielhost/-port an. SSH führt dann die übliche Host-Key-Prüfung und Benutzeranmeldung innerhalb des Streams durch.
Prüfen Sie die Helfer-Unterstützung, bevor Sie ein Proxy-Passwort eingeben. OpenBSD nc dokumentiert Proxy-Authentifizierung für HTTP CONNECT, nicht SOCKS-Authentifizierung. Ein zugangsdatengeschützter SOCKS-Dienst benötigt möglicherweise einen anderen kompatiblen Helfer. Behalten Sie die Authentifizierung des geteilten Proxys bei, statt sie zu entfernen, um zu einem nicht unterstützten Client zu passen.
Das Ziel sieht die ausgehende Verbindung des Proxys, während die SSH-Prüfung weiterhin den echten Server identifiziert. Das Scheitern, seinen Port zu erreichen, tritt vor der SSH-Anmeldung auf; ein akzeptierter Tunnel mit anschließender Schlüsselablehnung gehört zu den SSH-Zugangsdaten.
Die Einstellung gilt für diese SSH-Verbindung. Sie konfiguriert weder Browserverkehr noch jede andere Anwendung.