发生了什么?
当我尝试从我的一个存储库中提取数据时,出现以下错误:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 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
SHA256:JusGXNrzFuQBPkLWthJ5pPjJQckIUe25VS0i1CMoszk.
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending key in /home/user/.ssh/known_hosts:1
RSA host key for ras.mydomain.com has changed and you have requested strict checking.
Host key verification failed.
我尝试做的
- 我谷歌了一下,他们建议直接移除主机并重新连接。我心存疑虑(小心为上),但我还是谨慎行事。
ssh-keygen -R github.com
从 中删除了 githubknown_hosts
。 - 好的,现在让我们测试一下连接,这是答案:
ssh -T [email protected]
The authenticity of host 'github.com (140.82.121.4)' can't be established.
ECDSA key fingerprint is SHA256:+QolW6mvi95EFAGeZpAjL2fOQ2rmB4uESAvNHE9IpFI.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
看起来指纹和他们身上的不一样网站。我可能把这件事复杂化了,而且我的存储库中也没有任何公司机密,但此时此刻,我很好奇我是否遗漏了什么,或者我的网络是否真的出了问题。
我的结论
在完成这个问题时,我突然想到检查一下如果我使用我的蜂窝设备进行身份验证会发生什么,果然,运行给出了不同的结果。ssh -T [email protected]
The authenticity of host 'github.com (140.82.121.3)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
这次,我得到的指纹与网站上的指纹相同,所以在我看来,这确实可能是中间人攻击。我家里有一个局域网,里面有一台 NAS 和几台电脑。我该怎么办?我该如何找到中间人?这背后还有其他解释吗?
编辑:
我找到了问题所在,但我仍然不明白为什么会发生这种情况。正如我提到的,我有一个 NAS,我用它来备份笔记本电脑上的数据。我使用 SFTP 来执行此操作,并且我从路由器上的端口 22 转发到 NAS。这就是导致此错误的原因,所以我更改了用于备份的端口。