免責聲明:本文檔可能包含第三方產品資訊,該資訊僅供參考。阿里雲對第三方產品的效能、可靠性以及操作可能帶來的潛在影響,不做任何暗示或其他形式的承諾。
問題描述
- 使用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執行個體,您可以參考以下步驟進行操作。
- 啟動Putty。
- 在登入頁面,單擊 Delete,刪除登入工作階段。
- 重新使用使用者名稱及密碼登入執行個體,確認儲存新的公開金鑰指紋後,即可成功登入。
註:您也可以在彈出相關警示資訊時,單擊 接收並儲存,讓程式自動更新密鑰指紋資訊,即可成功登入執行個體。
用戶端為Linux環境
如果用戶端是Linux環境,您可以參考以下步驟進行操作。
- 執行如下命令,進入對應賬號的known_hosts檔案。
vi ~/.ssh/known_hosts
- 按 i 鍵進入編輯模式。
- 刪除Linux執行個體IP對應的條目,如下圖所示。
- 輸入
:wq
儲存並退出。 - 重新串連Linux執行個體,確認儲存新的公開金鑰指紋後,即可成功登入。
更多資訊
由於公開金鑰一般較長,採用RSA演算法時間長度達1024位,為了簡便起見,通過對其MD5計算,產生一個128位的字串用於資訊對比,稱為公開金鑰指紋。
相關文檔
若還有問題沒解決,請參考如下文檔,做進一步的排查分析。
適用於
- Elastic Compute Service