我有一台邮件服务器,Debian Linux 2.4.31,它正在断开 TCP 连接,基本上无法使用。我在其上运行了 iptables,它非常严格。
当我运行“netstat -tanp|wc -l”时,我得到了 366,而“cat /proc/net/ip_conntrack | wc -l”给了我 124172,因为我增加了 /proc/sys/net/ipv4/ip_conntrack_max,因为我会在 dmesg 输出中看到“ip_conntrack:表已满,丢弃数据包。”,是的,尽管我确实增加了最大值,但我仍然看到这些。
我会/应该启用 tcp syn cookies,但由于某些奇怪的原因,内核是在没有它的情况下编译的,因此如果不重新编译它,我就无法继续。
我只是想知道这些症状是否描述了 DDOS,因此我会继续添加 tcp_syn_cookies。
谢谢。
答案1
真正了解的唯一方法是检查传入的流量。tcpdump
在一段时间内使用外部接口进行网络捕获。
tcpdump -s 1500 -w <filename>.pcap -i <interface>
当您认为已经捕获了足够的数据时,请将其保存下来。然后最好将 pcap 文件复制到具有 GUI 的机器上,并使用Wireshark。
这应该能让你很好地了解下一步该从哪里开始。你很可能不是在处理 DDOS 之类的问题,而是在处理大量垃圾邮件或端口扫描。
答案2
netstat -antp 连接的状态如何?
我猜你的连接不知怎么地卡住了,并且条目一直保留到发送 RST 数据包为止,如果在你和访问你服务器的客户端之间的某个地方有一个不稳定的网络,则会导致某些数据包被丢弃,并且你的表格将被填满。
最好检查条目并尝试找出未正确关闭的连接的模式。
这也可能是由于您的 NIC 某种程度上损坏了而发生的。