こんにちは。
本日はもう1つ、AWSのマネジメントコンソールでSystems Managerのセッションマネージャー用のVPCエンドポイントを作成する手順を記載します。
1. セッションマネージャーとVPCエンドポイントの関わり
1-1. セッションマネージャーの前提条件
Systems Managerの機能の1つ、セッションマネージャーは、AWSのマネジメントコンソールから仮想サーバーにシェルアクセスできるサービスです。
セッションマネージャーを利用するには以下の準備が必要です。
- 仮想サーバーを立ち上げるためのAmazon Machine Image(AMI)で、
Systems ManagerのSSM Agentが含まれるAMIを用意している - 仮想サーバーでセッションマネージャーを使うために必要な、
IAMロールを作成している - 仮想サーバーから、
セッションマネージャーのエンドポイントへのアクセス経路を用意している - 仮想サーバーに設定するセキュリティグループで、
0.0.0.0/0に対するhttpsのアウトバウンドの許可ルールを含むセキュリティグループを
用意している
前提条件の詳細はユーザーガイドの以下の箇所を参照してください。
AWS Systems Manager ユーザーガイド > Session Manager > Session Managerのセットアップ > ステップ 1: Session Manager の前提条件を満たす
https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/session-manager-prerequisites.html
ここで、アクセス経路について記載します。
Internet Gatewayが存在するVPCでは、VPC内の仮想サーバーから、セッションマネージャーで利用する複数のマネージドサービスのエンドポイントにアクセスする経路があります。NAT Gatewayが用意されていれば、プライベートサブネットの仮想サーバーもエンドポイントにアクセス可能です。
しかしながら、Internet Gatewayが無い完全閉域のVPCでは、デフォルトではVPC内の仮想サーバーからセッションマネージャーのエンドポイントにアクセスができません。
そこで、Internet Gatewayが無い完全閉域のVPC内から、直接マネージドサービスのエンドポイントにアクセスする経路として利用できる、VPCエンドポイントというリソースを作成します。
1-2. VPCエンドポイントについて
VPCエンドポイントは、VPCの中から、Internet Gatewayを介さずに直接AWSのマネージドサービスのエンドポイントにアクセスするためのリソースです。
VPCエンドポイントは、以下の2種類があります。
タイプ | 特徴 | アクセス先の エンドポイントの IPアドレス |
利用できる サービス |
Gateway型 |
|
パブリック IPアドレス |
|
Interface型 |
|
プライベート IPアドレス |
各種あり ※S3もあり |
完全閉域のVPCでの利用を前提とする場合、セッションマネージャーでは、以下のマネージドサービスのVPCエンドポイントが必要です。
VPCエンドポイント | 必須? |
ec2messages.region.amazonaws.com | 必須 |
ssm.region.amazonaws.com | 必須 |
ssmmessages.region.amazonaws.com | 必須 |
その他 | 必要に応じて |
2. AWSのマネジメントコンソールでSystems ManagerのSession Manager用のVPCエンドポイントを作成する手順
2-1. 前提
(1) VPC
AWSのマネジメントコンソールでVPC作成時に、以下の条件で作成しているものとします。
- 自動生成のタグに「PoC-20240105」を設定
- 東京リージョンでAZを1つ作成
- パブリックサブネット無し
- プライベートサブネットを1つ作成
- NAT Gateway無し
- S3ゲートウェイ(=Gateway型のS3のエンドポイント)あり
VPCの作成については、以下の記事をご参照ください。
AWSのマネジメントコンソールでVPCを簡単に作成する
(2) セキュリティグループ
以下の条件で事前に作成しているものとします。
- セキュリティグループ「Common」
仮想サーバーに設定するセキュリティグループです。
以下の記事で作成しているものと同じ内容とします。
Commonセキュリティグループは、作成されていない場合は、
以下の記事と同じ内容で作成してください。
AWSのマネジメントコンソールでセキュリティグループを作成する
- セキュリティグループ「VPCEndPoint」
VPCエンドポイントに設定するセキュリティグループです。
以下の内容とします。
方向 | 通信種別 | 通信相手 | プロトコル |
インバウンド | ソース | Commonセキュリティグループ | HTTPS |
VPCEndPointセキュリティグループは、以下の記事を参考に作成してください。
AWSのマネジメントコンソールでセキュリティグループを作成する
VPCEndPointセキュリティグループを設定したVPCエンドポイントでは、以下ができるようになります。
- Commonセキュリティグループを設定した仮想サーバーから、
HTTPSの受信ができる
2-2. VPCエンドポイントを作成する
以下のリンクにアクセスします。
- 東京リージョンでVPCエンドポイントを作成する
https://ap-northeast-1.console.aws.amazon.com/vpcconsole/home?region=ap-northeast-1#CreateVpcEndpoint:
それでは、以下のVPCエンドポイントを順番に作成していきます。
- ec2messages.region.amazonaws.com
- ssm.region.amazonaws.com
- ssmmessages.region.amazonaws.com
(1) ec2messagesのVPCエンドポイントを作成する
まず、ec2messagesのVPCエンドポイントを作成します。
以下の内容を入力/設定していってください。
▼エンドポイントの設定
「名前タグ」を入力します。
「サービスカテゴリ」は、デフォルトの「AWSのサービス」でOKです。
項目 | 入力の仕方 | 入力値 |
名前タグ | テキスト | PoC-20240105-vpce-ec2messages |
サービス カテゴリ |
セレクト ボックス |
AWSの サービス |
▼サービス
「サービス」を入力します。
入力すると、VPCエンドポイントの候補が表示されます。
「ec2messages」のVPCエンドポイントが表示されたら、ラジオボタンで選択します。
項目 | 入力の仕方 | 入力値 |
サービス | テキスト | ec2messages |
サービス名 | ラジオ ボタン |
com.amazonaws.ap-northeast-1.ec2messages ※チェックする |
▼VPC
「VPC」は、あらかじめ作成しているVPCを選択します。
項目 | 入力の仕方 | 入力値 |
VPC | セレクト ボックス |
PoC-20240105-vpc |
▼サブネット
VPCエンドポイントを作成する「アベイラビリティゾーン」を選択します。
選択すると、VPCエンドポイントを作成できるサブネットの候補が表示されます。
VPCエンドポイントを作成する「サブネット」を選択します。
項目 | 入力の仕方 | 入力値 |
アベイラビリティゾーン | チェック ボックス |
ap-northeast-1a (apne1-az4) ※チェックする |
サブネット | セレクト ボックス |
該当するサブネット1つ |
VPCエンドポイントは、AZごとに1つのサブネットを設定します。
ここではシングルAZで設定していますが、実際の構築では可用性の要件に合わせて複数のAZを選択してください。
▼セキュリティグループ
「セキュリティグループ」は、準備のところで作成した「VPCEndPoint」を選択します。
項目 | 入力の仕方 | 入力値 |
セキュリティグループ | チェック ボックス |
VPCEndPoint ※チェックする |
▼ポリシー
この記事では、この項目はデフォルトの「フルアクセス」のままとします。
VPCエンドポイントへのアクセスを制限したい場合は、「カスタム」を選択して、アクセス権限のポリシーを入力します。
▼タグの確認とエンドポイントの作成
最後にタグを確認します。
タグは、最初の「名前タグ」に入れた内容がNameタグの値として転記されます。
タグを確認したら、「エンドポイントを作成」を押下します。
「エンドポイントを作成」を押下すると、VPCエンドポイント一覧の画面に遷移し、
「VPCエンドポイントが正常に作成されました」と表示されます。
VPCエンドポイントを作成した直後は、VPCエンドポイントのステータスが「保留状態」です。
この「保留状態」が、「使用可能」というステータスに変わったら、VPCエンドポイントが使用可能になります。
(2) ssm、ssmmessagesのVPCエンドポイントを作成する
手順は (1) ec2messagesの手順と同じです。
同じ手順で作成してください。
VPCエンドポイントの作成は以上で終わりです。
どなたかのお役に立てれば幸いです。