解決「REMOTE HOST IDENTIFICATION HAS CHANGED!」的錯誤

今天收到通知,有一台主機因為更新失敗,所以用了舊的備份重啟主機,導致資料有點舊,請我將最新資料更新上去。

連線到該主機時,發生了奇怪的錯誤(恕我馬賽克一些資料):

xxx@yyy [~]# ssh heaven@111.222.333.444

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

@    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:asdfasdfasdfasdfasdfasdf

Please contact your system administrator.

Add correct host key in /home/xxx/.ssh/known_hosts to get rid of this message.

Offending ECDSA key in /home/xxx/.ssh/known_hosts:1

ECDSA host key for ...... has changed and you have requested strict checking.

Host key verification failed.

 

原本以為主機是把連線的 IP 資料弄丢了,請對方檢查後並不是如此。

後來查了資料才知道,客戶端使用 SSH 連到主機時,在客戶端會産生某種認證資料,主機重灌後,認證資料變了,就無法直接登錄了。

解決方法也很簡單,先移除在客戶端的認證資料,下達命令:

ssh-keygen -R 伺服器主機的IP

重新連線後,會詢問:

Are you sure you want to continue connecting (yes/no)?  

輸入 yes 即可連上了。

 
重要度:
文章分類:
電腦標籤:

發表新回應