全部產品
Search
文件中心

:使用SSH登入ECS執行個體時提示“Host key verification failed”錯誤

更新時間:Feb 17, 2022

免責聲明:本文檔可能包含第三方產品資訊,該資訊僅供參考。阿里雲對第三方產品的效能、可靠性以及操作可能帶來的潛在影響,不做任何暗示或其他形式的承諾。

 

問題描述

  • 使用SSH登入Linux執行個體時,提示如下錯誤資訊,導致無法正常串連Linux執行個體。
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
    Someone could be eavesdropping on you right now (man-in-the-middle attack)!
    It is also possible that the RSA host key has just been changed.
    The fingerprint for the RSA key sent by the remote host is
    ae:6e:68:4c:97:a6:91:81:11:38:8d:64:ff:92:13:50.
    Please contact your system administrator.
    Add correct host key in /root/.ssh/known_hosts to get rid of this message.
    Offending key in /root/.ssh/known_hosts:70
    RSA host key for x.x.x.x has changed and you have requested strict checking.
    Host key verification failed.











  • 若用戶端為Windows環境,以常見的SSH用戶端為例,串連時提示如下錯誤。
    X.X.X.X (連接埠:XX)的主機密鑰與本地主機密鑰資料庫中儲存的不一致。主機密鑰已更改或有人試圖監聽此串連。若無法確定,建議取消此串連。

 

問題原因

Linux執行個體進行過重裝系統,賬戶資訊變更等使其SSH公開金鑰變更,造成用戶端儲存的公開金鑰指紋與伺服器端不一致,導致SSH認證失敗拒絕登入。

 

解決方案

本文相關Linux配置及說明已在CentOS 6.5 64 位元作業系統中進行過測試。其它作業系統版本配置可能有所差異,具體情況請參閱相應作業系統官方文檔。

 

用戶端為Windows環境

如果用戶端是Windows環境,而且使用SSH用戶端Putty串連Windows執行個體,您可以參考以下步驟進行操作。

  1. 啟動Putty。
  2. 在登入頁面,單擊 Delete,刪除登入工作階段。 
    Image2.png
  3. 重新使用使用者名稱及密碼登入執行個體,確認儲存新的公開金鑰指紋後,即可成功登入。
    註:您也可以在彈出相關警示資訊時,單擊 接收並儲存,讓程式自動更新密鑰指紋資訊,即可成功登入執行個體。

 

用戶端為Linux環境

如果用戶端是Linux環境,您可以參考以下步驟進行操作。

  1. 執行如下命令,進入對應賬號的known_hosts檔案。
    vi ~/.ssh/known_hosts
  2. i 鍵進入編輯模式。
  3. 刪除Linux執行個體IP對應的條目,如下圖所示。
    TB1yJ8YJVXXXXXqXFXXXXXXXXXX.png
  4. 輸入:wq儲存並退出。
  5. 重新串連Linux執行個體,確認儲存新的公開金鑰指紋後,即可成功登入。

 

更多資訊

由於公開金鑰一般較長,採用RSA演算法時間長度達1024位,為了簡便起見,通過對其MD5計算,產生一個128位的字串用於資訊對比,稱為公開金鑰指紋。

 

相關文檔

若還有問題沒解決,請參考如下文檔,做進一步的排查分析。

 

適用於

  • Elastic Compute Service

 

如果您的問題仍未解決,您可以在阿里雲社區免費諮詢,或提交工單聯絡阿里雲支援人員。