既存インスタンスのインスタンスメタデータオプションの変更
既存のインスタンスのインスタンスメタデータオプションを変更することが可能です。また、ユーザーが既存インスタンスでメタデータオプションを変更できないように、IAM ポリシーを作成することもできます。
既存インスタンスでは、以下のメタデータオプションを変更できます。
-
既存インスタンスで IMDSv2 の使用を必須にする。
-
PUT
レスポンスのホップ制限を変更する。 -
既存インスタンスでの、インスタンスメタデータへのアクセスを無効にする。
Amazon EC2 コンソールを使用して、インスタンスメタデータオプションを変更することはできません。現在、既存のインスタンスでのインスタンスメタデータオプションの変更は、AWS CLI および AWS SDK のみでサポートされます。
IMDSv2 の使用を必須にするには
ユーザーは、インスタンスメタデータのリクエスト時に IMDSv2 が使用されるように要求できます。modify-instance-metadata-optionsCLI コマンドを使って、http-tokens
パラメータを required
に設定できます。http-tokens
の値を指定する場合は、http-endpoint
も enabled
に設定する必要があります。
aws ec2 modify-instance-metadata-options \ --instance-id
i-1234567898abcdef0
\ --http-tokens required \ --http-endpoint enabled
PUT レスポンスホップリミットを変更するには
既存インスタンスについて、PUT
リスポンスホップリミットの設定を変更することができます。modify-instance-metadata-options CLI コマンドを使って、http-put-response-hop-limit
パラメータを必要なホップ数に設定できます。以下の例では、ホップリミットが3
に設定されています。http-put-response-hop-limit
の値を指定する場合は、http-endpoint
を enabled
に設定することも必要です。
aws ec2 modify-instance-metadata-options \ --instance-id
i-1234567898abcdef0
\ --http-put-response-hop-limit3
\ --http-endpoint enabled
IMDSv2 を使用してインスタンスで IMDSv1 の使用を復元するには
modify-instance-metadata-options CLI コマンドを、http-tokens
を optional
に設定して実行すると、インスタンスメタデータのリクエスト時に IMDSv1 の使用を復元できます。
aws ec2 modify-instance-metadata-options \ --instance-id
i-1234567898abcdef0
\ --http-tokens optional \ --http-endpoint enabled
インスタンスの IPv6 エンドポイントを有効にするには
デフォルトでは、IPv6 エンドポイントは無効です。これは、インスタンスを IPv6 専用サブネットで起動した場合にも当てはまります。インスタンスメタデータサービスの IPv6 エンドポイントは、Nitro System 上に構築されたインスタンス からのみアクセスできます。
modify-instance-metadata-optionsCLI コマンドを使って、http-endpoint
パラメータを enabled
に設定できます。
aws ec2 modify-instance-metadata-options \ --instance-id
i-1234567898abcdef0
\ --http-protocol-ipv6 enabled \ --http-endpoint enabled
インスタンスメタデータへのアクセスを無効にするには
使用中のインスタンスメタデータサービスのバージョンに関係なく、インスタンスメタデータサービスの HTTP エンドポイントを無効にすることによりインスタンスメタデータへのアクセスをオフにすることができます。HTTP エンドポイントを有効化することにより、この変更はいつでも元に戻すことができます。
http-endpoint
パラメータを disabled
に設定して、modify-instance-metadata-options CLI コマンドを実行します。
aws ec2 modify-instance-metadata-options \ --instance-id
i-1234567898abcdef0
\ --http-endpoint disabled
modify-instance-metadata-options の使用を制御するには
インスタンスメタデータオプションを変更できる IAM ユーザーをコントロールするには、指定したロールを持つユーザー以外のすべてのユーザーに ModifyInstanceMetadataOptions API の使用を禁止するポリシーを指定できます。IAM ポリシーの例については、「インスタンスメタデータの使用」を参照してください。