共计 2205 个字符,预计需要花费 6 分钟才能阅读完成。
当我们使用 ssh root@ip 登录 Linux 服务器时,服务器报错:”ECDSA host key for ip has changed and you have requested strict checking. Host key verification failed.
“
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | aliyunbaike@aliyundeMacBook–Pro:~$ ssh root@47.74.190.156 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ 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. Host key verification failed. |
问题分析
这是由于,ssh 连接服务器时,如果之前连接过,ssh 会默认保存该 ip 的连接协议信息,当我们再次访问此 ip 服务器时,ssh 会自动匹配之前 ssh 保存的信息,由于我们的服务器做了更改,例如重装系统等操作,会导致本地保存的 ssh 信息失效,于是再次连接时就会出现上述错误。
另外,远程服务器的 ssh 服务被卸载重装或 ssh 相关数据(协议信息)被删除也会导致这个错误。
如何解决?解决方案
删除本地 known_hosts 里面的缓存信息即可。命令:ssh-keygen -R "你的远程服务器 ip 地址"
1 | aliyunbaike@aliyundeMacBook–Pro:~$ ssh–keygen –R “47.74.190.156” |
删除本地的 ssh keygen 信息后,再次通过 ssh root@ip
登录应该就不会报错了。
注意:R 是大写!
2023 阿里云又降价了!
①真便宜:阿里云 2 核 4G 服务器 6M 带宽 68 元 1 年,有高配(价格很低 值得买)
②高性能:阿里云企业级高性能云服务器特惠活动
③代金券:2023 阿里云代金券一键领取中
正文完
星哥玩云-微信公众号