為什麼我在連線到 Amazon Elastic Compute Cloud (Amazon EC2) Linux 執行個體時收到 "imported-openssh-key" 或 "Putty Fatal Error" 錯誤?

2 分的閱讀內容
0

我在連線到 Amazon Elastic Compute Cloud (Amazon EC2) Linux 執行個體時收到 "imported-openssh-key" 或 "Putty Fatal Error" 錯誤。

簡短描述

使用 SSH 連線到我的 Linux 執行個體時,我收到如下錯誤訊息:

Using username "root". Authentication with public key "imported-openssh-key" Please login as the user "ec2-user" rather than the user "root".

-或-

使用 PuTTY 用戶端時,我收到如下錯誤訊息:

PuTTY Fatal Error: Disconnected: No supported authentication methods available (server sent: publickey) OK

在下列情況下,可能會發生這些錯誤:

  • 當您與 EC2 執行個體交涉 SSH 工作階段時,並未使用 AMI 的適當使用者名稱連線。
  • 當您與 EC2 執行個體交涉 SSH 工作階段時,使用了錯誤的私有金鑰。

解決方法

確認您使用正確的使用者名稱連線

在本機上確認您是否使用適當的使用者名稱進行連線。如需適當使用者名稱的完整清單,請參閱对連線至執行個體进行疑難排解

確認私有金鑰是否正確

1.    開啟 Amazon EC2 主控台,然後選擇執行個體

2.    找到您要使用 SSH 連線的 EC2 執行個體。

3.    在金鑰名稱欄中,確認您透過 SSH 連線時所使用的私有金鑰名稱:

PuTTY

確認 SSH 私有金鑰與您在主控台中 EC2 執行個體的金鑰名稱欄中看到的私有金鑰相符。

確認您已將私有金鑰 (.pem) 檔案轉換為 PuTTY (.ppk) 辨識的格式。如需相關資訊,請參閱使用 PuTTYgen 轉換私有金鑰

macOS 或 Linux

執行下列命令,確定您已變更金鑰配對檔案的權限,以便只有您可以檢視它:

$ chmod 400 my-key-pair.pem

檢查您在 -i 旗標之後指定的目錄和檔案名稱,以確定它是私有金鑰的正確路徑,如下列範例命令所示:

$ ssh -i my-key-pair.pem ec2-user@52.4.XX.XX

使用 EC2 序列主控台

如果您已開啟適用於 Linux 的 EC2 序列主控台,則可以使用它來對支援的 Nitro 型執行個體類型裸機執行個體進行疑難排解。您可以存取 Amazon EC2 主控台或 AWS Command Line Interface (AWS CLI)。使用 EC2 序列主控台時,不需要有效連線即可連線至執行個體。

**注意:**如果您之前尚未使用過 EC2 序列主控台,請務必先檢閱先決條件設定存取權,然後再嘗試連線。

1.    開啟 Amazon EC2 主控台

2.    選擇執行個體

3.    選取執行個體,然後選擇動作監視和疑難排解EC2 序列主控台連線

-或-

選取執行個體,然後選擇連線EC2 序列主控台連線

瀏覽器內的終端機視窗隨即開啟。

4.    按 Enter 鍵。如果您已連線至序列主控台,則會傳回登入提示。如果畫面仍然是黑色的,您可以使用下列資訊來協助解決連線至序列主控台的問題:

5.    在登入提示中,輸入您先前設定之密碼型使用者的使用者名稱,然後按 Enter 鍵。

6.    在密碼提示中,輸入密碼,然後按 Enter 鍵。

您現在已登入執行個體,並可使用序列主控台進行疑難排解。

您也可以使用自己的金鑰和 SSH 用戶端進行連線

如需有關使用 EC2 序列主控台的詳細資訊,請參閱連線至 EC2 序列主控台

相關資訊

為什麼我無法使用 SSH 連線至 Amazon EC2 Linux 執行個體?

如何對使用 SSH 連線至 Amazon EC2 Linux 執行個體進行疑難排解

Amazon EC2 金鑰對和 Windows 執行個體

AWS 官方
AWS 官方已更新 1 年前