如何疑難排解使用 EC2 Instance Connect 連線至 EC2 執行個體時發生的問題?

2 分的閱讀內容
0

嘗試使用 Amazon EC2 Instance Connect 連線至 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體時收到以下錯誤訊息:「設定執行個體連線時發生問題,登入失敗。如果這個執行個體才剛啟動,請稍候一到兩分鐘後再試。」

簡短說明

EC2 Instance Connect 可能無法如預期中運作的常見原因如下:

  • EC2 Instance Connect 不支援作業系統版本。
  • 執行個體未安裝 EC2 Instance Connect 套件。
  • AWS Identity and Access Management (IAM) 政策或許可缺少或不正確。
  • 與執行個體相關聯的安全群組未列出 EC2 Instance Connect 服務 IP。

若要使用以瀏覽器為基礎的用戶端連線,您的執行個體必須具備公有 IPv4 地址。如果您的執行個體沒有公有 IP 地址,請使用 EC2 Instance Connect 從同一個 VPC 內的機器連線。

**注意:**如果已開啟適用於 Linux 的 EC2 序列主控台,您可以使用該主控台,針對支援的 Nitro 型執行個體類型進行疑難排解。序列主控台可協助您疑難排解開機問題、網路組態和 SSH 組態問題。序列主控台不必使用正常運作中的網路連線,就能連線至您的執行個體。您可以使用 Amazon EC2 主控台或 AWS Command Line Interface (AWS CLI) 存取序列主控台。

使用序列主控台之前,您必須在帳戶層級授予其存取權,並建立 IAM 政策授予 IAM 使用者存取權。此外,每個使用序列主控台的執行個體都必須至少包含一個密碼型使用者。如果您的執行個體無法連線,而且您尚未設定序列主控台的存取權,您可以依照下列文章連結中提供的指示,手動連線至執行個體。

如需深入了解如何設定適用於 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 使用特定的 IP 範圍,與您的執行個體建立以瀏覽器為基礎的 SSH 連線。這些 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 年前