选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

AWSSupport-TroubleshootEC2InstanceConnect - AWS Systems Manager 自动化运行手册参考

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWSSupport-TroubleshootEC2InstanceConnect

描述

AWSSupport-TroubleshootEC2InstanceConnect自动化有助于分析和检测阻碍使用 Amazon Instance Con nect 连接到亚马逊弹性计算云 (Amazon EC2) EC2 实例的错误。它可以识别由不支持的亚马逊系统映像 (AMI)、缺少操作系统级软件包安装或配置、缺少 AWS Identity and Access Management (IAM) 权限或网络配置问题导致的问题。

如何工作?

该运行手册采用 IAM 角色或在使用 Amazon Instance Connect 时遇到问题的用户的亚马逊 EC2 实例 ID、用户名、连接模式、源 IP CIDR、SSH 端口和亚马逊资源名称 (ARN)。 EC2 然后,它会检查使用 A EC2 mazon Instance Connect 连接到亚马逊 EC2 实例的先决条件

  • 实例正在运行且处于正常状态。

  • 该实例位于 Amazon EC2 Instan AWS ce Connect 支持的区域。

  • Amazon Instance Connect 支持 EC2 实例的 AMI。

  • 该实例可以访问实例元数据服务 (IMDSv2)。

  • Amaz EC2 on Instance Connect 软件包已在操作系统级别正确安装和配置。

  • 网络配置(安全组、网络 ACL 和路由表规则)允许通过 Amazon Instance Connect 连接到 EC2 实例。

  • 用于利用 Ama EC2 zon Instance Connect 的 IAM 角色或用户有权将密钥推送到亚马逊 EC2 实例。

重要
  • 要检查实例 AMI、可访问 IMDSv2 性和 Amazon Instance EC2 Connect 软件包的安装,该实例必须由 SSM 托管。否则,它会跳过这些步骤。有关更多信息,请参阅为什么我的 Amazon EC2 实例未显示为托管节点。

  • 只有将 SourceIp CIDR 作为输入参数提供时,网络检查才会检测安全组和网络 ACL 规则是否会阻止流量。否则,它将仅显示与 SSH 相关的规则。

  • 本运行手册中未验证使用 Amazon EC2 Instance Connect 终端节点的连接。

  • 对于私有连接,自动化不会检查源计算机上是否安装了 SSH 客户端,以及它是否可以访问实例的私有 IP 地址。

文档类型

自动化

所有者

Amazon

平台

Linux

参数

所需的 IAM 权限

AutomationAssumeRole 参数需要执行以下操作才能成功使用运行手册。

  • ec2:DescribeInstances

  • ec2:DescribeSecurityGroups

  • ec2:DescribeNetworkAcls

  • ec2:DescribeRouteTables

  • ec2:DescribeInternetGateways

  • iam:SimulatePrincipalPolicy

  • ssm:DescribeInstanceInformation

  • ssm:ListCommands

  • ssm:ListCommandInvocations

  • ssm:SendCommand

说明

