1、问题:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ 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 ED25519 key sent by the remote host is SHA256:TavOfv7DbCCPQpRvxct6dyAbJp3lY7EfMZUkRBQ+Jfo. Please contact your system administrator. Add correct host key in C:\\Users\\xx/.ssh/known_hosts to get rid of this message. Offending ECDSA key in C:\\Users\\xx/.ssh/known_hosts:8 Host key for 192.168.0.102 has changed and you have requested strict checking. Host key verification failed.
2、分析:
我们在使用SSH(安全外壳协议)连接到其他服务器时,可能会遇到一些诸如"REMOTE HOST IDENTIFICATION HAS CHANGED"之类的错误。该错误表示SSH服务器的主要标识已经改变,这可能是因为您的Ubuntu虚拟机已经被重新安装或者是SSH服务的主机密钥被重新生成。这个警告可以防止中间人攻击,因为当服务器的密钥发生变化时,SSH会阻止连接并显示这个警告。
3、解决方法:
步骤一:打开命令行终端
首先,我们需要打开命令行终端。在大多数系统中,我们可以通过快捷键Ctrl + Alt + T来快速打开命令行终端。
步骤二:删除known_hosts文件中的旧主机密钥
接下来,我们需要删除known_hosts文件中的旧主机密钥。请务必小心,不要删除任何错误的内容。在终端中运行以下命令:
ssh-keygen -R 192.168.1.103
务必将192.168.1.103替换为你的虚拟机的实际IP地址。
步骤三:重新连接
完成上述步骤后,你应该能够正常使用SSH来连接到你的虚拟机了。当你再次尝试SSH连接时,系统会提示你是否接受新的公钥。确认接受后,你应该就可以成功连接到SSH服务了。