为现有实例修改实例元数据选项
您可以修改现有实例的实例元数据选项。
您还可以创建 IAM policy,以阻止用户修改现有实例上的实例元数据选项。要控制哪些用户可以修改实例元数据选项,请指定一个策略,阻止除具有指定角色的用户以外的所有用户使用 ModifyInstanceMetadataOptions API。有关示例 IAM policy,请参阅 使用实例元数据。
您可以修改现有实例的下列元数据选项:
要求使用 IMDSv2
使用以下方法之一修改现有实例上的实例元数据选项,以要求在请求实例元数据时使用 IMDSv2。如果 IMDSv2 是必需的,则无法使用 IMDSv1。
恢复使用 imdsv1
如果 IMDSv2 是必需的,则 IMDSv1 在请求实例元数据时无法正常工作。如果 IMDSv2 是可选的,则 IMDSv2 和 IMDSv1 都将正常工作。因此,要恢复 IMDSv1,请使用以下方法之一将 IMDSv2 设为可选。
更改 PUT 响应跃点限制
对于现有的实例,您可以更改 PUT
响应跃点数限制设置。
目前仅 Amazon CLI 和 Amazon SDK 支持更改 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
为实例启用 IPv6 端点
默认禁用 IPv6 端点。即使您已在仅 IPv6 子网中启动了实例,也是如此。IMDS 的 IPv6 端点仅可在 基于 Nitro 系统构建的实例 上访问。
目前,仅 Amazon CLI 和 Amazon SDK 支持为实例启用 IPv6 端点。
为实例启用 IPv6 端点
请使用 modify-instance-metadata-options CLI 命令,并将 http-protocol-ipv6
参数设置为 enabled
。请注意,在为 http-protocol-ipv6
指定值时,还必须将 http-endpoint
设置为 enabled
。
aws ec2 modify-instance-metadata-options \ --instance-id
i-1234567898abcdef0
\ --http-protocol-ipv6 enabled \ --http-endpoint enabled
开启对实例元数据的访问权限
您可以通过启用实例上 IMDS 的 HTTP 端点来开启对实例元数据的访问权限,无论您使用的是哪个版本的 IMDS。您可以随时通过禁用 HTTP 端点来撤消该更改。
使用以下方法之一,即可开启对实例上实例元数据的访问权限。
关闭对实例元数据的访问
您可以通过禁用实例上 IMDS 的 HTTP 端点来关闭对实例元数据的访问权限,无论您使用的是哪个版本的 IMDS。您可以随时启用 HTTP 终端节点以撤消该更改。
使用以下方法之一,即可关闭对实例上实例元数据的访问权限。