计算 CentOS 中应用程序的传出 TCP 连接数(按域过滤)

计算 CentOS 中应用程序的传出 TCP 连接数(按域过滤)

如何计算 Linux 机器(特别是 centOS)中到某个域的传出 TCP(也可能是 UDP)连接数。

答案1

最简单的方式是使用 iptables

例如,下面的规则将记录到 /var/log/messages(实际上,它取决于将消息记录到的 rsyslog.conf 或 syslog.conf)所有访问 192.168.0.1

-A OUTPUT -d 192.168.0.1 -j LOG --log-level 1 --log-prefix local_access

/var/log/messages 中的内容如下

Oct 30 06:37:39 ip-10-230-3-20 kernel: local_accessIN= OUT=eth0 SRC=10.230.3.20 DST=192.168.0.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=62738 SEQ=8

如果你还需要一些额外的信息,例如启动此连接的进程 ID,则需要通过以下任一方式完成

答案2

如果每个域都有单独的用户,则可以设置 iptables 来记录传出连接并在之后解析日志。

相关内容