我在 OpenSuSE 11.3 上运行 iptables 防火墙 - 最近我对流量监控和统计产生了兴趣,为此在防火墙上安装了 iptables_netflow 模块,并在另一台服务器上安装了 WANGuard 平台。iptables_netflow 模块已构建并安装,并正在聚合数据;我可以看到 /proc/slabinfo 和 /proc/net/stat/ipt_netflow 中的统计信息变化。WANGuard 已配置并运行,因为我让 WANGuard 将 netflow 数据导出到其中一段时间以确保它正常工作。但是,我无法将 netflow 导出到防火墙到 WANGuard 服务器。我的 iptables 配置会阻止它吗?iptables_netflow 在 UDP 端口 2055 上导出。iptables -L -n 的输出(在防火墙上)
Chain INPUT (policy ACCEPT)
target prot opt source destination
NETFLOW all -- 0.0.0.0/0 0.0.0.0/0 NETFLOW
FW-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy ACCEPT)
target prot opt source destination
NETFLOW all -- 0.0.0.0/0 0.0.0.0/0 NETFLOW
ACCEPT all -- 192.168.3.0/24 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 255
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
NETFLOW all -- 0.0.0.0/0 0.0.0.0/0 NETFLOW
Chain FW-1-INPUT (1 references)
target prot opt source destination
NETFLOW all -- 0.0.0.0/0 0.0.0.0/0 NETFLOW
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT udp -- 192.168.3.0/24 0.0.0.0/0 udp dpt:161
ACCEPT tcp -- 192.168.3.0/24 0.0.0.0/0 tcp dpt:161
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 255
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:7788
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:694
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:68
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:1194
ACCEPT tcp -- xx.xx.xx.xx 0.0.0.0/0 tcp dpt:5666
ACCEPT tcp -- xx.xx.xx.xx 0.0.0.0/0 tcp dpt:5666
ACCEPT udp -- xx.xx.xx.xx 0.0.0.0/0 udp dpt:123
ACCEPT udp -- xx.xx.xx.xx 0.0.0.0/0 udp dpt:123
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp multiport dports 4569,5060
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp multiport dports 4569,5060
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
我在 OUTPUT 表中尝试了几条指定源/目标主机和端口的规则,但是没有成功。
有不WANGuard 服务器上的 iptables 规则。
在防火墙上使用 tcpdump 并查找 WANGuard 服务器的 IP,结果如下:
openvpn01:/home/gjones # tcpdump -i eth0 |grep 192.168.3.194
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
13:27:57.103687 IP openvpn01.dev.59531 > 192.168.3.194.iop: UDP, length 1464
13:27:57.302686 IP openvpn01.dev.59531 > 192.168.3.194.iop: UDP, length 1464
13:27:57.802683 IP openvpn01.dev.59531 > 192.168.3.194.iop: UDP, length 1464
13:27:58.503707 IP openvpn01.dev.59531 > 192.168.3.194.iop: UDP, length 1464
13:27:59.103688 IP openvpn01.dev.59531 > 192.168.3.194.iop: UDP, length 1464
在防火墙上,我运行“netstat -na”并查找“2055”(netflow 目标端口)
udp 0 0 192.168.3.112:59531 192.168.3.194:2055 ESTABLISHED
在 WANGuard 服务器上,我执行相同的操作:
# netstat -na |grep 2055
udp 0 0 192.168.3.194:51139 192.168.3.194:2055 ESTABLISHED
udp 0 0 192.168.3.194:2055 0.0.0.0:*
根据 Gaumire 的要求,这里还有“netstat -uan”
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 192.168.3.194:51139 192.168.3.194:2055 ESTABLISHED
udp 0 0 192.168.3.194:2055 0.0.0.0:*
udp 0 0 0.0.0.0:111 0.0.0.0:*
udp 0 0 192.168.3.194:123 0.0.0.0:*
udp 0 0 127.0.0.2:123 0.0.0.0:*
udp 0 0 127.0.0.1:123 0.0.0.0:*
udp 0 0 0.0.0.0:123 0.0.0.0:*
udp 0 0 0.0.0.0:161 0.0.0.0:*
udp 0 0 0.0.0.0:631 0.0.0.0:*
udp 0 0 0.0.0.0:851 0.0.0.0:*
udp 0 0 :::111 :::*
udp 0 0 ::1:123 :::*
udp 0 0 fe80::2a0:d1ff:fee1:123 :::*
udp 0 0 :::123 :::*
udp 0 0 :::851 :::*
请注意,我还在 WANGuard 服务器上配置了 netflow 导出器,它似乎可以工作(我在 WANGuard 中获取数据)。
检查 WANGuard 的日志时,我看到错误“意外的 PDU:src_ip=192.168.3.112 未配置”Google 没有找到任何我能找到的信息。
有人能帮我找出错误出在哪里吗?
谢谢,
肯德尔
答案1
openvpn01.dev 和主机 192.168.3.194 之间是否有防火墙或类似设备? ...
您提到的服务是否在服务器上运行。请以 root 身份发出以下命令。
#netstat -tupan | grep 'LIST\|*'
答案2
要检查 iptables 配置是否阻塞,通常建议暂时禁用 iptables(当然 NETFLOW 规则除外)。还要检查,dmesg
因为可能有重要的内核/模块消息。旧版本的 NETFLOW 模块应该sysctl net.netflow.destination
设置后接口处于 UP 状态。尝试设置目的地手动检查。或者尝试最新的模块版本来自git 仓库(不是来自 tar.gz)。检查模块统计信息以cat /proc/net/stat/ipt_netflow
查找丢失的流量或套接字错误。