

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

# `AWSSupport-TroubleshootEC2InstanceConnect`
<a name="automation-troubleshoot-ec2-instance-connect"></a>

 **説明** 

 `AWSSupport-TroubleshootEC2InstanceConnect` オートメーションは、Amazon EC2 [Instance Connect を使用した Amazon Elastic Compute Cloud (Amazon EC2) ](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/connect-linux-inst-eic.html)インスタンスへの接続を妨げるエラーの分析と検出に役立ちます。サポートされていない Amazon マシンイメージ (AMI)、OS レベルのパッケージのインストールまたは設定の欠落、 (IAM) アクセス許可の欠落 AWS Identity and Access Management 、またはネットワーク設定の問題によって引き起こされる問題を特定します。

 **動作の仕組み** 

 ランブックは、Amazon EC2 Instance Connect で問題が発生している IAM ロールまたはユーザーの Amazon EC2 インスタンス ID、ユーザー名、接続モード、ソース IP CIDR、SSH ポート、Amazon リソースネーム (ARN) を取得します。次に、Amazon EC2 Instance Connect を使用して Amazon EC2 インスタンスに接続するための[前提条件](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/ec2-instance-connect-prerequisites.html)を確認します。
+ インスタンスは実行中で、正常な状態です。
+ インスタンスは、Amazon EC2 Instance Connect でサポートされている AWS リージョンにあります。
+ インスタンスの AMI は Amazon EC2 Instance Connect でサポートされています。
+ インスタンスは Instance Metadata Service (IMDSv2) に到達できます。
+ Amazon EC2 Instance Connect パッケージは、OS レベルで適切にインストールおよび設定されています。
+ ネットワーク設定 (セキュリティグループ、ネットワーク ACL、ルートテーブルルール) では、Amazon EC2 Instance Connect 経由でインスタンスに接続できます。
+ Amazon EC2 Instance Connect の活用に使用される IAM ロールまたはユーザーは、Amazon EC2 インスタンスにキーをプッシュするアクセス権を持ちます。

