如何使用 Systems Manager 自动化来仅强制 IMDSv2 访问我的 EC2 实例元数据?

1 分钟阅读
0

我只想使用实例元数据服务版本 2 (IMDSv2) 来访问我的 Amazon Elastic Compute Cloud (Amazon EC2) 实例中的实例元数据。

简短描述

默认情况下,您使用以下一种或两种方法从正在运行的 Amazon EC2 实例检索实例元数据:

  • 实例元数据服务版本 1 (IMDSv1),一种请求/响应方法
  • IMDSv2,一种面向会话的方法

如果要求在实例上使用 IMDSv2,请运行 AWS Systems Manager AWSSupport-ConfigureEC2Metadata 运行手册。

**重要事项:**当您强制执行 IMDSv2 时,即停用 IMDSv1。这可能会影响依赖于 IMDSv1 的应用程序。在强制执行 IMDSv2 之前,请确保所有使用 Amazon EC2 元数据的应用程序都与 IMDSv2 兼容。有关实施最佳实践的更多指导,请参阅要求 IMDSv2 的推荐路径

解决方法

**先决条件:**要运行自动化并读取输出,您必须拥有 ssm:StartAutomationExecutionssm:GetAutomationExecution 权限。

运行 AWSSupport-ConfigureEC2Metadata 自动化,然后对 Execute mode(执行模式)选择 Simple execution(简单执行)。或者,选择 Rate control(速率控制)以在多个目标上运行自动化。然后,为 Input parameters(输入参数)配置以下设置:

  • 对于 InstanceId,输入您的 EC2 实例的 ID。
  • 对于 HttpPutResponseHopLimit,保留默认值 0 以保留当前值。或者,输入一个介于 1 和 64 之间的新值。
  • 对于 EnforceIMDSv2,选择 required(必填)。
  • 对于 MetadataAccess,选择 enabled(启用)。
  • (可选)对于 AutomationAssumeRole,选择角色。如果您未指定角色,则自动化将使用运行文档的用户的权限。
    **注意:**要更改目标 EC2 实例,AutomationAssumeRole 或用户角色必须拥有 ec2:ModifyInstanceMetadataOptionsec2:DescribeInstances 权限。有关如何配置角色的详细信息,请参阅使用控制台为 Automation 创建服务角色

相关信息

访问 EC2 实例的实例元数据

AWS 官方已更新 2 个月前