本文概述
- A.手动删除有问题的密钥
- B.使用ssh-agent
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@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 isXX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XXPlease contact your system administrator.Add correct host key in /root/.ssh/known_hosts to get rid of this message.Offending key in /root/.ssh/known_hosts:5RSA host key for [192.xxx.xx.xx]:22 has changed and you have requested strict checking.Host key verification failed.
【如何修复SSH主机密钥验证失败,警告(Ubuntu 18.04中的远程主机标识已更改)】造成此问题的原因是, 你正在连接到以前连接过的服务器, 但是自上次连接以来其RSA主机已更改(我使用Ubuntu 16.04连接到服务器的第一个版本, 然后尝试连接到该服务器)与Ubuntu 18.04相同的服务器, 但出现异常)。为了防止任何安全漏洞, 你需要从本地计算机的known_hosts文件中删除此密钥, 以便正确连接。
A.手动删除有问题的密钥好了, 只要你不必担心每次连接到某个服务器时都必须确认指纹有效, 则删除known_hosts文件是一种有效的解决方案, 因此不要删除known_hosts文件。最简单的解决方案是简单地删除文件中有问题的行, 在本例中, 异常消息警告我们有问题的密钥在第5行中:
Add correct host key in /root/.ssh/known_hosts to get rid of this message.Offending key in /root/.ssh/known_hosts:5
因此, 你只需要使用以下单个命令删除该行(用行号替换5):
sed -i '5d' ~/.ssh/known_hosts
就是这样。或者, 使用诸如nano或vim之类的终端编辑器来修改known_hosts文件, 并自行删除该行。
B.使用ssh-agent另外, 如果你知道主机名/ ip, 则可以使用ssh-keygen工具简单地删除有问题的密钥:
ssh-keygen -R <
SERVER_IP_OR_HOSTNAME>
-f ~/.ssh/known_hosts
这也应该能很好地消除警告显示在终端中。
编码愉快??!
推荐阅读
- 如何使用Java以编程方式打开Android设置
- Boostnote(适用于台式机和移动设备的开源笔记记录应用)
- 一图解密百TB数据分析如何跑进45秒
- flink sql 知其所以然| sourcesink 原理
- Veeam实现MySQL的备份与还原
- Hbase写数据,存数据,读数据的详细过程
- 如何远程调试自定义开发的Flume应用
- 跟我学k8s(Deployment 控制器)
- Hive优化