如何调试不接受来自某些计算机的连接的服务器?


0

我有家用计算机A(mac)和B(Linux,Ubuntu 16.04)和服务器S(Linux,Ubuntu 16.04)。A可以通过ssh,http,telnet等正常连接到S。B 过去可以正常连接到S,但现在不再可以。从B到S的所有连接都超时。A和B都在同一个路由器后面,否则B的网络就可以完美使用。它可以SSH到其他服务器,并正常连接互联网而不会出现问题。

最初,我怀疑fail2ban可能阻塞了B,因为它可能连接得太频繁了。几天前重新启动了fail2ban之后,B能够连接到S,但只是偶尔出现。今天,即使在重新启动或停止了fail2ban之后,B除了ping之外也无法与S建立任何连接。

我检查了iptables中是否有阻止规则,但是规则列表为空。我在syslog,auth.log或faillog中看不到任何消息。

我从哪里开始寻找调试此问题的方法?Linux上的哪些服务处理阻止/接受传入连接?从B到S的连接是否可能被B阻塞?

刚才在测试时,我得到了从B到S的两个连接。在服务器上,我可以看到(通过iptables)这些通过了fail2ban而没有问题,因此我认为阻止不是来自fail2ban。在这两个之后,我再也无法从B连接到S。在此过程中,A可以毫无问题地连接到S。

此外,我尝试了C机,也是Linux ubuntu 16.04,它在今天之前从未连接到S,甚至无法获得连接,因此我认为阻塞不在客户端。

提前致谢!


1
通过重新启动将A和B连接到包含S的网络的路由器并不需要DNS(可能配置不正确)进行连接,消除不相关的因素。将完整内容附加iptables -nL到您的问题,也许在那里。
ANX

如果计算机ABC在同一路由器后面,则我猜它们具有与S相同的公用IP地址。我的猜测很可能是dropbear(或您使用的任何ssh服务器)+您的其他服务器可能会阻止来自同一IP地址的多个同时访问。
barrycarter
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.