【EC2 Instance Connect Endpoint】プライベートサブネットのEC2にSSH接続する方法

目次
はじめに
こんにちは!スカイアーチHRソリューションズのkawabataです!
プライベートサブネットに接続したいのにグローバルIPがないから接続できない
踏み台サーバはお金がかかるから憚られる
そんな時にもってこいの接続方法!それが・・・
EC2 Instance Connect Endpoint
です!
料金も無料で使えるので使わない手はないですね
早速やっていきましょ!!
事前準備
・VPCの作成 ※プライベートサブネット1つ以上を含む
・プライベートサブネットにAmazon Linux 2023のEC2を作成
セキュリティグループの作成
まず、EC2 Instance Connect Endpoint用のセキュリティグループを作成していきます。
VPCのページに移動し、左のペインから「Security groups」を選択し、右上の「セキュリティグループを作成」を押下します。
※以降EC2 Instance ConnectはEICと称します。

「セキュリティグループ名」「説明」を入力し、EC2の置かれているVPCを選択します。
アウトバウンドルールのタイプを「SSH」にし、送信先を「0.0.0.0/0」に設定します。
下にスクロールし、右下の「セキュリティグループを作成」を押下します。

同様にしてEC2用のセキュリティグループを作成していきます。
「セキュリティグループ名」「説明」を入力し、EC2の置かれているVPCを選択します。
アウトバウンドルールのタイプを「SSH」にし、送信先を先ほど作成したEIC用のセキュリティグループに設定します。
下にスクロールし、右下の「セキュリティグループを作成」を押下します。

EC2 Instance Connect Endpoint作成
左のペインから「Endpoints」を選択し、右上の「エンドポイント」を作成を押下します。

「名前タグ」に任意の名前を入力します。
サービスカテゴリから「EC2インスタンス接続エンドポイント」を選択します。
VPCは「事前に作成したVPC」、セキュリティグループは「EIC用のセキュリティグループ」をそれぞれ選択します。

下にスクロールし、「EC2を作成したプライベートサブネット」を選択し、右下の「エンドポイントを作成」を押下します。

エンドポイントのページに戻るので、EIC エンドポイントが作成できていることを確認します。

EC2にセキュリティグループをアタッチ
EC2のページに移動し、左のペインから「インスタンス」を押下します。
事前に作成したインスタンスを選択します。
右上の「アクション」を押下し、「セキュリティ」の中の「セキュリティグループ」を押下します。

検索欄に「事前に作成したEC2用のセキュリティグループ」を入力し、右側の「セキュリティグループを追加」を押下します。
右下の「保存」を押下します。

EIC エンドポイントで接続
先ほどと同様に、「インスタンス」を押下後、事前に作成したインスタンスを選択します。
右上の「接続」を選択します。

接続タイプから「EC2 Instance Connect エンドポイントを使用して接続する」を選択します。
EC2 Instance Connect Endpointで「今回作成したEIC エンドポイント」を選択し、右下の「接続」を押下します。

すると下の画像のような画面になり、接続が完了します。

おわりに
今回はEC2 Instance Connect Endpointを使用して、プライベートサブネットにあるEC2に接続する方法をご紹介しました!
Session Managerの様に、パッケージをインストールする必要がないのがお手軽で魅力的だと思いました。
Session ManagerはSession Managerで利用するメリットがあるので、利用する際は料金や仕様などを鑑みてどちらを利用するか検討するといいと思います!
最後までお付き合いいただきありがとうございました!!