ForwardAgentとは?
ローカルエリアネット内に2つ以上のサーバーが存在し、それらにSSHで接続したい場合、
クライアントがローカルエリア内ならば、サーバーのアドレスを入力することで、
それぞれのサーバーにアクセスが出来ます。
しかし、外部から(インターネットなどから)ローカルエリアに接続する場合、
外部からの接続はまずルーターが処理をします。(ブロードバンドルーター)
このとき、ルーターは外部から接続しようとしているコネクションを内部に通すか
ファイヤーウォールの設定に基づき処理をします。
このとき、外部からSSHポートに接続を試みたコネクションはそのまま特定のIPにフォワードする
という設定をしておくことで、外部から内部のサーバーにアクセスできるようになります。
しかし、内部に複数のサーバーが合っても、ルーターは一つのポートには一つの内部IPへしか
フォワードしてくれません。
そこで、その一つのサーバーをゲートウェイサーバーとして利用し、
外部からはまずゲートウェイサーバーにSSHで接続し、そのゲートウェイサーバーのコンソールから
さらにSSHクライアントを使ってローカルエリアネットワークの異なるサーバーにSSHで接続するという
方法が考えられます。
しかし、この方法を使う場合、
「外部----->ゲートウェイ」用の鍵ペア
「ゲートウェイ------>内部の異なるサーバー」用の鍵ペア
と複数の異なる鍵が必要になり、しかもその都度パスフレーズを入力しなければなりません。
そこで、その煩雑さをなくすために
「外部----->ゲートウェイ」用の鍵ペアを「ゲートウェイ------>内部の異なるサーバー」でも使えるようにし、
そのパスワードをフォワードして、パスフレーズの入力を一度だけにしようというのがForwardAgentです。
鍵を統一する
といっても、
「外部----->ゲートウェイ」と「ゲートウェイ------>内部の異なるサーバー」で異なる鍵ペアを使ってたらダメです。
「外部----->ゲートウェイ」用の鍵ペアのうち、公開鍵を「内部の異なるサーバー」にコピーします。
これで、一つの秘密鍵で異なるサーバーにアクセスできるようになります。
ForwardAgentを有効にする
ForwardAgentを行うかどうかはクライアントで設定します。
PuTTyの場合、接続時の設定で「接続→SSH→認証」とカテゴリをたどっていくと「認証パラメータ」という項目の部分に
「エージェントフォワーディングを認める」という箇所があるのでこれにチェックをします。
これで、ForwardAgentが有効になりました。
最終更新:2006年06月27日 11:30