web-dev-qa-db-ja.com

宛先からターゲットへのSSH接続を「リバース」

異なるサブネットにある2台のマシンAとBがあり、どちらも別々のファイアウォールの背後にあります。マシンAはBを見ることができますが、BはAを見ることができません。両方のマシンにユーザーアカウント(ルート以外)があり、AからBをSSHで接続できます。代わりにBからAをSSHで接続できるようにしたい)ですが、直接行うことはできません。

トンネリングを使用してSSHで中間サーバーをホップしましたが、ここで求めているのは異なり、それが何と呼ばれるかわかりません。 AからBへの接続を開く方法はありますか?これは、マシンBから「逆に」使用してAでコマンドを実行できますか?

1
Jonathan H

簡単な答えは「はい」です。方法は次のとおりです。

machine-A$ ssh -R 127.0.0.1:2222:127.0.0.1:22 [ip__or_name_of_B]

次に、BsshからAに次のようにできます。

machine-B$ ssh -p2222 127.0.0.1  

これは次のように言います:

  • Aで、リモート側(-R)にトンネルを作成し、ポート127.0.0.1でローカルホスト(2222)に向かうトラフィックがトンネルを通って戻るようにします。ローカルホスト(127.0.0.1はローカル側にあります)ポート22に送信されます

  • Bコマンドは、トンネルへの入り口であるローカルホストポート2222sshと単純に言います。

4
user1794469