原文地址:http://blog.csdn.net/yasaken/article/details/7348441
在平时工作中,有时候需要SSH登陆到别的Linux主机上去,但有时候SSH登陆会被禁止,并弹出如下类似提示:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 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 is36:68:a6:e6:43:34:6b:82:d7:f4:df:1f:c2:e7:37:cc.Please contact your system administrator.Add correct host key in /u/xlian008/.ssh/known_hosts to get rid of this message.Offending key in /u/xlian008/.ssh/known_hosts:2RSA host key for 135.1.35.130 has changed and you have requested strict checking.Host key verification failed.
比较奇怪,于是研究了一下。
ssh会把你每个你访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts。当下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告, 避免你受到DNS Hijack之类的攻击。我在上面列出的情况,就是这种情况。
原因:一台主机上有多个Linux系统,会经常切换,那么这些系统使用同一ip,登录过一次后就会把ssh信息记录在本地的~/.ssh/known_hsots文件中,切换该系统后再用ssh访问这台主机就会出现冲突警告,需要手动删除修改known_hsots里面的内容。
有以下两个解决方案:
1. 手动删除修改known_hsots里面的内容;
2. 修改配置文件“~/.ssh/config”,加上这两行,重启服务器。
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
优缺点:
1. 需要每次手动删除文件内容,一些自动化脚本的无法运行(在SSH登陆时失败),但是安全性高;
2. SSH登陆时会忽略known_hsots的访问,但是安全性低;
分享到:
相关推荐
ssh_known_hosts, cookbook ssh_known_hosts的开发库 ssh_known_hosts-cookbook Chef向添加主机和密钥的/etc/ssh/ssh_known_hosts 文件公开资源和默认配方,已知主机的public 键的全局文件。使用键类型和ohai数据...
ssh_known_hosts 手册 默认配方基于使用rsa,dsa密钥类型和 ohai 数据的搜索索引构建/etc/ssh/ssh_known_hosts rsa,dsa或者当['ssh_known_hosts']['use_data_bag_cache']为true ,基于维护的数据包的内容由运行在工作...
ssh-信任主机方式,建立crt连接 实现从主机A直接 SSH 到主机B,C,无需密码 在LINUX配置主机信任时,对对端机(被免口令登录机器)的目录权限和文件权限相关说明:对端机的authorized_keys改为只有当前用户读取权限...
标题 "ansible-ssh_known_hosts:Ansible角色来管理etcsshssh_known_hosts" 指的是一个使用Ansible自动化工具来管理和配置Linux系统中`/etc/ssh/ssh_known_hosts`文件的角色。这个文件是SSH(Secure Shell)服务的一...
ssh_do all_list执行命令,需要修改脚本“node_list”和集群操作命令即可,执行样例如下:ssh ssh_do_all_list.sh "cat /etc/hosts
该模块将管理/etc/ssh/ssh_known_hosts和您为其配置的用户的~/.ssh/known_hosts 。 它将清除这些文件中的所有非托管条目。 这与sshkey资源不同,后者不清除条目,而仅管理系统范围内的已知主机。 设置 什么known_...
标题"SSH.rar_myeclipse ssh_ssh_ssh myeclipse_ssh2_ssh2 Myeclipse"表明这是一个关于SSH配置和MyEclipse集成的资源包,可能包含了SSH框架在MyEclipse中的配置教程,以及SSH2(更安全的SSH版本)的相关资料。...
标题中的"ssh.rar_java ssh_ssh_ssh 源码"可能指的是包含Java实现SSH功能的源代码压缩包。这个压缩包可能是为了帮助开发者理解和学习如何在Java项目中集成SSH功能,或者是提供一个可复用的SSH客户端或服务器端的代码...
固定资产管理系统SSH_JSP_MySql(源码+数据库sql+lun文+视频齐全)固定资产管理系统SSH_JSP_MySql(源码+数据库sql+lun文+视频齐全)固定资产管理系统SSH_JSP_MySql(源码+数据库sql+lun文+视频齐全)固定资产管理系统SSH_...
SSH_province_sql.rar_SSH_province_sql_ajax_dwr_ssh_ssh_ajax这个标题暗示了这是一个与SSH框架(Struts2、Spring、Hibernate)结合DWR(Direct Web Remoting)实现的项目,主要涉及到了省市县三级联动的数据处理,...
javaEE_SSH_MVC_MySql动漫论坛的设计与实现(源码+数据库sql+lun文+视频齐全)javaEE_SSH_MVC_MySql动漫论坛的设计与实现(源码+数据库sql+lun文+视频齐全)javaEE_SSH_MVC_MySql动漫论坛的设计与实现(源码+数据库sql+...
密钥 rmsshkey是一个实用程序,用于删除主机加密的~/.ssh/known_hosts以及它解析到的所有地址。 去做 实际上实现了主机的删除,目前它只是在加密的known_hosts中找到条目。
官方离线安装包,测试可用。请使用rpm -ivh [rpm完整包名] 进行安装
标题中的"ssh.rar_ext hiberna_ssh_ssh ext_swing_合同"表明这是一个关于SSH(Spring、Struts和Hibernate)框架集成、EXT Swing组件以及合同管理的项目。SSH是Java Web开发中常用的三个开源框架,它们在企业级应用...
在这个SSH示例中,"ssh_pom.xml"可能指定了项目所需SSH框架以及其他依赖库的版本,便于管理和构建项目。 至于"www.pudn.com.txt",这可能是一个文本文件,通常在开发过程中用来记录笔记、链接或其他参考资料。在本...
标题中的"SSH.zip_eclipse ssh_ssh_ssh eclipse"和描述中的"精通J2EE--Eclipse、Struts、Hibernate及Spring整合应用案例"暗示了本文档将深入探讨Java企业级开发中的一个重要集成框架——SSH(Struts、Spring和...
SSH_Test.rar_C ssh_C#ssh_C++ ssh_C++ SSH_libssh2库是一个针对C、C#和C++编程语言的SSH实现示例,特别提到了libssh2库的使用。在Visual Studio 2010环境下,这个压缩包提供了通过SSH进行文件上传的功能。接下来,...
javaEE_ssh.mvc_mysql_汽车销售系统(源码+数据库sql+论文)【JAVA】.zip javaEE_ssh.mvc_mysql_汽车销售系统(源码+数据库sql+论文)【JAVA】.zip javaEE_ssh.mvc_mysql_汽车销售系统(源码+数据库sql+论文)【JAVA】.zip...