计算端口上传入连接的数量 – Linux

我们有一个侦听端口X的服务器。服务器有大量的客户端,有时会挂起进程,我在日志中看到SYN flooding消息。 我一直在试图调整相关的TCPconfiguration参数。

我想要一个方法来计数使用tcpdump或其他命令到特定端口的传入连接的数量。

Iptables可以logging连接,或者如果您愿意,可以使用--tcp-flags SYN选项来匹配syn数据包。

 iptables -A INPUT -p tcp -m tcp --dport <listenPort> \ -m state --state NEW -j LOG --log-prefix 'PORTMON' grep 'PORTMON' /var/log/messages 

netstat可以显示活动的连接(pipe to wc -l for counts):

 netstat -punta | grep <yourPort> 

或者只是使用tcpdump来检查stream量。

man tcpdump

你有没有考虑过使用networking监控解决scheme?

这不仅仅是获得连接到这个端口的数量,而是做的事情是价值太高了:比如设置和iptables规则来禁止IP,或者对你的手机发出警报。 正如在这个问题中所陈述的那样,您可以使用Pandora FMS的IPTraf插件来获取该指标,然后使用Pandora FMS的警报和报告function来做一些事情。