SOCKS Proxy nutzen/openssh

Aus UUGRN
< SOCKS Proxy nutzen
Version vom 27. Februar 2016, 19:51 Uhr von Rabe (Diskussion | Beiträge) (OpenSSH und netcat-openbsd)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

OpenSSH hat keine eingebaute Methode um direkt mit einem SOCKS-Proxy zu kommunizieren. Allerdings kann es über die Option ProxyCommand ein externes Tool aufrufen, welches dann stellvertretend die TCP-Verbindung zum SSH-Server aufbaut.

Idealerweise trägt man dazu pasende Abschnitte in seiner ~/.ssh/config ein:

Beispiel
# ---- ~/.ssh/config
# SOCKS-Proxy auf Port 1087 = via shell.uugrn.org
Host *.uugrn.lan
        ProxyCommand /bin/nc -X 5 -x 127.0.0.1:1087 %h %p
Beispiel Zugriff auf mysql.uugrn.lan
$ ssh root@mysql.uugrn.lan
The authenticity of host 'mysql.uugrn.lan (<no hostip for proxy command>)' can't be established.
ECDSA key fingerprint is SHA256:SskRfXuQ48uwTXubslRXJ9lKFKaIQ69xJQpkxpHhQKM.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'mysql.uugrn.lan' (ECDSA) to the list of known hosts.
[…]
[root@mysql ~]# echo $SSH_CONNECTION 
10.253.1.22 21877 10.253.1.138 22
Beispiel Zugriff auf mysql.uugrn.lan mit alternativem ProxyCommand / anderer Port
$ ssh -o 'ProxyCommand = /bin/nc -X 5 -x 127.0.0.1:1087 %h %p' root@mysql.uugrn.lan
[root@mysql ~]# echo $SSH_CONNECTION 
10.253.1.22 64109 10.253.1.138 22