CUEBiC TEC BLOG

キュービックTECチームの技術ネタを投稿しております。

プライベートサブネットにあるEC2へのアクセスが無料!?: EC2 Instance Connect Endpointの紹介


EC2 Instance Connect Endpointとは?

まずはEC2 Instance Connect Endpointの概要についてお話しします!
EC2 Instance Connect Endpointは、AWSが提供するEC2サービスにおけるSSH接続のセキュリティと利便性を向上させるための革新的な機能で、パブリックIPv4アドレスがなくてもSSH接続を可能とします。

  1. 無料で安心: EC2 Instance Connect Endpointは無料で提供されているので、予算を気にする必要がありません。従来では踏み台サーバーを立てたりセッションマネージャーを用いたりすると料金が発生していたので革新的です!
  2. 最新のセキュリティ: 最新のセキュリティスタンダードに対応していて、SSH接続もしっかり保護されています。無料だからといってセキュリティが甘いわけではないのです!
  3. 手軽に使える: 設定が簡単で、SSHキーのトラブルやパスワードの忘れも心配がありません。簡単な上、管理の手間が減るのはありがたいですね!

つまり、EC2 Instance Connect Endpointはお金かからず、セキュアで手間いらずな最新ツール。AWSユーザーにはぴったりというわけです!

アーキテクチャ*1

セキュリティグループの作成

では、ここからは実際にEC2 Instance Connect Endpointを使ってEC2にアクセスする方法を紹介していきます。

まずは以下のようにセキュリティグループの作成を行います。

  • EICエンドポイント用セキュリティグループの作成 送信先をEC2インスタンス用セキュリティグループにします。

  • EC2インスタンス用セキュリティグループの作成 ソースをEICエンドポイント用セキュリティグループにします。

送信先やソースの許可範囲を広くとっても良いのですが、セキュリティの観点から原則として最小限の必要なアクセスのみを許可することが推奨されています。それに従い、EIC・EC2間のみ許可をしています。

EICエンドポイントの作成

次はEICエンドポイントの作成を行っていきましょう。

エンドポイントはVPCからエンドポイントを選択し、エンドポイントを作成します。

エンドポイントの設定では名前を任意で入力し、サービスはEC2 Instance Connect Endpointを選択します。

VPCではエンドポイントを作成するVPCを選択、セキュリティグループでは先ほどEICエンドポイント用に作成したものを選択します。

そして最後に任意のプライベートサブネットとタグの設定を行います。
全ての設定が完了したらエンドポイントを作成を選択します。

インスタンスに接続

では実際にインスタンスに接続してみましょう。

使用したいインスタンスを選択し、画面中央上の接続を選択します。

接続タイプを「EC2 Instance Connect Endpointを使用して接続する」を選択し、EC2 Instance Connect エンドポイントでは先ほど作成したエンドポイントを選択します。

接続を選択すると無事EC2へ接続することができました!

ターミナルからの接続

ブラウザではなくターミナルからも接続したい場合があると思いますので、こちらの手順もご紹介します。

各々のinstance-idに置き換えて以下のコマンドを実行します。

aws ec2-instance-connect ssh --instance-id <instance-id> --connection-type eice

こちらも無事に接続ができました!

さいごに

プライベートサブネットにあるEC2インスタンスへのアクセスは、漠然と難しいものだと考えていましたが、簡単に行うことができました。新たな技術の利用によって、業務がよりスムーズに進行し、効率的に作業を進めることができることを想像するとワクワクしますね!

皆さんもぜひ、 EC2 Instance Connect Endpointを試してみてください!