WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

项目场景:

a电脑ssh连接局域网内另一台ubuntu20.04电脑b。

a电脑系统:ubuntu20.04

b电脑系统:ubuntu20.04


问题描述

远程连接命令:ssh m@192.168.0.108

a电脑终端报错如下:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    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:QSvBy9Hf/oL7GWe75JzVGWm8dP9HfYBq+m7WJcguNzs.
Please contact your system administrator.
Add correct host key in /home/ros2/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/ros2/.ssh/known_hosts:3
  remove with:
  ssh-keygen -f "/home/ros2/.ssh/known_hosts" -R "192.168.0.108"
ECDSA host key for 192.168.0.108 has changed and you have requested strict checking.
Host key verification failed.

原因分析:

b电脑最近重装了系统和ssh服务,导致公钥发生改变。

WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
翻译过来就是
警告:远程主机标识已更改!

ssh服务是通过公钥和私钥来进行连接的,它会把每个曾经访问过计算机或服务器的公钥,记录在~/.ssh/known_hosts 中,当下次访问曾经访问过的计算机或服务器时,ssh就会核对公钥,如果和上次记录的不同,OpenSSH会发出警告。


解决方案:

1 稳妥方法,对于比较重要的电脑,重命名 known_hosts,重命名后的文件在系统里面已经不再起作用,但是相当于给原文件作了备份,如果需要可以随时还原回来,命令 :

mv ~/.ssh/known_hosts ~/.ssh/known_hosts1

2 简单方法,学习或者玩的不重要的电脑,直接删除known_hosts,这个文件重新ssh连接主机会再次自动生成。

重新打开终端ssh远程连接:

ssh m@192.168.0.108

 输入yes

就又可以ssh远程连接了。

为了学习你也可以重新进入著目录.ssh文件夹,这个文件夹默认是隐藏的,看不到的话摁ctrl+h,隐藏文件就可见了。你可以看到known_hosts文件又自动生成了。

 多的那个known_hosts1不起作用,只是作为一个备份留在了文件夹里面。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值