EC2 Instance Connect を使用して EC2 インスタンスへ接続する際の問題をトラブルシューティングするにはどうすればよいですか?

所要時間2分
0

Amazon EC2 Instance Connect を使用して Amazon Elastic Compute Cloud (Amazon EC2) インスタンスに接続しようとすると、「インスタンス接続の設定中に問題が発生し、ログインに失敗しました。このインスタンスが開始したばかりの場合は、1~2 分後にもう一度試してください。」というエラーが表示されます

簡単な説明

EC2 Instance Connect が期待どおりに機能しない一般的な理由は次のとおりです:

  • EC2 Instance Connect が OS ディストリビューションをサポートしていない。
  • EC2 Instance Connect パッケージがインスタンスにインストールされていない。
  • AWS Identity and Access Management (IAM) のポリシーまたは権限が欠落しているか、正しくない。
  • インスタンスに関連付けられているセキュリティグループに、EC2 Instance Connect サービス IP がリストされていない。

ブラウザベースのクライアントを使用して接続するには、インスタンスにパブリック IPv4 アドレスが必要です。インスタンスにパブリック IP アドレスがない場合は、同じ VPC 内のマシンから EC2 Instance Connect を使用して接続します。

**注:**Linux 用の EC2 シリアルコンソールを有効にすると、それを使用してサポートされている Nitro ベースのインスタンスタイプのトラブルシューティングを行うことができます。シリアルコンソールは、起動に関する問題、ネットワーク構成、および SSH 設定の問題のトラブルシューティングに役立ちます。シリアルコンソールは、ネットワーク接続が機能していなくてもインスタンスに接続します。Amazon EC2 コンソールまたは AWS コマンドラインインターフェイス (AWS CLI) を使用してシリアルコンソールにアクセスできます。

シリアルコンソールを使用する前に、アカウントレベルでアクセス権を付与し、IAM ユーザーにアクセス権を付与する IAM ポリシーを作成する必要があります。また、シリアルコンソールを使用するすべてのインスタンスには、少なくとも 1 人のパスワードベースのユーザーが含まれている必要があります。インスタンスが到達不能で、シリアルコンソールへのアクセスを設定していない場合は、次の記事のリンクに記載されている、インスタンスへの手動接続の手順に従ってください。

Linux 用 EC2 シリアルコンソールの設定については、「EC2 シリアルコンソールへのアクセスを設定する」を参照してください。

**注:**AWS CLI コマンドの実行中にエラーが発生した場合は、AWS CLI の最新バージョンを使用していることを確認してください

解決策

1.    EC2 Instance Connect がインスタンスの Linux ディストリビューションをサポートしていることを確認します。

2.    サポートされているインスタンスに EC2 Instance Connect パッケージがインストールされていることを確認します。

3.    EC2 Instance Connect を使用しようとしている IAM ユーザーに、パブリックキーをインスタンスにプッシュする権限があることを確認します。

4.    インスタンスのセキュリティグループルールに EC2 Instance Connect IP が表示されていることを確認します:

ブラウザベースの SSH 接続

ブラウザベースの SSH 接続では、インスタンスのセキュリティグループのインバウンドルールで EC2 Instance Connect が TCP ポート 22 の SSH にアクセスすることを許可する必要があります。

EC2 Instance Connect は、インスタンスへのブラウザベースの SSH 接続に特定の IP 範囲を使用します。これらの IP 範囲は AWS リージョンによって異なります。特定のリージョンの EC2 Instance Connect の AWS IP アドレス範囲を検索するには、次のコマンドを使用します。

注: 次のコマンドでは、us-east-1 をインスタンスの AWS リージョンに置き換えます。インスタンスが EC2 Instance Connect でサポートされているリージョンにあることを確認してください。

Windows (AWS に Windows PowerShell が必要)

PS C:\> Get-AWSPublicIpAddressRange -Region us-east-1 -ServiceKey EC2_INSTANCE_CONNECT | select IpPrefix

**Linux (curl と jq が必要) **

$ curl -s https://ip-ranges.amazonaws.com/ip-ranges.json| jq -r '.prefixes[] | select(.region=="us-east-1") | select(.service=="EC2_INSTANCE_CONNECT") | .ip_prefix'

セキュリティグループのインバウンドルールを更新して、前述のコマンドで返された IP 範囲から TCP ポート 22 にアクセスできるようにします。

EC2 Instance Connect CLI 接続

セキュリティグループのインバウンドルールを更新して、IP から TCP ポート 22 にアクセスできるようにします。

関連情報

EC2 インスタンスに EC2 Instance Connect をインストールする

EC2 Instance Connect を使用して Linux インスタンスに接続する

最初の起動後に SSH キーペアを紛失した場合、Amazon EC2 インスタンスに接続するにはどうすればよいですか?

SSH を使用して Amazon EC2 Linux インスタンスに接続できないのはなぜですか?

AWS公式
AWS公式更新しました 2年前
コメントはありません

関連するコンテンツ