異なるサブネットにある2台のマシンAとBがあり、どちらも別々のファイアウォールの背後にあります。マシンAはBを見ることができますが、BはAを見ることができません。両方のマシンにユーザーアカウント(ルート以外)があり、AからBをSSHで接続できます。代わりにBからAをSSHで接続できるようにしたい)ですが、直接行うことはできません。
トンネリングを使用してSSHで中間サーバーをホップしましたが、ここで求めているのは異なり、それが何と呼ばれるかわかりません。 AからBへの接続を開く方法はありますか?これは、マシンBから「逆に」使用してAでコマンドを実行できますか?
簡単な答えは「はい」です。方法は次のとおりです。
machine-A$ ssh -R 127.0.0.1:2222:127.0.0.1:22 [ip__or_name_of_B]
次に、B
でssh
からA
に次のようにできます。
machine-B$ ssh -p2222 127.0.0.1
これは次のように言います:
A
で、リモート側(-R
)にトンネルを作成し、ポート127.0.0.1
でローカルホスト(2222
)に向かうトラフィックがトンネルを通って戻るようにします。ローカルホスト(127.0.0.1
はローカル側にあります)ポート22
に送信されます
B
コマンドは、トンネルへの入り口であるローカルホストポート2222
にssh
と単純に言います。