1.背景
某天,因为安装某个软件,开发机器的ssh 免密登录被玩坏了,随后所有人都登录不上机器,导致系统必须重新安装。
2.问题现象
机器安装好后,重新设置ssh key 信任后,免密登录报错。
报错信息:
(base) [ywops@dev2-13 ~]$ ssh tdops@192.168.1.13
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 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:ZSZBbHPfTu183eJdaEs6sWmKjQ52GWygit81CPCOKYo.
Please contact your system administrator.
Add correct host key in /home/tdops/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/ywops/.ssh/known_hosts:4
ECDSA host key for 192.168.1.13 has changed and you have requested strict checking.
Host key verification failed.
3.原因分析
这个问题,以前遇到过。
大致的原因分析下:
1)机器13重装前,我们就建立过免密登录过。当我们第一次免密登录成功后,在我们本地.ssh/known_hosts 文件中记录了免密的凭证,我们把这个凭证叫做凭证A。
2)随后我们每次登录,都是用该凭证和远程13机器做认证。
3)但是机器重装后,我们再次免密登录,会带着旧的凭证A去访问13机器,显然不会成功,因为13机器已经重装了,新的系统无法认证下面的凭证了。
4)所以需要我们删掉旧的凭证,重新生成新的凭证,就可以了。
免密登录后本次known_hosts 文件中的凭证
192.168.1.13 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBLFv5ruInZQSrXKA8HFb/PomN1B0nFkLA4KMW/i/mrnlC956x0lSTbHa5NuJTTTqCOEjAfOfbYRfZw5JzjH5Beo=
4.解决方法
编辑本机的known_hosts,删掉旧的免密登录凭证,重新登录即可。
vim ~/.ssh/known_hosts
找到文件中 192.168.1.13 的那一行,删除掉,保存。
重新ssh user@192.168.1.13 机器,重新生成免密凭证,就可以了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)