Q41 — AWS SAA-C03 第16章
第 41/100 题 | ← 返回第16章
Q1241. 一位云工程师想使用 AWS Systems Manager 会话管理器访问一个 Amazon EC2 实例。该 EC2 实例运行在一个没有互联网网关的私有 VPC 中。哪种解决方案可以满足这些要求?
- A. 生成新的 EC2 密钥对。停止 EC2 实例并将新密钥分配给该实例。重新启动 EC2 实例。
- B. 将 EC2 实例移动到公共子网。
- C. 在分配给 EC2 实例的安全组中创建入站规则。配置入站规则以允许 Session Manager 连接到 EC2 实例。
- D. 创建一个 lAM 角色,授予 Amazon EC2 访问 Systems Manager 的权限。将 lAM 角色与 EC2 实例的 EC2 实例配置文件关联。 ✓
正确答案: D. 创建一个 lAM 角色,授予 Amazon EC2 访问 Systems Manager 的权限。将 lAM 角色与 EC2 实例的 EC2 实例配置文件关联。
解析
这位云工程师希望使用 AWS Systems Manager 会话管理器访问私有 VPC 中的 Amazon EC2 实例,而无需互联网网关。会话管理器允许以类似 SSH 的安全方式访问 EC2 实例,而无需堡垒主机或开放 SSH 端口。关键要求:没有互联网网关 实例无法通过公共互联网直接与 AWS 服务通信。会话管理器必须工作实例必须有一种方式来与 AWS Systems Manager 服务进行通信。会话管理器的工作原理:会话管理器依赖于在 EC2 实例上运行的 AWS Systems Manager (SSM) 代理。SSM 代理通过以下方式与 AWS Systems Manager 服务通信:公共终端节点(如果实例可以通过 IGW 或 NAT 网关访问互联网)。VPC 终端节点(如果实例位于私有子网中,并使用 PrivateLink 接口终端节点进行 SSM 操作)。EC2 实例需要 IAM 权限才能与 SSM 交互。选项分析:A. 生成新的 EC2 密钥对。停止 EC2 实例并将新密钥分配给该实例。重新启动 EC2 实例。错误:会话管理器不需要 SSH 密钥。它使用 IAM 角色和 SSM 代理进行访问。此解决方案不适用。B.将 EC2 实例移动到公共子网。错误:虽然这允许互联网访问(如果连接了 IGW),但它违反了将实例保留在没有 IGW 的私有 VPC 中的要求。此外,如果使用 VPC 终端节点,会话管理器可以在不将实例暴露给公共互联网的情况下工作。C. 在分配给 EC2 实例的安全组中创建入站规则。配置入站规则以允许会话管理器连接到 EC2 实例。错误:会话管理器不需要安全组中的入站规则,因为它使用从 SSM 代理到 AWS 服务的出站通信(通过 VPC 终端节点或公共互联网)。此步骤是不必要的。D. 创建一个 IAM 角色,授予 Amazon EC2 访问 Systems Manager 的权限。将该 IAM 角色与 EC2 实例的 EC2 实例配置文件关联。正确的:会话管理器要求 SSM 代理具有 IAM 权限才能与 AWS Systems Manager 交互。必须为 EC2 实例分配具有 AmazonSSMManagedInstanceCore 策略(或等效权限)的 IAM 角色。由于 VPC 没有互联网网关,实例必须使用 VPC 接口终端节点(例如 com.amazonaws.region.ssm)来连接 SSM。虽然问题中并未提及如何配置 VPC 终端节点,但会话管理器仍然需要 IAM 权限才能正常工作(即使通信是通过 VPC 终端节点进行的)。这是会话管理器发挥作用的最基本要求。缺失的部分(但仍然是最佳答案):问题中没有提到为 SSM 配置 VPC 端点,但由于 VPC 没有互联网网关,工程师还需要为 SSM 设置 VPC 接口端点,以允许在没有互联网访问的情况下进行通信。但是,在给定的选项中,只有 D 是会话管理器工作所严格需要的(即使在私有子网中实现完全连接需要 VPC 端点等额外步骤)。最终答案:D. 创建一个 IAM 角色,授予 Amazon EC2 访问 Systems Manager 的权限。将该 IAM 角色与 EC2 实例的 EC2 实例配置文件关联。附加建议:为了在没有 IGW 的私有子网中完全启用会话管理器,工程师还应该:为 com.amazonaws.region.ssm(以及可选的 com.amazonaws.region.ec2messages 和 com.amazonaws.region.ssmmessages)创建 VPC 接口终端节点。确保 SSM 代理已在 EC2 实例上安装并运行(默认情况下,它在 Amazon Linux 2、Ubuntu 和 Windows AMI 上安装)。