当前位置: 代码迷 >> 综合 >> ssh登录错误ECDSA host key for ip has changed
  详细解决方案

ssh登录错误ECDSA host key for ip has changed

热度:82   发布时间:2023-11-22 11:12:27.0

ssh连接出现如下错误:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 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
d6:be:12:7e:22:23:c3:e1:56:30:d6:cd:65:b7:ab:42.
Please contact your system administrator.
Add correct host key in /.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /.ssh/known_hosts:7
ECDSA host key for xxxxxxxxxxxxx.yyy.au has changed and you have requested strict checking.
Host key verification failed.
NaCl plugin exited with status code 255.
(R)econnect, (C)hoose another connection, or E(x)it?

原因是远程主机被rebuild或重置后,咱们本地缓存的fingerprint对不上远程的key了。所以重点是清楚本地的缓存。
如果是用console就输入命令:

ssh-keygen -R "你的远程服务器ip地址"

如果用的是浏览器的shell插件:

#You can find the index of the offending host entry reported by ssh if the connection fails (see above: “Offending ECDSA key in /.ssh/known_hosts:7”). Then you can open the JavaScript console (CTRL +Shift +J) and type the following into the console.term_.command.removeKnownHostByIndex(INDEX);
#Replace INDEX with the number obviously.#To clear all the known hosts:
term_.command.removeAllKnownHosts();`
  相关解决方案