web-dev-qa-db-ja.com

SSHをSOCKS 5プロキシで使用するにはどうすればよいですか?

動的ポートとして構成されたポート7777でPuTTYを介して設定されたSOCKS5プロキシがあります。 localhostおよびポート7777でSOCKSプロキシを使用するように設定することで、firefox/filezilla/etcを使用できます。しかし、動的ポートを使用してリモートサーバーに(Cygwin経由で)sshを実行する方法がわかりません。これは可能ですか?

以下の方法でProxyCommandを使ってみました。

  1. 次の行で~/.ssh/configを作成します。

    ProxyCommand /usr/bin/nc -X connect -x 127.0.0.1:7777 %h %p
    
  2. Ssh -p22 user @ remotehostを実行します。

私が受け取るメッセージはssh_exchange_identification: Connection closed by remote Hostです

36
Rusty Lemur

プロキシバージョンとしてHTTPSの「接続」を使用しています。これはman ncによるものです。

-X proxy_version ncがプロキシサーバーと通信するときに指定されたプロトコルを使用するように要求します。サポートされるプロトコルは、 '' 4 ''(SOCKS v.4)、 '' 5 ''(SOCKS v.5)および 'connect'(HTTPSプロキシ)です。プロトコルが指定されていない場合、SOCKSバージョン5が使用されます。

したがって、SOCKS 5を使用するには、以下を使用する必要があります。

ProxyCommand /usr/bin/nc -X 5 -x 127.0.0.1:7777 %h %p

または単に:

ProxyCommand /usr/bin/nc -x 127.0.0.1:7777 %h %p

お役に立てば幸いです。

33
Saman Barghi
ssh -o ProxyCommand='nc --proxy-type socks4 --proxy 127.0.0.1:9050 %h %p' user@Host

fc19 x86_64、Ncat:バージョン6.25

12
user264910

tsockshttp://tsocks.sourceforge.net/ )は、LD_PRELOADを使用してプログラムで使用できるようにする素敵なラッパーです透過的にSOCKSプロキシ:

tsocks ssh example.com

正常に動作します。/ etc/tsocks.confでSO​​CKSプロキシIPを設定することを忘れないでください

3
neutrinus

次のコマンドは、ncを使用するだけで実行できます。

ssh examplehost.com -o "ProxyCommand=nc --proxy localhost:7000 %h %p"

デフォルトはHTTPプロキシです。ポート7000でHTTPプロキシが実行されています。

1
Chinglin Wen