Techfirm Cloud Architect Blog

テックファーム株式会社クラウドインフラグループのブログ

EC2 Instance Connectの使い方(パブリック IP アドレス不要!)

はじめに

EC2 Instance Connect Endpointを使うことで、EC2インスタンスにパブリックIPアドレスを付与せずにSSH接続が行えるようになりました。

実際に使ってみたいと思います。

使い方

準備

接続先となるEC2インスタンス

EC2 Instance Connectの導入が必要です。
Red Hat Enterprise Linuxなどはサポートされていないため、今回はEC2 Instance ConnectがプリインストールされたAmazon Linux 2023を使用します。

接続するユーザへの権限付与

接続するユーザにはEC2 Instance Connect Endpointを使用するためのIAMアクセス許可の付与が必要です。ドキュメントに従い権限付与を行いましょう。

セキュリティグループ

2つのセキュリティグループを作成します

  • EC2 Instance Connect Endpointセキュリティグループ
    EC2 Instance Connect Endpointに設定するセキュリティグループです。
    アウトバウンドルールを以下のように修正します。
タイプ プロトコル ポート範囲 送信先
SSH TCP 22 インスタンスセキュリティグループルールのID
  • インスタンスセキュリティグループ
    EC2インスタンスに設定するセキュリティグループです。
    今回はセキュリティグループの設定で特定IPから接続許可の設定を行います。
    インバウンドルールを以下のように修正します。
タイプ プロトコル ポート範囲 ソース
SSH TCP 22 接続許可したいIPアドレス

EC2 Instance Connect Endpointの作成

ドキュメント内に以下の記述があるため、注意しながら設定を行いましょう。

EC2 Instance Connect Endpoint は、作成後に変更することはできません。別のエンドポイント設定が必要な場合は、EC2 Instance Connect Endpoint を削除し、必要な設定で新しいエンドポイントを作成する必要があります。

「VPC」→「エンドポイント」→「エンドポイントを作成」と遷移し、エンドポイント作成画面に移動します。
エンドポイントの設定項目のサービスカテゴリは「EC2インスタンス接続エンドポイント」を選択します。

接続先のVPC、セキュリティグループは先ほど作成した、EC2 Instance Connect Endpointセキュリティグループを選択、サブネットをそれぞれ選択します。

ポイントとして、今回は接続元のIP制限をセキュリティグループで行いたいため、VPC選択時に追加設定メニューを開き、「クライアントIPの保持」メニューにある以下のチェックボックスをオンにします。

EC2 インスタンス接続エンドポイントは、クライアント IP の保存をサポートしています。リソースへの接続時にクライアントの IP アドレスをソースとして使用するように EC2 インスタンス接続エンドポイントを設定できます (preserveClientIp パラメータが true)。

ステータスが「使用可能」となれば準備は完了です。

接続してみる

AWS CLIを使って接続します。

aws ec2-instance-connect ssh --instance-id i-0123456789example --connection-type eice --eice-options maxTunnelDuration=3600
   ,     #_
   ~\_  ####_        Amazon Linux 2023
  ~~  \_#####\
  ~~     \###|
  ~~       \#/ ___   https://aws.amazon.com/linux/amazon-linux-2023
   ~~       V~' '->
    ~~~         /
      ~~._.   _/
         _/ _/
       _/m/'
Last login: Wed Nov  1 08:28:57 2023 from 61.200.96.103

無事接続完了できました。
オプションでポート転送の設定を追加したり、設定済みのキーペアの秘密鍵を使い接続することも可能です。使い勝手は通常のSSH接続とほぼ同等になっているかと思います。

あとがき

パブリックIPアドレスの削減策として有効活用できるサービスとして、有効活用しましょう。