SSH経由で別のマシンを使用してHTTPトラフィックをトンネリングする

SSH経由で別のマシンを使用してHTTPトラフィックをトンネリングする

次のような状況があります:

サーバー 1: パブリック IP xxxx プライベート IP 192.168.0.1

サーバー 2: プライベート IP 192.168.0.10

サーバー 1 は両方のインターフェースを使用してインターネットにアクセスできます。

ping -i x.x.x.x www.google.com
www.google.com is alive

ping -i 192.168.0.1 www.google.com
www.google.com is alive

サーバー 2 は ssh 経由でサーバー 1 にのみアクセスできます。このサーバーにいくつかのパッケージを更新し、いくつかの新しいパッケージをインストールする必要があります (すべてシェル コマンド)。私はすでに以下を使用して試しました:

ssh -D 9001 root@server1

サーバー 2 で localhost:9001 を使用して http_proxy/ftp_proxy をエクスポートしましたが、機能しないようです。サーバー 1 のパブリック接続を使用するにはどうすればよいですか?

答え1

この-Dオプションは、SOCKS4/5 サーバーを有効にします。これは通常の HTTP/FTP プロキシと同じではないため、異なる方法でインターフェイスする必要があります。多くのブラウザーは SOCKS プロキシをサポートしていますが、通常は http_proxy/ftp_proxy 環境変数経由ではサポートされません。

SOCKSを直接サポートしていないプログラムは、ソックス

参照https://superuser.com/questions/262956/how-to-invoke-a-command-using-specific-proxy-serverそしてSSH サーバー経由でファイルをダウンロードするにはどうすればよいですか?

関連情報