I use iptables to block different kind of attacks on my server. We have a different set of rules along with different rate-limit rules. Now I also use a script that would observe the threshold if it were greater than 10mb/s and dump all the packets to a file. This script keeps running all the time in a screen session and uses the following command to dump:
tcpdump -nn -s0 -c 2000 -w Attack.cap
sleep 300
Once attacked, it waits 5 minutes to check for another attack (sleep 300). Now I doubt if during the packets capture process, iptables still work because in /var/messages I see lines like "eth0 entered promiscuous mode" and "eth0 left promiscuous mode" so it might over-look iptables?
http://en.wikipedia.org/wiki/Promiscuous_mode
This does not bypass any kind of firewall.
Try using the command
By default
tcpdump
will put the interface into promiscuous mode. For your purposes, I don't believe you need promiscuous mode for what you are doing. Specifying the inteface preventstcpdump
from looking for it, and possibly getting the wrong interface.tcpdump
grabs the raw packets before they get firewalled byiptables
, so you will be able to see packets that get dropped or rejected by the firewall.