J'ai un proxy SOCKS5 configuré via PuTTY avec le port 7777 configuré en tant que port dynamique. Je peux utiliser firefox/filezilla/etc en les configurant pour utiliser un proxy SOCKS avec localhost
et le port 7777
. Mais je ne peux pas comprendre comment ssh (via Cygwin) sur un serveur distant en utilisant le port dynamique. Est-ce possible?
J'ai essayé d'utiliser ProxyCommand
via la méthode suivante.
Créez ~/.ssh/config
avec la ligne suivante:
ProxyCommand /usr/bin/nc -X connect -x 127.0.0.1:7777 %h %p
Le message que je reçois est ssh_exchange_identification: Connection closed by remote Host
Vous utilisez 'connect' pour HTTPS comme version de proxy, cela provient de man nc:
-X proxy_version Demande à nc d'utiliser le protocole spécifié lors d'une conversation avec le serveur proxy. Les protocoles pris en charge sont "4" (SOCKS v.4), "5" (SOCKS v.5) et "connect" (proxy HTTPS). Si le protocole n'est pas spécifié, la version 5 de SOCKS est utilisée.
Vous devez donc utiliser ce qui suit pour utiliser SOCKS 5:
ProxyCommand /usr/bin/nc -X 5 -x 127.0.0.1:7777 %h %p
Ou simplement:
ProxyCommand /usr/bin/nc -x 127.0.0.1:7777 %h %p
J'espère que ça aide.
ssh -o ProxyCommand='nc --proxy-type socks4 --proxy 127.0.0.1:9050 %h %p' user@Host
fc19 x86_64, Ncat: Version 6.25
tsocks ( http://tsocks.sourceforge.net/ ) est un wrapper de Nice utilisant LD_PRELOAD. pour que tout programme utilise le proxy SOCKS de manière transparente:
tsocks ssh example.com
Cela fonctionne simplement, pensez à configurer l’adresse IP du proxy SOCKS dans /etc/tsocks.conf
Cette commande suivante fera, pour utiliser simplement nc:
ssh examplehost.com -o "ProxyCommand=nc --proxy localhost:7000 %h %p"
La valeur par défaut est un proxy HTTP. Un proxy HTTP est exécuté sur le port 7000.