第1話

踏み台サーバー経由でEC2インスタンスにSSH接続する方法

こんにちは!Takuya.B(@TB_IQ)です。

パブリックサブネットに設置したEC2インスタンス(踏み台サーバー)からプライベートサブネット内のEC2インスタンス(WEBサーバー)にSSH接続する方法をご紹介します。

スポンサーリンク

踏み台サーバー経由でSSH接続する方法

まず前提として、踏み台サーバーとWEBサーバーのIPアドレスは以下と仮定します。

  • 踏み台サーバーのパブリックIP: xxx.xxx.xxx.xxx
  • WEBサーバーのローカルIP: yyy.yyy.yyy.yyy

通常、WEBサーバーにSSH接続する際は以下コマンドを入力します。

ssh username@yyy.yyy.yyy.yyy

踏み台サーバー経由でWEBサーバーにアクセスするにはProxyCommandオプションを使用します。

ProxyCommandオプションを使用する場合、コマンドは以下のようになります。

ssh -o ProxyCommand='ssh username@xxx.xxx.xxx.xxx -W yyy.yyy.yyy.yyy:22' username@yyy.yyyy.yyy.yyy

AWS EC2インスタンスを使用する場合

AWS EC2インスタンスではキーペア情報を用いてSSH接続すると思います。

この場合のSSH接続するためのコマンドは以下のようになります。キーペア情報は sample.pem 、ユーザー名は ec2-user と仮定します。

ssh -o ProxyCommand='ssh -i sample.pem ec2-user@xxx.xxx.xxx.xxx -W yyy.yyy.yyy.yyy:22' -i sample.pem ec2-user@yyy.yyy.yyy.yyy

こうすることでパブリックサブネット内のEC2インスタンス経由でプライベートサブネットのEC2インスタンスにSSH接続することが可能になります。

スポンサーリンク

あとがき

セキュリティの関係などで踏み台サーバー経由でしかSSH接続を受け付けない場合というのはあります。

私も頻繁に使用するわけではありませんが、いざというときのために覚えておくようにしましょう。

というわけで、次回もよしなに!