**重要**  
インスタンス AMI、IMDSv2 到達可能性、Amazon EC2 Instance Connect パッケージのインストールを確認するには、インスタンスが SSM マネージドである必要があります。それ以外の場合、これらのステップはスキップされます。詳細については、[Amazon EC2 インスタンスがマネージドノードとして表示されない理由」を参照してください。](https://repost.aws/knowledge-center/systems-manager-ec2-instance-not-appear)
ネットワークチェックは、SourceIpCIDR が入力パラメータとして指定されている場合に、セキュリティグループとネットワーク ACL ルールがトラフィックをブロックする場合にのみ検出します。それ以外の場合は、SSH 関連のルールのみが表示されます。
[Amazon EC2 Instance Connect Endpoint](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/connect-using-eice.html) を使用する接続は、このランブックでは検証されません。
プライベート接続の場合、オートメーションは SSH クライアントがソースマシンにインストールされているかどうか、およびインスタンスのプライベート IP アドレスに到達できるかどうかをチェックしません。

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

オートメーション

**[所有者]**

Amazon

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

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 コンソール[https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootEC2InstanceConnect/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootEC2InstanceConnect/description)で に移動します。

1. [Execute automation] (オートメーションを実行) を選択します。

1. 入力パラメータには、次のように入力します。
   + **InstanceId (必須):**

     Amazon EC2 Instance Connect を使用して接続できなかったターゲット Amazon EC2 インスタンスの ID。
   + **AutomationAssumeRole（オプション):**

     Systems Manager Automation がユーザーに代わってアクションを実行できるようにする IAM ロールの ARN。ロールが指定されていない場合、Systems Manager Automation は、このランブックを開始するユーザーのアクセス許可を使用します。
   + **ユーザー名 (必須):**

     Amazon EC2 Instance Connect を使用して Amazon EC2 インスタンスに接続するために使用されるユーザー名。この特定のユーザーに IAM アクセスが付与されているかどうかを評価するために使用されます。
   + **EC2InstanceConnectRoleOrUser (必須):**

     Amazon EC2 Instance Connect を活用してキーをインスタンスにプッシュする IAM ロールまたはユーザーの ARN。
   + **SSHPort (オプション):**

     Amazon EC2 インスタンスで設定された SSH ポート。デフォルト値は `22` です。ポート番号は の間にする必要があります`1-65535`。
   + **SourceNetworkType (オプション):**

     Amazon EC2 インスタンスへのネットワークアクセス方法:
     + **ブラウザ:** AWS マネジメントコンソールから接続します。
     + **パブリック:** インターネット経由でパブリックサブネットにあるインスタンスに接続します (ローカルコンピュータなど）。
     + **プライベート:** インスタンスのプライベート IP アドレスを介して接続します。
   + **SourceIpCIDR (オプション):**

     Amazon EC2 Instance Connect を使用してログに記録するデバイス (ローカルコンピュータなど) の IP アドレスを含むソース CIDR。例: 172.31.48.6/32。パブリックアクセスモードまたはプライベートアクセスモードで値が指定されていない場合、ランブックは Amazon EC2 インスタンスセキュリティグループとネットワーク ACL ルールが SSH トラフィックを許可しているかどうかを評価しません。代わりに SSH 関連のルールが表示されます。  
![\[Input parameters form for EC2 Instance Connect troubleshooting with various fields.\]](http://docs.aws.amazon.com/ja_jp/systems-manager-automation-runbooks/latest/userguide/images/awssupport-troubleshoot-ec2-instance-connect_input_parameters.png)

1. [実行] を選択します。

1. 自動化が開始されます。

1. ドキュメントは以下のステップを実行します。
   + **AssertInitialState:**

     Amazon EC2 インスタンスのステータスが実行されていることを確認します。それ以外の場合、自動化は終了します。
   + **GetInstanceProperties:**

     現在の Amazon EC2 インスタンスプロパティ (PlatformDetails、PublicIpAddress、VpcId、SubnetId、MetadataHttpEndpoint) を取得します。
   + **GatherInstanceInformationFromSSM:**

     インスタンスが SSM 管理されている場合、Systems Manager インスタンスの ping ステータスとオペレーティングシステムの詳細を取得します。
   + **CheckIfAWSRegionSupported:**

     Amazon EC2 インスタンスが Amazon EC2 Instance Connect でサポートされている AWS リージョンにあるかどうかを確認します。
   + **BranchOnIfAWSRegionSupported:**

      AWS リージョンが Amazon EC2 Instance Connect でサポートされている場合は、実行を続行します。それ以外の場合は、出力が作成され、オートメーションが終了します。
   + **CheckIfInstanceAMIIsSupported**

     インスタンスに関連付けられた AMI が Amazon EC2 Instance Connect でサポートされているかどうかを確認します。
   + **BranchOnIfInstanceAMIIsSupported:**

     インスタンス AMI がサポートされている場合、メタデータの到達可能性や Amazon EC2 Instance Connect パッケージのインストールと設定など、OS レベルのチェックが実行されます。それ以外の場合は、API を使用して AWS HTTP メタデータが有効になっているかどうかをチェックし、ネットワークチェックステップに進みます。
   + **CheckIMDSReachabilityFromOs:**

     ターゲット Amazon EC2 Linux インスタンスで Bash スクリプトを実行して、IMDSv2 に到達できるかどうかを確認します。
   + **CheckEICPackageInstallation:**

     ターゲット Amazon EC2 Linux インスタンスで Bash スクリプトを実行して、Amazon EC2 Instance Connect パッケージが正しくインストールおよび設定されているかどうかを確認します。
   + **CheckSSHConfigFromOs:**

     ターゲット Amazon EC2 Linux インスタンスで Bash スクリプトを実行して、設定された SSH ポートが入力パラメータSSHPort.`
   + **CheckMetadataHTTPEndpointIsEnabled:**

     インスタンスメタデータサービスの HTTP エンドポイントが有効になっているかどうかを確認します。
   + **CheckEICNetworkAccess:**

     ネットワーク設定 (セキュリティグループ、ネットワーク ACL、ルートテーブルルール) で Amazon EC2 Instance Connect を介したインスタンスへの接続が許可されているかどうかを確認します。
   + **CheckIAMRoleOrUserPermissions:**

     Amazon EC2 Instance Connect の活用に使用した IAM ロールまたはユーザーが、指定されたユーザー名を使用して Amazon EC2 インスタンスにキーをプッシュするアクセス権を持っているかどうかを確認します。
   + **MakeFinalOutput:**

     前のすべてのステップの出力を統合します。

1. 完了したら、**出力**セクションで実行の詳細な結果を確認します。

   ターゲットインスタンスに必要なすべての前提条件がある実行:  
![\[EC2 Instance Connect prerequisites check results showing successful validations for various configurations.\]](http://docs.aws.amazon.com/ja_jp/systems-manager-automation-runbooks/latest/userguide/images/awssupport-troubleshoot-ec2-instance-connect_outputs_all_requirements_found.png)

   ターゲットインスタンスの AMI がサポートされていない実行:  
![\[Error message indicating EC2 Instance Connect does not support the specified AMI version.\]](http://docs.aws.amazon.com/ja_jp/systems-manager-automation-runbooks/latest/userguide/images/awssupport-troubleshoot-ec2-instance-connect_outputs_all_requirements_not_found.png)

 **リファレンス** 

Systems Manager Automation
+ [このオートメーションを実行する (コンソール)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootEC2InstanceConnect/description)
+ [オートメーションを実行する](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [オートメーションの設定](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [「自動化ワークフローをサポート」ランディングページ](https://aws.amazon.com/premiumsupport/technology/saw/)

AWS サービスドキュメント
+ [Amazon EC2 Instance Connect を使用した Amazon EC2 インスタンスへの接続に関する問題のトラブルシューティング方法を教えてください。](https://repost.aws/knowledge-center/ec2-instance-connect-troubleshooting)