

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

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

 **説明** 

`AWSSupport-TroubleshootSSH` ランブックは、Linux 用の Amazon EC2Rescue ツールをインストールし、その EC2Rescue ツールを使用して、Linux マシンへの SSH 経由でのリモートからの接続を妨げる、一般的な問題を確認しその修正を試みます。オプションで、ユーザーがオフラインの修復を明示的に許可している場合は、インスタンスを停止して起動することで、オフラインで変更を適用できます。デフォルトでは、このランブックは読み込み専用モードで動作します。

[このオートメーションを実行する (コンソール)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootSSH)

`AWSSupport-TroubleshootSSH` ランブックの使用の詳細については、 AWS プレミアムサポートの「[`AWSSupport-TroubleshootSSH`トラブルシューティングトピック](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-ssh-errors-automation-workflow/)」を参照してください。

**ドキュメントタイプ**

Automation

**[所有者]**

Amazon

**[Platforms]** (プラットフォーム)

リナックス

**パラメータ**
+ アクション

  タイプ: 文字列

  有効な値: 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。
+ S3BucketName

  タイプ: 文字列

  説明: (オプション) オフラインのみ - トラブルシューティングのログをアップロードするアカウントの S3 バケット名です。収集されたログにアクセスする必要がないユーザーへの不必要な読み取り/書き込みアクセス権限をバケットポリシーに付与しないようにします。
+ SubnetId

  タイプ: 文字列

  デフォルト: SelectedInstanceSubnet

  説明: (オプション) オフラインのみ - オフラインのトラブルシューティングを実行するために使用される EC2Rescue インスタンスのサブネット ID。サブネット ID が指定されていない場合、 AWS Systems Manager Automation は新しい VPC を作成します。
**重要**  
サブネットは InstanceId と同じアベイラビリティーゾーンである必要があり、SSM エンドポイントへのアクセスを許可する必要があります。

**必要な IAM アクセス許可**

`AutomationAssumeRole` パラメータでは、ランブックを正常に使用するために、次のアクションが必要です。

このコマンドを受信する EC2 インスタンスには、[**AmazonSSMManagedInstanceCore**] Amazon 管理ポリシーがアタッチされた IAM ロールがあることが推奨されます。オンライン修復の場合、オートメーションを実行し、インスタンスにコマンドを送信するには少なくとも [**ssm:DescribeInstanceInformation**]、[**ssm:StartAutomationExecution**] および [**ssm:SendCommand**] が必要です。また、オートメーションの出力を読み取るためには、[**ssm:GetAutomationExecution**] も必要です。オフライン修復の場合、自動化の出力を読み取るためには、少なくとも [**ssm:DescribeInstanceInformation**]、[**ssm:StartAutomationExecution**]、[**ec2:DescribeInstances**]、および [**ssm:GetAutomationExecution**] が必要です。`AWSSupport-TroubleshootSSH` は `AWSSupport-ExecuteEC2Rescue`を呼び出してオフライン修復を実行します。自動化を正常に実行できるように、`AWSSupport-ExecuteEC2Rescue` のアクセス許可を確認してください。

 **ドキュメントステップ** 

1. `aws:assertAwsResourceProperty` - インスタンスがマネージドインスタンスかを確認します 

   1. (オンラインの修復) インスタンスがマネージドインスタンスの場合は以下のようになります。

      1. `aws:configurePackage` - `AWS-ConfigureAWSPackage` 経由で Linux 用 EC2Rescue をインストールします。

      1. `aws:runCommand` - bash スクリプトを実行し、Linux 用の EC2Rescue を実行します。

   1. (オフラインの修復) インスタンスがマネージドインスタンスでない場合は以下のようになります。

      1. `aws:assertAwsResourceProperty` - **AllowOffline = true** をアサートします

      1. `aws:assertAwsResourceProperty` - **Action = FixAll** をアサートします

      1. `aws:assertAwsResourceProperty` - SubnetId の値をアサートします

      1. (指定されたインスタンスのサブネットを使用) SubnetId が SelectedInstanceSubnet の場合は、`aws:executeAutomation` を使用し、提供されたインスタンスのサブネットで `AWSSupport-ExecuteEC2Rescue` を実行します。

      1. (指定されたカスタムサブネットを使用) SubnetId が SelectedInstanceSubnet ではない場合、`aws:executeAutomation` を使用し、提供された SubnetId の値で `AWSSupport-ExecuteEC2Rescue` を実行します。

 **出力** 

troubleshootSSH.Output

troubleshootSSHOffline.Output

troubleshootSSHOfflineWithSubnetId.Output