ssh远程登录报错:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED

参考:
https://blog.csdn.net/qq_36441027/article/details/81708726
https://www.cnblogs.com/liuyanerfly/p/9668426.html

问题的现象

我在本机(10.191.30.99)使用ssh登录其他服务器时,比如ssh 192.168.5.1(目的主机),出现了如下报错:(图借用参考1的博客)
在这里插入图片描述
错误:192.168.5.1(目的主机)的ECDSA主机密钥已更改,由于目的主机密钥指纹信息是和本机(10.191.30.99)保存过的密钥指纹信息不一致,导致验证无法通过,因此ssh 192.168.5.1失败了。

导致问题的原因

这主要是因为每次在10.191.30.99(本机)使用命令:ssh ip时,比如在10.191.30.99 (本机)上输入ssh 192.168.5.1(目的主机),会在第一次登录目的主机时,将目的主机的公钥(public key)保存在本机的~/.ssh/known_hosts文件中。当下次在本机使用ssh访问相同的目的主机时,OpenSSH会将目的主机的公钥与保存在本机的目的主机的公钥(即本机的文件/.ssh/known_hosts)进行匹配。如果公钥不同,OpenSSH会发出警告, 导致ssh登录失败。

解决方法

正是由于目的主机的公钥发生了改变,因此我们也需要在本机的~/.ssh/known_hosts文件中更新目的主机的公钥。方法如下:

vim ~/.ssh/known_hosts
# 打开文件后,使用目的主机的ip或者hostname,如:mange-dev-1,进行搜索 
# 找到目的主机的公钥信息后,删除

此时我们再使用ssh 192.168.5.1即可成功,如果需要输入密码,输入正确的密码即可。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值