

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

# `AWSSupport-TroubleshootSSH`
<a name="automation-awssupport-troubleshootssh"></a>

 **描述** 

`AWSSupport-TroubleshootSSH`运行手册安装适用于 Linux 的 Amazon EC2 Rescue 工具，然后使用 EC2救援工具检查或尝试修复阻止通过 SSH 远程连接到 Linux 计算机的常见问题。（可选）如果用户明确允许进行离线修复，则可以通过停止和启动实例来离线应用更改。默认情况下，运行手册以只读模式运行。

[运行此自动化（控制台）](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootSSH)

有关使用 `AWSSupport-TroubleshootSSH` 运行手册的信息，请参阅来自 AWS Premium Support 的此 [`AWSSupport-TroubleshootSSH`故障排除主题](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-ssh-errors-automation-workflow/)。

**文档类型**

自动化

**所有者**

Amazon

**平台**

Linux

**参数**
+ 操作

  类型：字符串

  有效值： CheckAll \$1 FixAll

  默认： CheckAll

  说明：（必需）指定只检查而不修复问题还是检查并自动修复任何发现的问题。
+ AllowOffline

  类型：字符串

  有效值：true \$1 false

  默认：false

  说明：（可选）仅修复 - 如果当在线故障排除失败或提供的实例不是托管实例时允许进行离线 SSH 修复，请将其设置为 true。注意：对于离线修复，SSM Automation 会停止实例，并在尝试任何操作前创建一个 AMI。
+ AutomationAssumeRole

  类型：字符串

  描述：（可选）允许 Systems Manager Automation 代表您执行操作 AWS Identity and Access Management (IAM) 角色的 Amazon 资源名称（ARN）。如果未指定角色，Systems Manager Automation 将使用启动此运行手册的用户的权限。
+ InstanceId

  类型：字符串

  描述：（必填）您的 Linux 版 EC2 实例的 ID。
+ S3 BucketName

  类型：字符串

  说明：（可选）仅离线 - 您账户中用于上传故障排除日志的 S3 存储桶的名称。请确保存储桶策略不会向不需要访问收集的日志的各方授予不必要的读/写权限。
+ SubnetId

  类型：字符串

  默认： SelectedInstanceSubnet

  描述：（可选）仅限脱机-用于执行离线故障排除的 EC2 Rescue 实例的子网 ID。如果未指定子网 ID，A AWS Systems Manager utomation 将创建一个新的 VPC。
**重要**  
子网必须与位于同一个可用区中 InstanceId，并且必须允许访问 SSM 端点。

**所需的 IAM 权限**

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

建议接收命令的 EC2 实例具有 IAM 角色并附有 Amazon A **SSMManagedInstanceCorema** zon 托管策略。要进行在线修复，用户必须至少有 **ssm: DescribeInstanceInformation**、**ssm: StartAutomationExecution** 和 **ssm: SendCommand** 才能运行自动化并将命令发送到实例，还必须有 **ssm: GetAutomationExecution** 才能读取自动化输出。要进行离线修复，用户必须至少有 **ssm: DescribeInstanceInformation**、**ssm: StartAutomationExecution**、**ec2: 和** **ssm: DescribeInstances**，GetAutomationExecution才能读取自动化输出。 `AWSSupport-TroubleshootSSH`调用`AWSSupport-ExecuteEC2Rescue`以执行离线修复-请查看的权限`AWSSupport-ExecuteEC2Rescue`以确保您可以成功运行自动化。

 **文档步骤** 

1. `aws:assertAwsResourceProperty` - 检查实例是否为托管实例 

   1. （在线修复）如果实例为托管实例，则：

      1. `aws:configurePackage`-通过安装适用于 Linux 的 EC2救援`AWS-ConfigureAWSPackage`。

      1. `aws:runCommand`-运行 bash 脚本运行 Linux 版 R EC2 escue。

   1. （离线修复）如果实例并非托管实例，则：

      1. `aws:assertAwsResourceProperty`-断言 **AllowOffline = 真**

      1. `aws:assertAwsResourceProperty`-断言**操作 = FixAll**

      1. `aws:assertAwsResourceProperty`-断言的价值 SubnetId

      1. （使用提供的实例的子网） SubnetId 如果SelectedInstanceSubnet 我们`aws:executeAutomation`要使用提供的实例的子网运行`AWSSupport-ExecuteEC2Rescue`。

      1. （使用提供的自定义子网） SubnetId If 不SelectedInstanceSubnet `aws:executeAutomation``AWSSupport-ExecuteEC2Rescue`使用提供的SubnetId 值运行。

 **输出** 

troubleshootSSH.Output

疑难解答SSHOffline。输出

疑难解答SSHOfflineWithSubnetId。输出