SSH 登录时出错:Host key verification failed

赞赏 2016-07-12

使用 SSH 登录云服务器 ECS (Elastic Compute Server) Linux 服务器时,出现类似如下错误信息,导致无法正常连接。


  •  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 the RSA host key has just been changed.
    The fingerprint for the RSA key sent by the remote host is
    ae: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:70
    RSA host key for x.x.x.x has changed and you have requested strict checking.
    Host key verification failed.
  • Windows 环境,以常见的 NetSarang Xshell 客户端为例,连接报错如下公钥指纹不匹配示意图所示:
    X.X.X.X (端口: XX)的主机密钥与本地主机密钥数据库中保存的不一致。主机密钥已更改或有人试图监听此连接。若无法确定,建议取消此连接。
    图1 Windows 环境 SSH 连接告警 


问题原因


Linux服务器系统重装、账户信息变更等致使其SSH 公钥变更,造成客户端保存公钥指纹与服务端不一致,导致 SSH 认证失败,拒绝登录。

处理办法


  • 客户端是 Windows 环境
  • 客户端是 Linux 环境


客户端是 Windows 环境

如果客户端是 Windows 环境,还是以Xshell 客户端为例,要解决此问题,请进行如下操作:

  1. 打开Xshell程序。
  2. 单击 工具 > 主机密钥管理者,如下图所示,选中目标服务器对应条目,然后点击 删除
  3. 重新登录服务器,确认保存新的公钥指纹后,即可成功登录。

说明:前图所示,也可以在弹出相关告警信息的时候,直接点击 接收并保存 。让程序自动更新新密钥指纹信息,就可以继续正常登录。

 

客户端是 Linux 环境

如果客户端是 Linux 环境,要解决此问题,请进行如下操作:

  1. 使用 vi 等编辑器,编辑对应账户的 known_hosts 文件:
    vi ~/.ssh/known_hosts
  2. 类似下图所示,找到对应条目,将其删除:
  3. 重新连接服务器,确认保存新的公钥指纹后,即可成功登录。

更多信息


  • 公钥指纹

    由于公钥一般较长(采用RSA算法时长达 1024 位)。所以,为了简便起见,通过对其MD5计算,生成一个128位的字符串用于信息对比。此称为公钥指纹。

登陆后阅读全文
阅读 1871 赞赏 0 有用 0 没用 0 收藏 0 分享

   



0 条留言

linux分享的头像

linux分享

每个软件都有确定的用途

相关文章

阿里云·业务运营团队内部的前端构建和工程化工具 Dawn开源

Linux SSH 基于密钥交换的自动登录原理是怎样的?

SSH 服务启动时出现如下错误:main process exited, code=exited

SSH 登录时出现如下错误:Permission denied, please try again

Linux SSH连接交互过程是怎样的?

启动SSH服务时出错:Bad configuration options,怎么解决?

安全组设置允许SSH登录到 Linux 实例

Linux下SSH如何配置更安全? (改端口 禁root 限IP)

阿里云云盾扫描服务器的的IP段有哪些?

阿里云云盾扫描服务器的的IP段有哪些?

有料推荐

这世界欠我一个这样的老公!

高校学生模仿“世界名画”摆拍,可以说是戏精本精了

iPhone X 跌破发行价,苏宁200亿入股恒大 | 财经日日评

果然是高手!这次在日本,特朗普竹杠敲得不是一般狠

资深黄牛现身说法:iPhone X价格秒变不停,就像炒股一样

长一样的双胞胎也能识别?蚂蚁金服发布「眼纹识别」技术

苏联是怎么被阿富汗拖垮的?

美团或入局「分时租赁」共享汽车,王兴要大笔投入「泛出行」领域了? | 36氪独家

你或许被“一盘番茄炒蛋”刷屏了,但有人辛酸,有人质疑

iPhone X发售前夜,黄牛与苹果公司的不安

他的文章

我是如何执行 "rm -rf ~" 的

正态分布为什么常见?(财富的分布却不符合正态分布)

Linux下窗口管理器 xmonad 的使用教程

用披萨做比喻来解释 IaaS,PaaS,SaaS 的区别

如何制作CSR(证书私钥和证书请求文件)文件?

php RedisException with message read error on connection

Linux下ping丢包或不通时链路测试工具推荐

Windows环境下ping丢包或不通时链路测试工具推荐

链路测试结果分析说明及常见链路异常场景和测试报告

SSH 登录时出现如下错误:login: Module is unknown

手机扫一扫
分享文章