翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWSSupport-TroubleshootSSH
説明
AWSSupport-TroubleshootSSH
ランブックは、Linux 用の Amazon EC2Rescue ツールをインストールし、その EC2Rescue ツールを使用して、Linux マシンへの SSH 経由でのリモートからの接続を妨げる、一般的な問題を確認しその修正を試みます。オプションで、ユーザーがオフラインの修復を明示的に許可している場合は、インスタンスを停止して起動することで、オフラインで変更を適用できます。デフォルトでは、このランブックは読み込み専用モードで動作します。
AWSSupport-TroubleshootSSH
ランブックの使用の詳細については、AWS プレミアムサポートの「AWSSupport-TroubleshootSSH
トラブルシューティングトピック
ドキュメントタイプ
Automation
所有者
Amazon
[Platforms] (プラットフォーム)
Linux
[Parameters] (パラメータ)
-
アクション
型: 文字列
有効な値: CheckAll | FixAll
デフォルト: CheckAll
説明: (必須) 検出された問題を修正せずにチェックのみを行うか、チェックし自動的に修正するかを指定します。
-
AllowOffline
型: 文字列
有効な値: true | 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
のアクセス許可を確認してください。
ドキュメントステップ
-
aws:assertAwsResourceProperty
- インスタンスがマネージドインスタンスかを確認します-
(オンラインの修復) インスタンスがマネージドインスタンスの場合は以下のようになります。
-
aws:configurePackage
-AWS-ConfigureAWSPackage
経由で Linux 用 EC2Rescue をインストールします。 -
aws:runCommand
- bash スクリプトを実行し、Linux 用の EC2Rescue を実行します。
-
-
(オフラインの修復) インスタンスがマネージドインスタンスでない場合は以下のようになります。
-
aws:assertAwsResourceProperty
- AllowOffline = true をアサートします -
aws:assertAwsResourceProperty
- Action = FixAll をアサートします -
aws:assertAwsResourceProperty
- SubnetId の値をアサートします -
(指定されたインスタンスのサブネットを使用) SubnetId が SelectedInstanceSubnet の場合は、
aws:executeAutomation
を使用し、提供されたインスタンスのサブネットでAWSSupport-ExecuteEC2Rescue
を実行します。 -
(指定されたカスタムサブネットを使用) SubnetId が SelectedInstanceSubnet ではない場合、
aws:executeAutomation
を使用し、提供された SubnetId の値でAWSSupport-ExecuteEC2Rescue
を実行します。
-
-
[Outputs] (出力)
troubleshootSSH.Output
troubleshootSSHOffline.Output
troubleshootSSHOfflineWithSubnetId.Output