好的,上个星期才刚刚开始 –
每当我们尝试通过ssh连接到我们的服务器(我们也使用sftp) – 连接超时。
但是,当你SSH到任何其他服务器,然后ssh进入机器 – 它的工作完美无瑕。
现在,令人头疼的事情是有时 ssh连接会成功。
过了一会儿,我从另一台机器上试了一下,然后自己试了一下,结果还是有效的 – 只有等到下一个时间了。
上个星期,简单地重新启动ssh守护进程,但是这个星期没有这样的运气。 我甚至进去了,改变了:
/etc/hosts.allow ALL : ALL
和
/etc/hosts.deny
是空白的。
防火墙的configuration没有改变 – 但是我甚至closures了防火墙,看看是否可以工作 – 在切断之前,它已经有一段时间了。 (ufw设置为“允许”而不是“限制”)
当我尝试从我的手机SSH'ing – 它的工作,很好 –
所以,似乎问题是与我们的ISP /路由器/网关 – 但是,我看不到login路由器/网关,说它阻止我们的连接 –
这并不能解释为什么我们可以通过我们的networking进入任何其他服务器 – 除了这个 –
我真的很感谢任何人在这个问题上可能有的洞察力 –
我知道这种行为的一个原因是fail2ban 。 当在特定的时间范围内看到太多错误的login时,该程序将阻止SSH访问。 这可以是密码login和基于密钥的login。 在指定的时间之后,IP地址再次被解除阻塞。
检查您的服务器是否安装了fail2ban ,如果检查您的日志是否列入黑名单操作。 如果fail2ban正在阻止你的主机,你应该能够检查你的authentication日志哪个用户/密钥导致这些问题。 fail2ban支持IP白名单,所以你可以防止被信任的IP被列入黑名单。
当DNS间歇性地或缓慢地解决时,我已经发生了这种情况。
检查在服务器端的/etc/resolv.conf中是否有有效的名称服务器,并且nslookup或dig客户端IP会在不超时的情况下parsing名称。
您甚至可以通过在服务器主机文件中添加一个条目到/ etc / hosts来连接从中连接的计算机的IP和主机名。