ステップ 6: (オプション) Virtual Private Cloud エンドポイントの作成 - AWS Systems Manager

ステップ 6: (オプション) Virtual Private Cloud エンドポイントの作成

Amazon Virtual Private Cloud (Amazon VPC) でインターフェース VPC エンドポイントを使用するように、AWS Systems Manager を設定してマネージドインスタンス (ハイブリッド環境のマネージドインスタンスを含む) のセキュリティ体制を改善できます。インターフェイス VPC エンドポイント (インターフェイスエンドポイント) を使用すると、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 エンドポイントの詳細については、「PrivateLink を介した AWS サービスへのアクセス」を参照してください。

注記

VPC エンドポイントを使用する代わりに、マネージドインスタンスでアウトバウンドのインターネットアクセスを有効にします。この場合、マネージドインスタンスは、以下のエンドポイントへの HTTPS (ポート 443) アウトバウンドトラフィックも許可する必要があります。

  • ssm.region.amazonaws.com

  • ssmmessages.region.amazonaws.com

  • ec2messages.region.amazonaws.com

SSM エージェントは、クラウド内の Systems Manager サービスへのすべての接続を開始します。このため、Systems Manager のインスタンスへのインバウンドトラフィックを許可するようにファイアウォールを設定する必要はありません。

これらのエンドポイントへの呼び出しの詳細については、「リファレンス: ec2messages、ssmmessages と他の API コール」を参照してください。

Amazon VPC について

Amazon Virtual Private Cloud (Amazon VPC) を使用すると、AWS クラウド内の論理的に分離された独自の領域 (Virtual Private Cloud (VPC) と呼ばれます) に仮想ネットワークを定義できます。AWS のリソース (インスタンスなど) を VPC 内部で起動できます。VPC は、お客様自身のデータセンターで運用されている従来のネットワークによく似ていますが、AWS のスケーラブルなインフラストラクチャを使用できるというメリットがあります。お客様の VPC はお客様が設定できます。IP アドレスレンジの選択、サブネットの作成、ルートテーブル、ネットワークゲートウェイ、セキュリティの設定ができます。VPC のインスタンスをインターネットに接続できます。VPC を自社のデータセンターに接続し、AWS クラウドを使用してデータセンターを拡張できます。各サブネットでのリソースの保護には、セキュリティグループ、ネットワークアクセスコントロールリストなど、複数のセキュリティレイヤーを使用できます。詳細については、Amazon VPC ユーザーガイドを参照してください。

VPC エンドポイントの制約と制限

Systems Manager の VPC エンドポイントを設定する前に、以下の制約と制限に注意してください。

aws:domainJoin プラグイン

VPC エンドポイントを作成する場合、パブリック AWS Directory Service エンドポイントへのトラフィックを許可しない限り、aws:domainJoin プラグインを使用する SSM ドキュメントからドメインに Windows Server インスタンスを結合するリクエストが失敗することに注意してください。このプラグインには AWS Directory Service が必要で、AWS Directory Service は PrivateLink エンドポイントをサポートしていません。他のドメイン結合メソッドから Windows Server インスタンスをドメインに結合させることは、Active Directory の要件にのみ依存します (例: DNS およびその他の関連する要件を使用してドメインコントローラが到達可能であり発見可能であることを確認する場合など)。Amazon EC2 ユーザーデータスクリプトを使用して、インスタンスをドメインに結合します。

クロスリージョンリクエスト

現在、VPC エンドポイントはクロスリージョンのリクエストをサポートしていません。必ずバケットと同じリージョンでエンドポイントを作成してください。Amazon S3 コンソールを使用するか、get-bucket-location コマンドを使用して、バケットの場所を見つけることができます。リージョン固有の Amazon S3 エンドポイントを使用してバケットにアクセスします (例: DOC-EXAMPLE-BUCKET.s3-us-west-2.amazonaws.com)。Amazon S3 のリージョン固有のエンドポイントの詳細については、アマゾン ウェブ サービスの全般リファレンスの「Amazon S3 サービスエンドポイント」を参照してください。AWS CLI を使用して Amazon S3 にリクエストを実行する場合は、デフォルトリージョンをバケットと同じリージョンに設定するか、またはリクエストで --region パラメータを使用します。

