将 tcpdump 与 iptables 一起使用?

将 tcpdump 与 iptables 一起使用?

我使用 iptables 来阻止对我的服务器的各种攻击。我们有一组不同的规则以及不同的速率限制规则。现在我还使用一个脚本,如果阈值大于 10mb/s,它会观察阈值并将所有数据包转储到一个文件中。此脚本在屏幕会话中始终运行,并使用以下命令进行转储:

tcpdump -nn -s0 -c 2000 -w Attack.cap
sleep 300

一旦受到攻击,它会等待 5 分钟来检查是否存在另一次攻击(睡眠 300)。现在我怀疑在数据包捕获过程中,iptables 是否仍然有效,因为在 /var/messages 中我看到了“eth0 进入混杂模式”和“eth0 离开混杂模式”等行,所以它可能会忽略 iptables?

答案1

http://en.wikipedia.org/wiki/Promiscuous_mode

在计算机网络中,混杂模式或 promisc 模式是有线网络接口控制器 (NIC) 或无线网络接口控制器 (WNIC) 的一种模式,它导致控制器将其接收到的所有流量传递到中央处理单元 (CPU),而不是仅传递控制器想要接收的帧。

这不能绕过任何类型的防火墙。

答案2

尝试使用命令

 tcpdump -i eth0 -p  nn -s0 -c 2000 -w Attack.cap

默认情况下,tcpdump将使接口处于混杂模式。就您的目的而言,我认为您不需要混杂模式。指定接口可防止tcpdump查找它,并可能获取错误的接口。

tcpdump在原始数据包进入防火墙之前抓取它们iptables,这样您将能够看到被防火墙丢弃或拒绝的数据包。

相关内容