Windows 10 で SSH トンネルを介して複数のドメインへのネットワーク呼び出しを再ルーティングする

Windows 10 で SSH トンネルを介して複数のドメインへのネットワーク呼び出しを再ルーティングする

次のような状況があります。SSHトンネル経由でのみアクセスできるホストがいくつかあります。

SSH トンネルを確立し、接続に必要な 443 ポートをローカル ポートにバインドできます。

ssh -L 1443:example.com:443 -L 2443:other.com:443 -A -l username myproxy.com

これまでのところ、これはうまく動作しています。 を呼び出すとhttps://localhost:1443、example.com を開くことができ、 を呼び出すとhttps://localhost:2443、other.com を呼び出すことができます。

問題: 一部のアプリはこれを認識せず、通常のホスト名とポート経由で接続しようとします。

次の行をhostsファイルに追加すると、最終的な解決策に一歩近づくことができます。

127.0.0.1 example.com
127.0.0.1 other.com

これにより、ブラウザでhttps://example.com:1443と を呼び出すことができるようになりますhttps://other.com:2443が、ポートはまだ問題です。443他のアプリケーションで動作させるには、両方のドメインをローカル ポートにマップする必要があります。

443ローカル プロキシ サーバーをポートでリッスンし、ホスト名に基づいてトラフィックを または に転送する1443必要があると思いますが、2443ここがわかりません。

マシン上のすべてのアプリがホスト名/ポートのみを使用し、トラフィックが SSH トンネルを経由できるようにするには、どうすればよいですか?

答え1

を使用しますssh -D。これにより、指定されたポート(通常は1080または9050)にSOCKS 5プロキシサーバーが作成され、ブラウザで設定してアクセスできます。すべてSSH トンネル経由で。

これは OpenSSH、PuTTY (plink)、Bitvise Tunnelier と同様に動作し、オペレーティング システム レベルの機能に依存しません。

たとえば、ssh -D 9050実行中の場合、Firefox を次のように設定できます。

ここに画像の説明を入力してください

(Chromeではコマンドラインオプションその代わり。)

関連情報