按照这些步骤对自动化进行配置:

  1. 导航到 AWS Systems Manager 控制台AWSSupport-TroubleshootEC2InstanceConnect中的。

  2. 选择 Execute automation(执行自动化)。

  3. 对于输入参数,请输入以下内容:

    • InstanceId (必填):

      您无法使用 Amazon Inst EC2 ance Connect 连接到的目标亚马逊 EC2 实例的 ID。

    • AutomationAssumeRole (可选):

      允许 Systems Manager Automation 代表你执行操作的 IAM 角色的 ARN。如果未指定角色,Systems Manager Automation 将使用启动此运行手册的用户的权限。

    • 用户名(必填):

      用于使用 A EC2 mazon Instance Connect 连接到亚马逊 EC2 实例的用户名。它用于评估是否向该特定用户授予 IAM 访问权限。

    • EC2InstanceConnectRoleOrUser(必填):

      利用 Amazon Instance Conn EC2 ect 向实例推送密钥的 IAM 角色或用户的 ARN。

    • SSHPort (可选):

      在 Amazon EC2 实例上配置的 SSH 端口。默认值为 22。端口号必须介于两者之间1-65535

    • SourceNetworkType (可选):

      Amazon EC2 实例的网络访问方法:

      • 浏览器:您可以从 AWS 管理控制台进行连接。

      • 公用:您通过 Internet 连接到位于公有子网中的实例(例如,您的本地计算机)。

      • 私有:您通过实例的私有 IP 地址进行连接。

    • SourceIpCIDR(可选):

      源 CIDR,包括您将使用 Amazon EC2 Instance Connect 登录的设备(例如您的本地计算机)的 IP 地址。示例:172.31.48.6/32。如果公共或私有访问模式未提供任何值,则运行手册将不会评估 Amazon EC2 实例安全组和网络 ACL 规则是否允许 SSH 流量。它将改为显示与 SSH 相关的规则。

    Input parameters form for EC2 Instance Connect troubleshooting with various fields.
  4. 选择执行。

  5. 自动化启动。

  6. 文档将执行以下步骤:

    • AssertInitialState:

      确保 Amazon EC2 实例状态为正在运行。否则,自动化将结束。

    • GetInstanceProperties:

      获取当前 Amazon EC2 实例的属性(PlatformDetails PublicIpAddress VpcId、、 SubnetId 和 MetadataHttpEndpoint)。

    • GatherInstanceInformationFromSSM:

      如果该实例由 SSM 托管,则获取 Systems Manager 实例的 ping 状态和操作系统详细信息。

    • CheckIfAWSRegion支持:

      检查亚马逊 EC2 实例是否位于 Amazon Instance EC2 Connect 支持的 AWS 区域。

    • BranchOnIfAWSRegion支持:

      如果 Amazon EC2 Instance Connect 支持 AWS 该区域,则继续执行。否则,它会创建输出并退出自动化。

    • CheckIfInstanceAMIIs支持:

      检查 Amazon Instance Connect 是否支持与该 EC2实例关联的 AMI。

    • BranchOnIfInstanceAMIIs支持:

      如果支持实例 AMI,它将执行操作系统级别的检查,例如元数据可访问性以及 Amazon EC2 Instance Connect 软件包的安装和配置。否则,它会使用 AWS API 检查是否启用了 HTTP 元数据,然后进入网络检查步骤。

    • 检查 IMDSReachabilityFromOs:

      在目标 Amazon EC2 Linux 实例上运行 Bash 脚本以检查它是否能够访问。 IMDSv2

    • 检查EICPackage安装:

      在目标 Amazon EC2 Linux 实例上运行 Bash 脚本,以检查 Amazon EC2 Instance Connect 软件包是否已正确安装和配置。

    • 检查 SSHConfigFromOs:

      在目标 Amazon EC2 Linux 实例上运行 Bash 脚本,以检查配置的 SSH 端口是否与输入参数 `SSHPort匹配。 `

    • CheckMetadataHTTPEndpointIsEnabled:

      检查实例元数据服务 HTTP 端点是否已启用。

    • 检查EICNetwork访问权限:

      检查网络配置(安全组、网络 ACL 和路由表规则)是否允许通过 Amazon Instance Connect 连接到 EC2 实例。

    • 检查 IAMRoleOrUserPermissions:

      检查用于利用 Amazon EC2 Instance Connect 的 IAM 角色或用户是否有权使用提供的用户名将密钥推送到亚马逊 EC2 实例。

    • MakeFinalOutput:

      合并所有先前步骤的输出。

  7. 完成后,请查看 “输出” 部分,了解执行的详细结果:

    目标实例具有所有必需先决条件的执行:

    EC2 Instance Connect prerequisites check results showing successful validations for various configurations.

    在不支持目标实例的 AMI 的情况下执行:

    Error message indicating EC2 Instance Connect does not support the specified AMI version.

参考

Systems Manager Automation

AWS 服务文档

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。