TeratermでSSHポートフォワード~トンネリング~

サーバーAを経由してサーバーBに接続したいと思います。

一般的なWEBサーバーの構成として、WEBサーバーとデータベースサーバーは物理的に別機器であり、セキュリティの観点から、外部よりWEBサーバーに接続できても、データベースサーバーには直接SSH接続できないようになっていることがあるかと思います。

そんな時、サーバーA(WEBサーバー)を経由してサーバーB(データベースサーバー)にSSH接続することをSSHポートフォワード(トンネリング)と言います。

接続を簡単に解説するとこんな感じです。
接続元PC → サーバーA → サーバーB

なお、以下はWEBサーバーからはデータベースサーバーにSSH接続できることを前提としての、説明となります。


TeraTermを起動すると「新しい接続(New connection)」と出ますが、キャンセル(Cancel)します。
portforward_01


メニューの[設定(Setup)]>[SSH転送(SSH Forwarding)]を選択し、開いた画面で「追加(Add)」を押下します。
portforward_02


以下の設定をします。

【ローカルのポート(Forward local port)】
 任意のポート番号(12345など使用されていないポートなら何でも良い)
【リッスン(listen)】
 空白
【リモート側ホスト(to remote machine))】
 接続するサーバーBのホスト名またはIPアドレス
【リモート側ポート(port)】
 サーバーBのSSHポート(※通常は22)
portforward_03

OKを押し、設定が追加されていることを確認してください。
portforward_04

「OK」を押し設定画面を閉じます。


まずは、サーバーAに通常のSSH接続をしてください。


サーバーAに接続した状態のまま、新しくTeraTermを起動しlocalhostで接続します。
その際ポート番号は上で指定したローカルのポート番号を使用します。
portforward_05

SSH認証画面が表示されるのでサーバーBのユーザー名・パスワードなどを入力する。

LINEで送る