跳至內容

如何使用 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 權限。如需如何設定角色的詳細資訊,請參閱使用主控台為自動化建立服務角色

相關資訊

存取 EC2 執行個體的執行個體中繼資料

AWS 官方已更新 9 個月前