Host key verification failed

使用SSH远程连接Linux系统的ECS实例时,提示“Host key verification failed”错误怎么办?scp 故障,scp

问题现象

  • 本地客户端为Linux环境或macOS环境,使用SSH方式无法正常连接Linux系统的ECS实例时,提示如下错误信息。

     
     
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 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 isae: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:70RSA host key for x.x.x.x has changed and you have requested strict checking.Host key verification failed.
  • 本地客户端为Windows环境,使用常见的SSH客户端(如Putty或MobaXterm)连接Linux系统的ECS实例时,提示类似“The host key does not match the one Putty has cached for this server”或“remote server identification has changed”错误信息。

问题原因

该ECS实例可能进行过重装系统、账户信息变更等操作,导致ECS实例SSH公钥变更,造成本地客户端保存的公钥指纹与服务器端不一致,出现该提示信息。

解决方案

您可以根据本地客户端环境不同,选择合适的方案。

本地客户端为Windows环境

本文以SSH客户端Putty和MobaXterm进行介绍,不同SSH客户端操作有所差异,请根据实际的客户端进行操作。

客户端为Putty时,单击Accept,Putty会自动更新密钥指纹信息,即可成功登录实例。

客户端为MobaXterm时,单击Accept the new server hostkey and carry on connecting,MobaXterm会自动更新密钥指纹信息,即可成功登录实例。

本地客户端为Linux或macOS环境

  1. 在本地客户端中,执行如下命令,进入对应账号的known_hosts文件。

     
     
    vim ~/.ssh/known_hosts
  2. i键进入编辑模式。

  3. 删除ECS实例IP对应的条目,如下图所示。

  4. Esc键,输入:wq保存并退出。

  5. 重新连接Linux实例,确保可以正常连接。