

• AWS Systems Manager CloudWatch ダッシュボードは、2026 年 4 月 30 日以降は利用できなくなります。お客様は、これまでと同様に Amazon CloudWatch コンソールを使用して、Amazon CloudWatch ダッシュボードの表示、作成、管理を継続できます。詳細については、「[Amazon CloudWatch ダッシュボードのドキュメント](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)」を参照してください。

# Systems Manager を利用した EC2 インスタンスの管理
<a name="systems-manager-setting-up-ec2"></a>

このセクションのタスクを完了して、AWS Systems Manager 用にロール、許可、初期リソースを設定します。このセクションで説明するタスクは、通常、AWS アカウント およびシステム管理者によって実行されます。これらのステップが完了すると、組織内のユーザーは Systems Manager を使用して、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを設定、管理、アクセスできます。

**注記**  
Systems Manager を使用してオンプレミスマシンを管理および設定する場合は、「[Systems Manager を利用したハイブリッド環境およびマルチクラウド環境でのノードの管理](systems-manager-hybrid-multicloud.md)」のセットアップ手順に従います。Amazon EC2 インスタンスと非 EC2 インスタンスの両方を[ハイブリッドおよびマルチクラウド](operating-systems-and-machine-types.md#supported-machine-types)環境で使用する場合は、まずこのステップに従います。このセクションでは、Systems Manager オペレーションで使用するロール、ユーザー、アクセス許可、初期リソースを推奨される順序で設定するための手順を説明します。

他の AWS のサービス を既に使用している場合は、これらの手順の一部は完了しています。ただし、他の手順は Systems Manager に固有です。そのため、このセクション全体を確認の上、Systems Manager のすべてのツールを使用できる状態であることを確認します。

**Topics**
+ [Systems Manager に必要なインスタンスのアクセス許可を設定する](setup-instance-permissions.md)
+ [Systems Manager のために VPC エンドポイントを使用して EC2 インスタンスのセキュリティを強化する](setup-create-vpc.md)

# Systems Manager に必要なインスタンスのアクセス許可を設定する
<a name="setup-instance-permissions"></a>

デフォルトでは、AWS Systems Manager にはインスタンスでアクションを実行する権限がありません。インスタンスのアクセス許可は、AWS Identity and Access Management (IAM) ロールを使用してアカウントレベルで付与するか、またはインスタンスプロファイルを使用してインスタンスレベルで付与することができます。可能であれば、デフォルトのホスト管理設定を使用してアカウントレベルでアクセスを付与することをお勧めします。

**注記**  
このステップをスキップして、統合コンソールをセットアップするときに Systems Manager が自動的に必要なアクセス許可をインスタンスに適用するようにすることもできます。詳細については、「[AWS Systems Manager を設定する](systems-manager-setting-up-console.md)」を参照してください。

## EC2 インスタンスのアクセス許可の推奨設定
<a name="default-host-management"></a>

デフォルトのホスト管理設定では、Systems Manager が Amazon EC2 インスタンスを自動的に管理することができます。この設定をオンにすると、SSM Agent バージョン 3.2.582.0 以降がインストールされている AWS リージョン および AWS アカウント で、インスタンスメタデータサービスバージョン 2 (IMDSv2) を使用しているすべてのインスタンスが、自動的にマネージドインスタンスになります。デフォルトのホスト管理設定は、インスタンスメタデータサービスバージョン 1 をサポートしていません。IMDSv2 への移行の詳細については、「Amazon EC2 ユーザーガイド」の「[インスタンスメタデータサービスバージョン 2 の使用への移行](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-metadata-transition-to-version-2.html)」を参照してください。インスタンスにインストールされている SSM Agent のバージョンを確認する方法については、「[SSM Agent バージョン番号の確認](ssm-agent-get-version.md)」を参照してください。SSM Agent の更新方法については、「[SSM Agent の自動更新](ssm-agent-automatic-updates.md#ssm-agent-automatic-updates-console)」を参照してください。マネージドインスタンスには、次のような利点があります。
+ Session Manager を使用して安全にインスタンスに接続する。
+ Patch Manager を使用して自動パッチスキャンを実行する。
+ Systems Manager インベントリを使用して、インスタンスに関する詳細情報を表示する。
+ Fleet Manager を使用してインスタンスを追跡、管理する。
+ SSM Agent を自動的に最新の状態に保つ。

Fleet Manager、Inventory、Patch Manager、Session Manager は AWS Systems Manager のツールです。

デフォルトのホスト管理設定では、インスタンスプロファイルを使用せずにインスタンスを管理でき、Systems Manager にリージョンとアカウント内のすべてのインスタンスを管理するアクセス許可が付与されていることを確認できます。付与されたアクセス許可がユースケースに十分でない場合は、デフォルトのホスト管理設定で作成されたデフォルトの IAM ロールにポリシーを追加することもできます。また、デフォルトの IAM ロールで提供されるすべての機能の一部に対してのみアクセス許可が必要な場合は、独自のカスタムロールとポリシーを作成できます。デフォルトのホスト管理設定で選択した IAM ロールに加えられた変更は、リージョンとアカウントのすべてのマネージド Amazon EC2 インスタンスに適用されます。デフォルトのホスト管理設定で使用するポリシーの詳細については、「[AWS マネージドポリシー: AmazonSSMManagedEC2InstanceDefaultPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonSSMManagedEC2InstanceDefaultPolicy)」を参照してください。デフォルトのホスト管理設定の詳細については、「[Default Host Management Configuration を使用した EC2 インスタンスの自動管理](fleet-manager-default-host-management-configuration.md)」を参照してください。

**重要**  
デフォルトのホスト管理設定を使用して登録されたインスタンスは、登録情報を `/lib/amazon/ssm` または `C:\ProgramData\Amazon` ディレクトリへローカルに保存します。これらのディレクトリやファイルを削除すると、インスタンスはデフォルトのホスト管理設定を使用して Systems Manager に接続するために必要な認証情報を取得できなくなります。このような場合は、インスタンスプロファイルを使用してインスタンスに必要なアクセス許可を付与するか、インスタンスを再作成する必要があります。

**注記**  
この手順を実行できるのは、管理者のみです。ユーザー個人がデフォルトのホスト管理設定を設定または変更できるようにする場合は、最小特権アクセス許可を実装してください。デフォルトのホスト管理設定は、Amazon EC2 インスタンスを自動的に管理したい AWS リージョン でオンにする必要があります。

**デフォルトのホスト管理設定を有効にするには**  
デフォルトのホスト管理設定は、Fleet Manager コンソールからオンにできます。AWS マネジメントコンソール または任意のコマンドラインツールを使用してこの手順を正常に完了するには、API オペレーション ([GetServiceSetting](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetServiceSetting.html)、[ResetServiceSetting](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_ResetServiceSetting.html)、[UpdateServiceSetting](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_UpdateServiceSetting.html)) のアクセス許可が必要です。さらに、`AWSSystemsManagerDefaultEC2InstanceManagementRole` IAM ロールの `iam:PassRole` アクセス許可を付与する権限が必要です。以下は、ポリシーの例です。各*リソースプレースホルダーの例*をユーザー自身の情報に置き換えます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:GetServiceSetting",
                "ssm:ResetServiceSetting",
                "ssm:UpdateServiceSetting"
            ],
            "Resource": "arn:aws:ssm:us-east-1:111122223333:servicesetting/ssm/managed-instance/default-ec2-instance-management-role"
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": "arn:aws:iam::111122223333:role/service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": [
                        "ssm.amazonaws.com"
                    ]
                }
            }
        }
    ]
}
```

------

開始する前に、Amazon EC2 インスタンスにインスタンスプロファイルが添付されている場合は、`ssm:UpdateInstanceInformation` オペレーションを許可する権限をすべて削除してください。SSM Agent は、デフォルトのホスト管理設定のアクセス許可を使用する前に、インスタンスプロファイルのアクセス許可を使用しようとします。インスタンスプロファイルで `ssm:UpdateInstanceInformation` オペレーションを許可すると、インスタンスはデフォルトのホスト管理設定のアクセス許可を使用しません。

1. AWS Systems Manager コンソール ([https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/)) を開きます。

1. ナビゲーションペインで、**[Fleet Manager]** を選択します。

1. **[アカウント管理]** ドロップダウンの一覧で **[デフォルトのホスト管理設定]** をクリックします。

1. **[デフォルトのホスト管理設定を有効にする]** をオンにします。

1. インスタンスの Systems Manager ツールを有効にするために使用する IAM ロールを選択します。デフォルトのホスト管理設定で提供されるデフォルトのロールを使用することをお勧めします。このロールには、Systems Manager を使用して Amazon EC2 インスタンスを管理するために必要となる最小限のアクセス許可のセットが含まれています。カスタムロールを使用する場合は、ロールの信頼ポリシーで Systems Manager を信頼できるエンティティとして許可する必要があります。

1. **[設定]** をクリックして、セットアップを完了します。

デフォルトのホスト管理設定をオンにした後、選択したロールの認証情報をインスタンスが使用できるようになるまでに 30 分かかる場合があります。デフォルトのホスト管理設定は、Amazon EC2 インスタンスを自動的に管理したい各リージョンで有効にする必要があります。

## EC2 インスタンスのアクセス許可の代替設定
<a name="instance-profile-add-permissions"></a>

AWS Identity and Access Management (IAM) インスタンスプロファイルを使用すると、アクセス許可を個々のインスタンスレベルで付与することができます。インスタンスプロファイルは、起動時に IAM ロール情報を Amazon Elastic Compute Cloud (Amazon EC2) インスタンスに渡すコンテナです。Systems Manager のインスタンスプロファイルを作成するには、必要なアクセス許可を定義する 1 つ以上の IAM ポリシーを、新しいロールか、作成済みのロールにアタッチします。

**注記**  
AWS Systems Manager のツールである Quick Setup を使用すると、AWS アカウントのあらゆるインスタンスでインスタンスプロファイルをすばやく設定できます。Quick Setup では、IAM サービスロール (またはロールの*継承*) を作成します。これにより、Systems Manager はユーザーに代わってインスタンスで安全にコマンドを実行できます。Quick Setup を使用すると、このステップ (ステップ 3) とステップ 4 をスキップできます。詳細については、「[AWS Systems Manager Quick Setup](systems-manager-quick-setup.md)」を参照してください。

IAM インスタンスプロファイルの作成に関する次の詳細情報に注意してください。
+ Systems Manager の[ハイブリッドおよびマルチクラウド](operating-systems-and-machine-types.md#supported-machine-types)環境で非 EC2 を設定する場合、インスタンスプロファイルを作成する必要はありません。代わりに、IAM サービス ロールを使用するようにサーバーと VM を設定します。詳細については、「[ハイブリッドおよびマルチクラウド環境で Systems Manager に必要な IAM サービスロールを作成する](hybrid-multicloud-service-role.md)」を参照してください。
+ IAM インスタンスプロファイルを変更した場合、インスタンスの認証情報が更新されるまでに時間がかかることがあります。更新されるまで、SSM Agent はリクエストを処理しません。更新プロセスを高速化するには、SSM Agent を再起動するか、インスタンスを再起動します。

インスタンスプロファイルに新しいロールを作成するか、既存のロールに必要なアクセス許可を追加するかに応じて、以下のいずれかの手順を実行します。<a name="setup-instance-profile-managed-policy"></a>

**Systems Manager マネージドインスタンスのインスタンスプロファイルを作成するには (コンソール)**

1. IAM コンソール ([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)) を開きます。

1. ナビゲーションペインで **ロール** を選択してから、**ロールを作成する** を選択します。

1. **[Trusted entity type]** (信頼できるエンティティタイプ) で、**[AWS のサービス]** を選択します。

1. **[Use case]** (ユースケース) で **[EC2]** を選択し、**[Next]** (次へ) を選択します。

1. **[アクセス許可を追加]** ページで、以下を実行します。
   + **[Search]** (検索) フィールドを使用して、**[AmazonSSMManagedInstanceCore]** ポリシーを検索します。次の図に示すように、名前の横にあるチェックボックスをオンにします。  
![\[AmazonSSMManagedInstanceCore の行のチェックボックスがオンになっています。\]](http://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/images/setup-instance-profile-2.png)

     他のポリシーを検索しても、コンソールでは選択内容が保持されます。
   + 以前の手順 [(オプション) S3 バケットへのアクセスのカスタムポリシーを作成する](#instance-profile-custom-s3-policy) でカスタムの S3 バケットポリシーを作成した場合は、それを検索してその名前の横にあるチェックボックスをオンにします。
   + Directory Service によって管理されている Active Directory にインスタンスを結合する場合は、**[AmazonSSMDirectoryServiceAccess]** を検索し、その名前の横にあるチェックボックスをオンにします。
   + EventBridge または CloudWatch Logs を使用して、インスタンスを管理またはモニタリングする場合は、**[CloudWatchAgentServerPolicy]** を検索し、その名前の横にあるチェックボックスをオンにします。

1. [**次へ**] を選択します。

1. **[Role name]** (ロール名) に、新しいインスタンスプロファイルの名前 (**SSMInstanceProfile** など) を入力します。
**注記**  
ロール名を書き留めます。このロール名は、Systems Manager を使用して管理するインスタンスを新しく作成する際に選択します。

1. (オプション) **[Description]** (説明) にある、このインスタンスプロファイルの説明を更新します。

1. (オプション) **[Tags]** (タグ) で、1 つ以上のタグキーと値のペアを追加し、このロールのアクセスを整理、追跡、制御して、**[Create role]** (ロールの作成) を選択します。**ロール**ページが再度表示されます。<a name="setup-instance-profile-custom-policy"></a>

**Systems Manager のインスタンスプロファイルのアクセス許可を既存のロールに追加するには (コンソール)**

1. IAM コンソール ([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)) を開きます。

1. ナビゲーションペインで、[**ロール**] を選択して、Systems Manager オペレーションのためにインスタンスプロファイルに関連付ける既存のロールを選択します。

1. **[Permissions]** (アクセス許可) タブで、**[Add permissions, Attach policies]** (アクセス許可の追加、ポリシーのアタッチ) をクリックします。

1. **[Attach Policy ]** (ポリシーのアタッチ) ページで、次の操作を実行します。
   + **[Search]** (検索) フィールドを使用して、**[AmazonSSMManagedInstanceCore]** ポリシーを検索します。名前の横にあるチェックボックスを選択します。
   + カスタムの S3 バケットポリシーを作成した場合は、その名前の横にあるチェックボックスをオンにします。インスタンスプロファイルのカスタム S3 バケットポリシーについては、「[(オプション) S3 バケットへのアクセスのカスタムポリシーを作成する](#instance-profile-custom-s3-policy)」を参照してください。
   + Directory Service によって管理されている Active Directory にインスタンスを結合する場合は、**[AmazonSSMDirectoryServiceAccess]** を検索し、その名前の横にあるチェックボックスをオンにします。
   + EventBridge または CloudWatch Logs を使用して、インスタンスを管理またはモニタリングする場合は、**[CloudWatchAgentServerPolicy]** を検索し、その名前の横にあるチェックボックスをオンにします。

1. **ポリシーのアタッチ** を選択します。

信頼できるエンティティを含むように、またはさらにアクセスを制限するようにロールを更新する方法については、*IAM ユーザーガイド*の「[ロールの修正](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html)」を参照してください。

## (オプション) S3 バケットへのアクセスのカスタムポリシーを作成する
<a name="instance-profile-custom-s3-policy"></a>

Amazon S3 アクセス用のカスタムポリシーは、VPC エンドポイントを使用している場合、または Systems Manager オペレーションに独自の S3 バケットを使用している場合にのみ作成する必要があります。このポリシーは、デフォルトのホスト管理設定で作成されたデフォルトの IAM ロール、または前の手順で作成したインスタンスプロファイルにアタッチできます。

以下のポリシーでアクセスを付与する AWS マネージドの S3 バケットの詳細については、「[SSM Agent と AWS マネージド S3 バケットとの通信](ssm-agent-technical-details.md#ssm-agent-minimum-s3-permissions)」を参照してください。

1. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソール を開きます。

1. ナビゲーションペインで **ポリシー**を選択してから **ポリシーの作成**を選択します。

1. **[JSON]** タブを選択し、デフォルトのテキストを次に置き換えます。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "s3:GetObject",
               "Resource": [
                   "arn:aws:s3:::aws-ssm-us-east-2/*",
                   "arn:aws:s3:::aws-windows-downloads-us-east-2/*",
                   "arn:aws:s3:::amazon-ssm-us-east-2/*",
                   "arn:aws:s3:::amazon-ssm-packages-us-east-2/*",
                   "arn:aws:s3:::us-east-2-birdwatcher-prod/*",
                   "arn:aws:s3:::aws-ssm-distributor-file-us-east-2/*",
                   "arn:aws:s3:::aws-ssm-document-attachments-us-east-2/*",
                   "arn:aws:s3:::patch-baseline-snapshot-us-east-2/*"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetObject",
                   "s3:PutObject",
                   "s3:PutObjectAcl",
                   "s3:GetEncryptionConfiguration"
               ],
               "Resource": [
                   "arn:aws:s3:::amzn-s3-demo-bucket/*",
                   "arn:aws:s3:::amzn-s3-demo-bucket"
               ]
           }
       ]
   }
   ```

