ssh会把你每个你访问过计算机的公钥(public key)都记录在~/ .ssh/known_hosts。当下次访问相同计算机时,OpensSSH会核对公钥。如果公钥不同,openSSH会发出警告,避免你受到DNSHijack之类的攻击。
解决办法:
1.使用ssh连接远程主机时加上"-o strictHostKeyChecking=no"的选项,如下:
ssh -o StrictHostKeyChecking=no 192.168 . XXX.XXX
2.一个彻底去掉这个提示的方法是,修改/etc/ssh/ssh_config文件(或$HONE/ .ssh/config)中的配置,添加如下两行配置:
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
原因:一台主机上有多个Linux系统,会经常切换,那么这些系统使用同一ip,登录过一次后就会把ssh信息记录在本地的~/ .ssh/known_hsots文件中,切换该系统后再用ssh访问这台主机就会出现冲突警告,需要手动删除修改known_hsots里面的内容。