ssh登入錯誤ECDSA host key for ip has changed解決方案

當我們使用ssh root@ip登入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 a host key has just been changed。 The fingerprint for the ECDSA key sent by the remote host is SHA256:Ms+BRn93GbOO1fwP6g1O+UwSRFv9KIUMGeoHDt70OfQ。 Please contact your system administrator。 Add correct host key in /Users/aliyunbaike/。ssh/known_hosts to get rid of this message。 Offending ECDSA key in /Users/aliyunbaike/。ssh/known_hosts:6 ECDSA host key for 47。74。190。156 has changed and you have requested strict checking。

這是由於,ssh連線伺服器時,如果之前連線過,ssh會預設儲存該ip的連線協議資訊,當我們再次訪問此ip伺服器時,ssh會自動匹配之前ssh儲存的資訊,由於我們的伺服器做了更改,例如重灌系統等操作,會導致本地儲存的ssh資訊失效,於是再次連線時就會出現上述錯誤。

另外,遠端伺服器的ssh服務被解除安裝重灌或ssh相關資料(協議資訊)被刪除也會導致這個錯誤。

解決方案:

刪除本地known_hosts裡面的快取資訊即可。命令:ssh-keygen -R “你的遠端伺服器ip地址”注意:R是大寫!