昨天,在启动hbase服务的时候,突然一个节点出现了:
ssh_exchange_identification:Connection closed by remote host。
改配置文件,改设置,无所不用其极,搞了半天还是没搞定。
根据不同的原因出现以上问题的情况是不一样的,现列举如下:
解决办法:
1.将/etc/hosts.allow 和/etc/hosts.deny里面的所有信息全部注释掉。重启SSH服务就可以了,执行命令:
systemctl restart sshd.service
但是,有时候修改之后,仍然会出现/etc/hosts.deny自动修改,ssh还是登录不了,此时需要检查denyhosts服务。
由于我用的是fedora20 ,在redhat系列的版本中,有一个denyhosts服务,会自动覆盖/etc/hosts.deny文件,在确认要登录的机器没有问题时,可以简单做如下处理:
/etc/init.d/denyhosts stop
2.如果第一步无法解决,那么就放心大胆的修改配置文件吧
服务器端核对/etc/hosts.deny and /etc/hosts.allow这2个文件
sudo vi /etc/hosts.allow
在hosts.allow文件中加入:
sshd: ALL
然后重启ssh服务,连接即可。
3.也有可能是因为ssh安装时的疏忽,缺少了依赖 glibc或openssl包
通过rpm -qa|grep openssh*命令可以看到如下内容:
openssh-clients-5.3p1-70.el6.i686
openssl-1.0.0-20.el6.i686
openssh-5.3p1-70.el6.i686
openssh-askpass-5.3p1-70.el6.i686
openssh-server-5.3p1-70.el6.i686
openssl-devel-1.0.0-20.el6.i686
一般情况下,安装以上这些包之后就不会出现问题了。执行以下命令即可:
sudo yum install openssh-server
4.key损坏
通过删除需要连接的远程端的~/.ssh/known_hosts文件来清除server端的记录,当然也可以重建服务器端的~/.ssh/authorized_keys
4.远端服务器连接数过多
当server受到攻击或大量连接也可能导致此错误,可以增加sshd的连接数量 请访问http://www.92wiki.com
缺省情况下,SSH终端连接数最大为10个。在这种情况下,需要改SSH的配置文件。
修改/etc/ssh/sshd_config中#MaxStartups 10,将其改为MaxStartups 1000
重启ssh服务,systemctl restart sshd.service
这里的数字不用太大,只要自己合适就好。