------
**注記**  
最初の `Statement` エレメントは、VPC エンドポイントを使用する場合にのみ必要です。  
2 番目の `Statement` エレメントは、Systems Manager オペレーションで使用するために作成した S3 バケットを使用する場合にのみ必要です。  
`PutObjectAcl` アクセスコントロールリストは、他のアカウントで S3 バケットへのクロスアカウントアクセスをサポートする場合にのみ必要です。  
S3 バケットが暗号化を使用するように設定されている場合、`GetEncryptionConfiguration` エレメントが必要です。  
S3 バケットが暗号化を使用するように設定されている場合、S3 バケットのルート (例: `arn:aws:s3:::amzn-s3-demo-bucket`) が **[リソース]** セクションに表示されている必要があります。ユーザー、グループ、またはロールに、ルートバケットへのアクセスを設定する必要があります。

1. オペレーションで VPC エンドポイントを使用する場合は、以下の操作を行います。

   最初の `Statement` エレメントで、*region* の各プレースホルダーを、このポリシーが使用される AWS リージョン の識別子に置き換えます。例えば、米国東部 (オハイオ) リージョンの場合は、`us-east-2` を使用します。サポートされている*リージョン*値のリストについては、「*Amazon Web Services 全般のリファレンス*」の「[Systems Manager サービスエンドポイント](https://docs.aws.amazon.com/general/latest/gr/ssm.html#ssm_region)」にある**リージョン**列を参照してください。
**重要**  
このポリシーの特定のリージョンの代わりにワイルドカード文字 (\$1) を使用しないことをお勧めします。たとえば、`arn:aws:s3:::aws-ssm-us-east-2/*` を使用して、`arn:aws:s3:::aws-ssm-*/*` は使用しないでください。ワイルドカードを使用すると、アクセスを付与する S3 バケットへのアクセス権が付与される場合があります。複数のリージョンでインスタンスプロファイルを使用する場合は、各リージョンの最初の `Statement` エレメントを繰り返すことをお勧めします。

   -または-

   オペレーションで VPC エンドポイントを使用しない場合は、最初の `Statement` エレメントは削除することができます。

1. Systems Manager オペレーションで独自の S3 バケットを使用する場合は、以下の操作を行います。

   2 つめの `Statement` エレメントで、*amzn-s3-demo-bucket* をアカウント内の S3 バケットの名前に置き換えます。このバケットは、Systems Manager のオペレーションに使用します。バケットのオブジェクトにアクセス許可を付与します。この際、`"arn:aws:s3:::my-bucket-name/*"` をリソースとして使用します。バケット、またはバケットのオブジェクトに許可を付与する方法については、*Amazon Simple Storage Service ユーザーガイド*のトピック「[Amazon S3 アクション](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html)」および AWS ブログ記事「[IAM ポリシーとバケットポリシーと ACL\$1」を参照してください。Oh, My\$1 (Controlling Access to S3 Resources)](https://aws.amazon.com/blogs/security/iam-policies-and-bucket-policies-and-acls-oh-my-controlling-access-to-s3-resources/)。
**注記**  
複数のバケットを使用する場合は、それぞれの ARN を入力します。バケットのアクセス許可については、次の例を参照してください。  

   ```
   "Resource": [
   "arn:aws:s3:::amzn-s3-demo-bucket1/*",
   "arn:aws:s3:::amzn-s3-demo-bucket2/*"
                  ]
   ```

   -または-

   Systems Manager オペレーションで独自の S3 バケットを使用していない場合は、2 つめの `Statement` エレメントは削除できます。

1. **[Next: Tags]** (次へ: タグ) を選択します。

1. (オプション) **[Add tag]** (タグを追加) を選択してタグを追加し、ポリシーの優先タグを入力します。

1. **[次へ: レビュー]** を選択します。

1. **[Name]** (名前) に、このポリシーを識別するための名前 (**SSMInstanceProfileS3Policy** など) を入力します。

1. [**Create policy**] (ポリシーの作成) を選択します。

## マネージドインスタンスのポリシーに関するその他の考慮事項
<a name="instance-profile-policies-overview"></a>

このセクションでは、デフォルトのホスト管理設定で作成されたデフォルトの IAM ロール、または AWS Systems Manager のインスタンスプロファイルに追加できるポリシーについて説明します。インスタンスと Systems Manager API 間における通信の許可を付与する場合、システムのニーズとセキュリティ要件を反映したカスタムポリシーを作成することをお勧めします。オペレーションプランによっては、他の 1 つまたは複数のポリシーに設定されているアクセス許可が必要になる場合があります。

**ポリシー: `AmazonSSMDirectoryServiceAccess`**  
Windows Server の Amazon EC2 インスタンスを Microsoft AD ディレクトリに結合する場合にのみ必要です。  
AWS 管理ポリシーでは、マネージドインスタンスによるドメインの結合リクエストに対して、SSM Agent による AWS Directory Service へのアクセスをお客様の代わりに許可します。詳細については、 *AWS Directory Service 管理ガイド*の 「[Windows EC2 インスタンスにシームレスに参加する](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/launching_instance.html)」を参照してください。

**ポリシー: `CloudWatchAgentServerPolicy`**  
メトリクスを読み取り、インスタンスにデータのログを記録して Amazon CloudWatch に書き込むために、インスタンスに CloudWatch をインストールして実行する場合にのみ必要です。これらは、AWS リソースの問題や変更をモニタリング、分析、および迅速に対応するのに役立ちます。  
このポリシーは、Amazon EventBridge や Amazon CloudWatch Logs などの機能を使用する場合にのみ、デフォルトのホスト管理設定やインスタンスプロファイルで作成されたデフォルトの IAM ロールで必要になります。(例えば、特定の CloudWatch Logs ログストリームへの書き込みアクセスを制限する、より制限の厳しいポリシーを作成することもできます)。  
EventBridge および CloudWatch Logs 機能の使用はオプションです。ただし、使用することにした場合は、Systems Manager の設定プロセスの最初にそれらを設定することをお勧めします。詳細については、*[Amazon EventBridge ユーザーガイド](https://docs.aws.amazon.com/eventbridge/latest/userguide/)*および *[Amazon CloudWatch Logs ユーザーガイド](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/)*を参照してください。
追加の Systems Manager ツールのアクセス許可を含む IAM ポリシーを作成するには、次のリソースを参照してください。  
+ [IAM ポリシーを使用して Parameter Store パラメータへのアクセスを制限する](sysman-paramstore-access.md)
+ [オートメーションの設定](automation-setup.md)
+ [ステップ 2: Session Manager のインスタンスのアクセス権限の確認または追加](session-manager-getting-started-instance-profile.md)

## インスタンスに Systems Manager インスタンスプロファイルを添付する (コンソール)
<a name="attach-instance-profile"></a>

次の手順は、Amazon EC2 コンソールを使用して、IAM インスタンスプロファイルを Amazon EC2 インスタンスにアタッチする方法を示します。

1. AWS マネジメントコンソール にサインインし、Amazon EC2 コンソール ([https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)) を開きます。

1. ナビゲーションペインで、[**Instances**] の下にある [**Instances**] を選択します。

1. リストから EC2 インスタンスに移動して選択します。

1. [**アクション**] メニューで、[**セキュリティ**]、[**IAM ロールの変更**] の順に選択します。

1. [**IAM ロール**] で、[EC2 インスタンスのアクセス許可の代替設定](#instance-profile-add-permissions) の手順に従って作成したインスタンスプロファイルを選択します。

1. **[Update **IAM role**]** (IAM ロールの更新) を選択します。

インスタンスへの IAM ロールのアタッチの詳細については、選択したオペレーティングシステムのタイプに応じて、次のいずれかを選択してください。
+ 「*Amazon EC2 ユーザーガイド*」の「[IAM ロールをインスタンスにアタッチする](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#attach-iam-role)」
+ 「*Amazon EC2 ユーザーガイド*」の「[IAM ロールをインスタンスにアタッチする](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/iam-roles-for-amazon-ec2.html#attach-iam-role)」

「[Systems Manager のために VPC エンドポイントを使用して EC2 インスタンスのセキュリティを強化する](setup-create-vpc.md)」に進みます。

# Systems Manager のために VPC エンドポイントを使用して EC2 インスタンスのセキュリティを強化する
<a name="setup-create-vpc"></a>

Amazon Virtual Private Cloud (Amazon VPC) でインターフェイス VPC エンドポイントを使用するように AWS Systems Manager を設定することで、マネージドノード ([ハイブリッドおよびマルチクラウド](operating-systems-and-machine-types.md#supported-machine-types)環境の非 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 エンドポイント](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-services-overview.html)」を参照してください。

**注記**  
VPC エンドポイントを使用する代わりに、マネージドインスタンスでアウトバウンドのインターネットアクセスを許可します。この場合、マネージドインスタンスは、以下のエンドポイントへの HTTPS (ポート 443) アウトバウンドトラフィックも許可する必要があります。  
`ssm.region.amazonaws.com`
`ssmmessages.region.amazonaws.com`
`ec2messages.region.amazonaws.com`
SSM Agent は、クラウド内の Systems Manager サービスへのすべての接続を開始します。このため、Systems Manager のインスタンスへのインバウンドトラフィックを許可するようにファイアウォールを設定する必要はありません。  
これらのエンドポイントへの呼び出しの詳細については、「[リファレンス: ec2messages、ssmmessages およびその他の API オペレーション](systems-manager-setting-up-messageAPIs.md)」を参照してください。  
IPv6 **のみがサポートされる環境で Systems Manager を使用している場合は、次のエンドポイントへのアウトバウンドトラフィックも許可する必要があります。  
`ssm.region.api.aws`
`ssmmessages.region.api.aws`
`ec2messages.region.api.aws`
デュアルスタックサービスエンドポイントの詳細については、「AWS 一般的なリファレンスガイド」の「[Dual stack endpoints](https://docs.aws.amazon.com/general/latest/gr/rande.html#dual-stack-endpoints)」を参照してください。  
また、「[参照: パッチ適用オペレーション用の Amazon S3 バケット](https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-operations-s3-buckets.html)」で説明されているように、パッチオペレーションバケットがノードから到達可能であることを確認する必要があります。

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

**Topics**
+ [VPC エンドポイントの制約と制限](#vpc-requirements-and-limitations)
+ [Systems Manager 用の VPC エンドポイントを作成する](#create-vpc-endpoints)
+ [インターフェイス VPC エンドポイントポリシーの作成](#create-vpc-interface-endpoint-policies)

## VPC エンドポイントの制約と制限
<a name="vpc-requirements-and-limitations"></a>

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

**VPC ピアリング接続**  
VPC インターフェイスのエンドポイントには、*リージョン内*および*リージョン間* VPC ピア接続の両方を介してアクセスできます。VPC インターフェイスエンドポイントの VPC ピア接続リクエストの詳細については、*Amazon Virtual Private Cloud ユーザーガイド*の「[VPC ピア接続 (クォータ)](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-peering)」を参照してください。

VPC ゲートウェイエンドポイントの接続を、VPC の外に延長することはできません。VPC 内の VPC ピア接続の反対側のリソースは、ゲートウェイエンドポイントを使用してゲートウェイエンドポイントサービス内のリソースと通信することはできません。VPC ゲートウェイエンドポイントの VPC ピア接続リクエストの詳細については、*Amazon Virtual Private Cloud ユーザーガイド*の「[VPC エンドポイント (クォータ)](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-endpoints)」を参照してください。

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

**DNS 解決**  
カスタム DNS サーバーを使用する場合は、`amazonaws.com` ドメインへのすべてのクエリの条件付きフォワーダーを VPC の Amazon DNS サーバーに追加する必要があります。

**S3 バケット**  
VPC エンドポイントポリシーは、少なくとも [SSM Agent と AWS マネージド S3 バケットとの通信](ssm-agent-technical-details.md#ssm-agent-minimum-s3-permissions) にリストされている Amazon S3 バケットへのアクセスを許可する必要があります。

**注記**  
オンプレミスのファイアウォールを使用していて Patch Manager を使用する場合は、そのファイアウォールでパッチベースラインのエンドポイントへの適切なアクセスを許可する必要もあります。

**Amazon CloudWatch Logs**  
インスタンスがインターネットにアクセスすることを許可しない場合、CloudWatch Logs にログを送信する機能を使用するには、CloudWatch Logs の VPC エンドポイントを作成します。CloudWatch Logs のエンドポイントの作成の詳細については、*Amazon CloudWatch Logs ユーザーガイド*の「[CloudWatch Logs 用の VPC エンドポイントの作成](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/cloudwatch-logs-and-interface-VPC.html#create-VPC-endpoint-for-CloudWatchLogs)」を参照してください。

**ハイブリッドおよびマルチクラウド環境の DNS**  
[ハイブリッドおよびマルチクラウド](operating-systems-and-machine-types.md#supported-machine-types)環境で AWS PrivateLink エンドポイントと連携するように DNS を設定する方法については、「Amazon VPC ユーザーガイド」の「[インターフェイスエンドポイントのプライベート DNS](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html#vpce-private-dns)」を参照してください。独自の DNS を使用する場合には、Route 53 リゾルバーを使用できます。詳細については、「*Amazon Route 53 デベロッパーガイド*」の「[VPC とネットワーク間の DNS クエリの解決](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver.html)」を参照してください。

## Systems Manager 用の VPC エンドポイントを作成する
<a name="create-vpc-endpoints"></a>

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

**注記**  
*region* は、米国東部 (オハイオ) リージョンの `us-east-2` のように、AWS Systems Manager でサポートされている AWS リージョン の識別子を表します。サポートされている *region* 値の一覧については、「Amazon Web Services 全般のリファレンス」の「[Systems Manager サービスエンドポイント](https://docs.aws.amazon.com/general/latest/gr/ssm.html#ssm_region)」にある **Region** 列を参照してください。

「[インターフェイスエンドポイントの作成](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html#create-interface-endpoint)」の手順に従って、以下のインターフェイスエンドポイントを作成します。
+ **`com.amazonaws.region.ssm`** — Systems Manager サービスのエンドポイント。
+ **`com.amazonaws.region.ec2messages`** — Systems Manager は、このエンドポイントを使用して SSM Agent から Systems Manager サービスへの呼び出しを行います。SSM Agent のバージョン 3.3.40.0 以降、Systems Manager は、使用可能な場合には `ec2messages:*` エンドポイント (Amazon Message Delivery Service) の代わりに `ssmmessages:*` エンドポイント (Amazon Message Gateway Service) を使用するようになりました。
+ **`com.amazonaws.region.ec2`** — Systems Manager を使用して VSS 対応のスナップショットを作成する場合は、EC2 サービスへのエンドポイントがあることを確認します。EC2 エンドポイントが定義されていない場合、アタッチした Amazon EBS ボリュームを列挙する呼び出しは失敗し、Systems Manager コマンドが失敗します。
+ **`com.amazonaws.region.s3`** – Systems Manager は、このエンドポイントを使用して SSM Agent を更新します。また、Systems Manager は、バケットに保存されているスクリプトや他のファイルを取得したり、出力ログをバケットにアップロードしたりすることをユーザーがオプションで選択した場合にも、このエンドポイントを使用します。インスタンスに関連付けられたセキュリティグループでアウトバウンドトラフィックが制限されている場合は、Amazon S3 のプレフィックス一覧へのトラフィックを可能にするルールを追加する必要があります。詳細については、*AWS PrivateLink ガイド*の「[セキュリティグループの変更](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-gateway.html#vpc-endpoints-security)」を参照してください。
+ **`com.amazonaws.region.ssmmessages`** – このエンドポイントは、Run Command のために、および Session Manager を使用してセキュアなデータチャネル経由でインスタンスに接続している場合に、SSM Agent が Systems Manager サービスと通信する上で必要です。詳細については、「[AWS Systems Manager Session Manager](session-manager.md)」および「[リファレンス: ec2messages、ssmmessages およびその他の API オペレーション](systems-manager-setting-up-messageAPIs.md)」を参照してください。
+ (オプション) **`com.amazonaws.region.kms`** – Session Manager または Parameter Store パラメータのために AWS Key Management Service (AWS KMS) 暗号化を使用する場合は、このエンドポイントを作成します。
+ (オプション) **`com.amazonaws.region.logs`** – Session Manager、Run Command、または SSM Agent ログのために Amazon CloudWatch Logs (CloudWatch Logs) を使用する場合は、このエンドポイントを作成します。

SSM Agent がアクセスできる必要がある AWS マネージド S3 バケットについては、「[SSM Agent と AWS マネージド S3 バケットとの通信](ssm-agent-technical-details.md#ssm-agent-minimum-s3-permissions)」を参照してください。Systems Manager のオペレーションで仮想プライベートクラウド (VPC) エンドポイントを使用している場合は、Systems Manager の EC2 インスタンスプロファイル、または[ハイブリッドおよびマルチクラウド](operating-systems-and-machine-types.md#supported-machine-types)環境の非 EC2 ノードのサービスロールで、明示的な許可を付与する必要があります。

## インターフェイス VPC エンドポイントポリシーの作成
<a name="create-vpc-interface-endpoint-policies"></a>

AWS Systems Manager には VPC インターフェイスエンドポイントのポリシーを作成することができます。このポリシーでは、以下の内容を指定できます。
+ アクションを実行できるプリンシパル
+ 実行可能なアクション
+ 自身に対してアクションを実行できたリソース

詳細については、*Amazon VPC ユーザーガイド*の「[VPC エンドポイントによるサービスへのアクセスのコントロール](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html)」を参照してください。