Systems Manager のために VPC エンドポイントを使用して EC2 インスタンスのセキュリティを強化する
Amazon Virtual Private Cloud (Amazon VPC) でインターフェイス VPC エンドポイントを使用するように AWS Systems Manager を設定することで、マネージドノード (ハイブリッドおよびマルチクラウド環境の非 EC2 マシンを含む) のセキュリティ体制を向上させることができます。インターフェイス VPC エンドポイント (インターフェイスエンドポイント) を使用すると、AWS PrivateLink によって提供されるサービスに接続できます。AWS PrivateLink は、プライベート IP アドレスを使用して Amazon Elastic Compute Cloud (Amazon EC2) および Systems Manager API にプライベートアクセスできるようにするテクノロジーです。
AWS PrivateLink は、マネージドインスタンス、Systems Manager、および Amazon EC2 間のすべてのネットワークトラフィックを Amazon ネットワークに制限します。つまり、マネージドインスタンスはインターネットにアクセスできません。また AWS PrivateLink を使用する場合、インターネットゲートウェイ、NAT デバイス、仮想プライベートゲートウェイは必要はありません。
AWS PrivateLink の設定は要件ではありませんが、推奨されます。AWS PrivateLink および VPC エンドポイントの詳細については、「AWS PrivateLink と VPC エンドポイント」を参照してください。
注記
VPC エンドポイントを使用する代わりに、マネージドインスタンスでアウトバウンドのインターネットアクセスを許可します。この場合、マネージドインスタンスは、以下のエンドポイントへの HTTPS (ポート 443) アウトバウンドトラフィックも許可する必要があります。
-
ssm.
region
.amazonaws.com -
ssmmessages.
region
.amazonaws.com -
ec2messages.
region
.amazonaws.com
SSM Agent は、クラウド内の Systems Manager サービスへのすべての接続を開始します。このため、Systems Manager のインスタンスへのインバウンドトラフィックを許可するようにファイアウォールを設定する必要はありません。
これらのエンドポイントへの呼び出しの詳細については、「リファレンス: ec2messages、ssmmessages およびその他の API オペレーション」を参照してください。
Amazon VPC について
Amazon Virtual Private Cloud (Amazon VPC) を使用すると、AWS クラウド 内の論理的に分離された独自の領域に仮想プライベートクラウド (VPC) と呼ばれる仮想ネットワークを定義できます。AWS のリソース (インスタンスなど) を VPC 内部で起動できます。VPC は、お客様自身のデータセンターで運用されている従来のネットワークによく似ていますが、 のスケーラブルなインフラストラクチャを使用できるというメリットがありますAWS お客様の VPC はお客様が設定できます。IP アドレスレンジの選択、サブネットの作成、ルートテーブル、ネットワークゲートウェイ、セキュリティの設定ができます。VPC のインスタンスをインターネットに接続できます。VPC を自社のデータセンターに接続し、AWS クラウド をデータセンターの拡張部分として使用できます。各サブネットでのリソースの保護には、セキュリティグループ、ネットワークアクセスコントロールリストなど、複数のセキュリティレイヤーを使用できます。詳細については、Amazon VPC ユーザーガイドを参照してください。
VPC エンドポイントの制約と制限
Systems Manager の VPC エンドポイントを設定する前に、以下の制約と制限に注意してください。
VPC ピアリング接続
VPC インターフェイスのエンドポイントには、リージョン内およびリージョン間 VPC ピア接続の両方を介してアクセスできます。VPC インターフェイスエンドポイントの VPC ピア接続リクエストの詳細については、Amazon Virtual Private Cloud ユーザーガイドの「VPC ピア接続 (クォータ)」を参照してください。
VPC ゲートウェイエンドポイントの接続を、VPC の外に延長することはできません。VPC 内の VPC ピア接続の反対側のリソースは、ゲートウェイエンドポイントを使用してゲートウェイエンドポイントサービス内のリソースと通信することはできません。VPC ゲートウェイエンドポイントの VPC ピア接続リクエストの詳細については、Amazon Virtual Private Cloud ユーザーガイドの「VPC エンドポイント (クォータ)」を参照してください。
着信接続
VPC エンドポイントにアタッチされたセキュリティグループでは、マネージドインスタンスのプライベートサブネットから、ポート 443 で着信接続を許可する必要があります。着信接続が許可されていない場合、マネージドインスタンスは SSM および EC2 エンドポイントに接続できません。
DNS 解決
カスタム DNS サーバーを使用する場合は、amazonaws.com
ドメインへのすべてのクエリの条件付きフォワーダーを VPC の Amazon DNS サーバーに追加する必要があります。
S3 バケット
VPC エンドポイントポリシーは、少なくとも SSM Agent と AWS マネージド S3 バケットとの通信 にリストされている Amazon S3 バケットへのアクセスを許可する必要があります。
注記
オンプレミスのファイアウォールを使用していて Patch Manager を使用する場合は、そのファイアウォールでパッチベースラインのエンドポイントへの適切なアクセスを許可する必要もあります。
Amazon CloudWatch Logs
インスタンスがインターネットにアクセスすることを許可しない場合、CloudWatch Logs にログを送信する機能を使用するには、CloudWatch Logs の VPC エンドポイントを作成します。CloudWatch Logs のエンドポイントの作成の詳細については、Amazon CloudWatch Logs ユーザーガイドの「CloudWatch Logs 用の VPC エンドポイントの作成」を参照してください。
ハイブリッドおよびマルチクラウド環境の DNS
ハイブリッドおよびマルチクラウド環境で AWS PrivateLink エンドポイントと連携するように DNS を設定する方法については、「Amazon VPC ユーザーガイド」の「インターフェイスエンドポイントのプライベート DNS」を参照してください。独自の DNS を使用する場合には、Route 53 リゾルバーを使用できます。詳細については、「Amazon Route 53 デベロッパーガイド」の「VPC とネットワーク間の DNS クエリの解決」を参照してください。
Systems Manager 用の VPC エンドポイントを作成する
以下の情報を使用して、AWS Systems Manager の VPC インターフェイスエンドポイントを作成します このトピックは、Amazon VPC ユーザーガイドの手順にリンクしています。
注記
region
は、米国東部 (オハイオ) リージョンの us-east-2
のように、AWS Systems Manager でサポートされている AWS リージョン の識別子を表します。サポートされている region
値の一覧については、「Amazon Web Services 全般のリファレンス」の「Systems Manager サービスエンドポイント」にある Region 列を参照してください。
「インターフェイスエンドポイントの作成」の手順に従って、以下のインターフェイスエンドポイントを作成します。
-
com.amazonaws.
— Systems Manager サービスのエンドポイント。region
.ssm -
com.amazonaws.
— Systems Manager は、このエンドポイントを使用して SSM Agent から Systems Manager サービスへの呼び出しを行います。SSM Agent のバージョン 3.3.40.0 以降、Systems Manager は、使用可能な場合にはregion
.ec2messagesec2messages:*
エンドポイント (Amazon Message Delivery Service) の代わりにssmmessages:*
エンドポイント (Amazon Message Gateway Service) を使用するようになりました。 -
com.amazonaws.
— Systems Manager を使用して VSS 対応のスナップショットを作成する場合は、EC2 サービスへのエンドポイントがあることを確認します。EC2 エンドポイントが定義されていない場合、アタッチした Amazon EBS ボリュームを列挙する呼び出しは失敗し、Systems Manager コマンドが失敗します。region
.ec2 -
com.amazonaws.
– Systems Manager は、このエンドポイントを使用して SSM Agent を更新します。また、Systems Manager は、バケットに保存されているスクリプトや他のファイルを取得したり、出力ログをバケットにアップロードしたりすることをユーザーがオプションで選択した場合にも、このエンドポイントを使用します。インスタンスに関連付けられたセキュリティグループでアウトバウンドトラフィックが制限されている場合は、Amazon S3 のプレフィックス一覧へのトラフィックを可能にするルールを追加する必要があります。詳細については、AWS PrivateLink ガイドの「セキュリティグループの変更」を参照してください。region
.s3 -
com.amazonaws.
– このエンドポイントは、Run Command のために、および Session Manager を使用してセキュアなデータチャネル経由でインスタンスに接続している場合に、SSM Agent が Systems Manager サービスと通信する上で必要です。詳細については、AWS Systems Manager Session Managerおよびリファレンス: ec2messages、ssmmessages およびその他の API オペレーションを参照してください。region
.ssmmessages -
(オプション)
com.amazonaws.
– Session Manager または Parameter Store パラメータのために AWS Key Management Service (AWS KMS) 暗号化を使用する場合は、このエンドポイントを作成します。region
.kms -
(オプション)
com.amazonaws.
– Session Manager、Run Command、または SSM Agent ログのために Amazon CloudWatch Logs (CloudWatch Logs) を使用する場合は、このエンドポイントを作成します。region
.logs
SSM Agent がアクセスできる必要がある AWS マネージド S3 バケットについては、「SSM Agent と AWS マネージド S3 バケットとの通信」を参照してください。Systems Manager のオペレーションで仮想プライベートクラウド (VPC) エンドポイントを使用している場合は、Systems Manager の EC2 インスタンスプロファイル、またはハイブリッドおよびマルチクラウド環境の非 EC2 ノードのサービスロールで、明示的な許可を付与する必要があります。
インターフェイス VPC エンドポイントポリシーの作成
AWS Systems Manager には VPC インターフェイスエンドポイントのポリシーを作成することができます。このポリシーでは、以下の内容を指定できます。
-
アクションを実行できるプリンシパル
-
実行可能なアクション
-
自身に対してアクションを実行できたリソース
詳細については、Amazon VPC ユーザーガイドの「VPC エンドポイントによるサービスへのアクセスのコントロール」を参照してください。