SSH 连接超时,除非我从其他服务器建立隧道 -

SSH 连接超时,除非我从其他服务器建立隧道 -

好的,这是上周才开始的——

每当我们尝试通过 ssh 连接到我们的服务器时(我们也使用 sftp) - 连接就会超时。

但是,当您 ssh 到任何其他服务器,然后 ssh 进入该机器时 - 它可以完美运行。

现在,令人难以置信的是有时ssh 连接将会成功。

几分钟之前,我尝试在另一台机器上执行该操作,然后又在自己的机器上执行该操作,并且成功了 - 但下一次尝试时就超时了。

上周,只需重新启动 ssh 守护程序即可,但这周,运气不佳。我甚至进入并更改了:

/etc/hosts.allow 

ALL : ALL

/etc/hosts.deny 

是空白的。

防火墙配置没有改变 - 但我甚至禁用了防火墙以查看它是否有效 - 它确实有效了一会儿 - 然后又切断了。(ufw 设置为“ALLOW”而不是“LIMIT”)

当我尝试用手机 SSH 登录时——一切正常——

因此,问题似乎出在我们的 ISP/路由器/网关上 - 但是,我没有在路由器/网关上看到任何日志表明它阻止了我们的连接 -

这也不能解释为什么我们可以通过 SSH 进入任何其他服务器-- 除了这一个 - 来自我们的网络 ---

我真的很感激任何人对此事的见解 -

答案1

我知道导致此行为的一个原因是fail2ban。当在特定时间段内发现太多错误登录时,此程序会阻止 SSH 访问。这可以是密码登录,也可以是基于密钥的登录。在指定时间后,IP 地址将再次解除阻止。

检查您的服务器是否fail2ban已安装,如果已安装,请检查您的日志以查看黑名单操作。如果 fail2ban 时不时地阻止您的主机,您应该能够在您的身份验证日志中检查哪个用户/密钥导致了这些问题。fail2ban 支持 IP 白名单,因此您可以防止受信任的 IP 被列入黑名单。

答案2

当 DNS 解析间歇性或缓慢时,我就遇到过这种情况。

检查服务器端的 /etc/resolv.conf 中是否有有效的名称服务器,以及客户端 IP 上的nslookupdig是否可以解析名称而不会超时。

您甚至可以通过在服务器主机文件中添加用于连接的机器的 IP 和主机名的条目来测试 /etc/hosts。

相关内容