VPC ピアリング接続

VPC インターフェイスのエンドポイントには、リージョン内およびリージョン間 VPC ピア接続の両方を介してアクセスできます。VPC インターフェイスエンドポイントの VPC ピア接続リクエストの詳細については、Amazon Virtual Private Cloud ユーザーガイドの「インターフェイスエンドポイントのプロパティと制限」を参照してください。

VPC ゲートウェイエンドポイントの接続を、VPC の外に延長することはできません。VPC 内の VPC ピア接続の反対側のリソースは、ゲートウェイエンドポイントを使用してゲートウェイエンドポイントサービス内のリソースと通信することはできません。VPC ゲートウェイエンドポイントの VPC ピア接続リクエストの詳細については、Amazon Virtual Private Cloud ユーザーガイドの「ゲートウェイエンドポイントの制限」を参照してください。

着信接続

VPC エンドポイントにアタッチされたセキュリティグループでは、マネージドインスタンスのプライベートサブネットから、ポート 443 で着信接続を許可する必要があります。着信接続が許可されていない場合、マネージドインスタンスは SSM および EC2 エンドポイントに接続できません。

Amazon S3 バケット

VPC ポリシーでは、少なくとも以下の Amazon S3 バケットへのアクセスを許可する必要があります。

  • パッチマネージャーが、 AWS リージョン のパッチベースラインオペレーションに使用する S3 バケット。これらのバケットには、パッチベースラインサービスによって取得され、インスタンスで実行されるコードが含まれます。パッチベースラインドキュメントが実行されるときに、コードを取得する独自のパッチベースラインのバケットが各 AWS リージョン にあります。コードをダウンロードできない場合は、パッチベースラインコマンドは失敗します。

    注記

    オンプレミスのファイアウォールを使用していてパッチマネージャーを使用する予定の場合は、このファイアウォールで、以下に示すパッチベースラインエンドポイントへのアクセスを許可する必要があります。

    自分の AWS リージョン のバケットへのアクセスを許可するには、エンドポイントのポリシーに次のアクセス許可を含めます。

    注記

    中東 (バーレーン) リージョン (me-South-1) のみ、これらのバケットは異なる命名規則を使用します。この AWS リージョン でのみ、代わりに次の 2 つのバケットを使用します。

    • patch-baseline-snapshot-me-south-1-uduvl7q8

    • aws-patch-manager-me-south-1-a53fc9dce

    arn:aws:s3:::patch-baseline-snapshot-region/* arn:aws:s3:::aws-ssm-region/*

    region は、米国東部 (オハイオ) リージョンの us-east-2 のように、AWS Systems Manager でサポートされている AWS リージョン の識別子を表します。サポートされている region 値の一覧については、アマゾン ウェブ サービスの全般リファレンスの「Systems Manager サービスエンドポイント」にある Region 列を参照してください。

    次に例を示します。

    arn:aws:s3:::patch-baseline-snapshot-us-east-2/* arn:aws:s3:::aws-ssm-us-east-2/*
  • SSM エージェントの最小 S3 バケットアクセス許可について に一覧表示されている S3 バケット。

Amazon CloudWatch ログ

インスタンスがインターネットにアクセスすることを許可しない場合、CloudWatch Logs にログを送信する機能を使用するには、CloudWatch Logs の VPC エンドポイントを作成する必要があります。CloudWatch Logs のエンドポイントの作成の詳細については、Amazon CloudWatch Logs ユーザーガイドの「CloudWatch Logs 用の VPC エンドポイントの作成」を参照してください。

ハイブリッド環境の DNS

ハイブリッド環境で AWS PrivateLink エンドポイントを使用する DNS の設定の詳細については、「プライベート DNS」を参照してください。独自の DNS を使用する場合には、Route 53 リゾルバーを使用できます。詳細については、Amazon Route 53 デベロッパーガイドの「VPC とネットワーク間の DNS クエリの解決」を参照してください。

Systems Manager 用の VPC エンドポイントを作成する

以下の情報を使用して、AWS Systems Manager の VPC インターフェイスとゲートウェイエンドポイントを作成します。このトピックは、Amazon VPC ユーザーガイドの手順にリンクしています。

Systems Manager 用の VPC エンドポイントを作成するには

次の最初のステップでは、Systems Manager に必要なインターフェイスエンドポイントを 3 つ作成し、オプションのインターフェイスエンドポイントを 1 つ作成します。最初の 3 つのエンドポイントは、Systems Manager が VPC で機能するために必要です。4 つ目の com.amazonaws.region.ssmmessages は、Session Manager 機能を使用している場合にのみ必要です。

2 番目のステップでは、Systems Manager が Amazon S3 にアクセスするために必要なゲートウェイエンドポイントを作成します。

注記

region は、米国東部 (オハイオ) リージョンの us-east-2 のように、AWS Systems Manager でサポートされている AWS リージョン の識別子を表します。サポートされている region 値の一覧については、アマゾン ウェブ サービスの全般リファレンスの「Systems Manager サービスエンドポイント」にある Region 列を参照してください。

  1. インターフェイスエンドポイントの作成」の手順に従って、以下のエンドポイントを作成します。

    • com.amazonaws.region.ssm: Systems Manager サービスのエンドポイント。

    • com.amazonaws.region.ec2messages: Systems Manager は、このエンドポイントを使用して、SSM Agent から Systems Manager サービスへの呼び出しを行います。

    • com.amazonaws.region.ec2: Systems Manager を使用して VSS 対応のスナップショットを作成する場合は、EC2 サービスへのエンドポイントがあることを確認します。EC2 エンドポイントが定義されていない場合、アタッチした EBS ボリュームを列挙する呼び出しは失敗し、Systems Manager コマンドが失敗します。

    • com.amazonaws.region.ssmmessages: このエンドポイントは、Session Manager を使用して安全なデータチャネルを経由してインスタンスに接続する場合にのみ必要です。詳細については、「AWS Systems Manager Session Manager」および「リファレンス: ec2messages、ssmmessages と他の API コール」を参照してください。

    • com.amazonaws.region.kms: このエンドポイントはオプションですが、Session Manager または Parameter Store のパラメータにAWS Key Management Service (AWS KMS) 暗号化を使用する場合に作成できます。

  2. ゲートウェイエンドポイントの作成」の手順に従って、Amazon S3 に次のゲートウェイエンドポイントを作成します。

    • com.amazonaws.region.s3: Systems Manager は、このエンドポイントを使用して、SSM Agent の更新、パッチ適用オペレーションの実行、および S3 バケットに格納する出力ログのアップロード、バケットに格納するスクリプトまたはその他のファイルの取得などのタスクを行います。

インターフェイス VPC エンドポイントポリシーの作成

AWS Systems Manager には VPC インターフェイスエンドポイントのポリシーを作成することができます。このポリシーでは、以下の内容を指定できます。

  • アクションを実行できるプリンシパル

  • 実行可能なアクション

  • 自身に対してアクションを実行できたリソース

詳細については、Amazon VPC ユーザーガイドの「VPC エンドポイントによるサービスのアクセスコントロール」を参照してください。

例 1: ユーザーがコマンド呼び出しの取得と一覧表示のみを許可する

{ "Statement":[ { "Sid":"SSMCommandsReadOnly", "Principal":"*", "Action":[ "ssm:ListCommands", "ssm:ListCommandInvocations", "ssm:GetCommandInvocation" ], "Effect":"Allow", "Resource":"*" } ] }

ステップ 7: (オプション) Systems Manager のサービスロールを作成する」に進んでください。