HAYDAY!

忘れやすいポンコツ人間。学んだこと、日々感じたこと、備忘録用ブログ

AWS プライベートサブネットのEC2に踏み台経由でSSHで接続する

こんにちは!

 

基本的な下記のような構成の場合に、プライベートサブネットに置いているインスタンスにはSSHすることができません。(プライベートサブネットはインターネットにつながっていないため)

 

f:id:soyaaman:20200516010420p:plain

ちなみにプライベートサブネットとパブリックサブネットの違いは

 

プライベートサブネット:インターネットゲートウェイに紐づいていない

パブリックサブネット:インターネットゲートウェイに紐づいている

 

という感じで、サブネットを作る時にそういう設定や機能がある訳ではなく

ルートテーブルやACLの機能をつかった考え方です。

 

 

今回、プライベートサブネットにローカルクライアントからSSH接続するために

踏み台経由で接続させるように対応したので、忘れないようにメモします。

 

構成

f:id:soyaaman:20200516010420p:plain

 

手順

プライベートサブネットにあるEC2のセキュリティグループのインバウンドにて、VPCのアドレスレンジからのSSH(22)を許可します。

f:id:soyaaman:20200516010539p:plain

 

次にNATゲートウェイを作成し、プライベートサブネットのほうのルートテーブルにてNATゲートウェイを紐づけます。

NATゲートウェイ作成時にサブネットはパブリックサブネットを選択します。

f:id:soyaaman:20200522230528p:plain

最後に、踏み台のセキュリティグループのインバウンドにてクライアントのGIPからのSSH接続を許可します。

f:id:soyaaman:20200516010842p:plain

 

次にネットワークACLがデフォルトのままであれば、ネットワークACL側でも同様にVPC内からのSSH接続を許可してください。

※ネットワークACLはインバウンドだけではなくアウトバウンドにて「すべてのトラフィック」を「VPCのアドレスレンジ」内で許可してください。

 

 

以上で下記のように接続できるようになると思います!

f:id:soyaaman:20200516010420p:plain

 

 

参考になれば幸いです!ありがとうございました!