rsync(WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED)

新手上路,请多包涵

使用rsync从本地windows上传到服务器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 a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:iJXElwhZcdrpkOVqFg0cF18PM23UQgA3lO3QPt1u/FA.
Please contact your system administrator.
Add correct host key in /home/mf/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/mf/.ssh/known_hosts:1
ECDSA host key for 123.57.3.18 has changed and you have requested strict checking.
Host key verification failed.
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.2]

阅读 2.2k
2 个回答

学好英文很重要……

错误提示说的很明白了,远程主机的验证信息发生了变化,具体来说就是 SSH 的公钥变了(因为你重装了,默认 sshd 会在启动时随机生成一个)。

出于安全考虑 ———— 原来你去一个地方找张三见面交流,发现张三是个男的,于是你记住这张脸了;过两天你再去这个地方找张三,结果出来个女的跟你说她就是张三,有啥事儿跟她说吧,你第一反应也得是之前的真张三是不是被劫持了啊 ———— ssh 阻止了你继续这么连接。

如果你想“清空记忆”,忘掉过去的张三长啥样,那么就按提示里的 Linux 下修改或删掉 /home/mf/.ssh/known_hosts(mf 是你的用户名);Windows 是在 C:/Users/mf/.ssh/konwn_hosts

但其实正确的做法是备份好自己的公私钥,重装以后也还继续用这个;然后定期更换它。

解决办法:清除公钥信息

ssh-keygen -R 服务器IP
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