it-swarm.com.de

Wie kann ich die Trefferanzahl für jede Regel in iptables überprüfen?

Ich möchte wissen, dass ich anhand der Zugriffsliste, die ich mit iptables erstellt habe, herausfinden kann, auf welche Regel wie oft zugegriffen wurde. 

Meine Firewall verfügt über mehr als 1000 Ein- und Ausgaberegeln in iptbales. Ich möchte herausfinden, auf wie viele von ihnen jeweils zugegriffen wurde.

Angenommen, ich habe die folgenden Regeln 

iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT

iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -o eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT

iptables -A INPUT -i eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -o eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT

Ich möchte herausfinden, wie oft die Regeln 1, 2, 3, 4, 5 und 6 getroffen wurden.

15
apps

iptables listet Paket- und Byte-Zähler auf, wenn Sie die Option -v für verbose angeben, z. iptables -vL. Ebenso listet iptables-save alle Einträge auf, einschließlich der erwähnten Zähler für jede Kette, jedoch nicht für jeden Tabelleneintrag (auf einigen Systemen erfordert iptables-save die Option -c, um Zähler einzuschließen).

21
scai

Ich verwende Folgendes, um meine iptables-Regeln zu überprüfen:

iptables -nvL [INPUT|FORWARD|OUTPUT|myCHAINNAME] --line-numbers | less

Das -n beschleunigt den Prozess, indem es keine Hostnamen-Suchvorgänge durchführt

Die Zeilennummern helfen beim Löschen von Regeln:

iptables -D [INPUT|FORWARD|OUTPUT|myCHAINNAME] [Rule#]

HTH

4
Bob Holden

Sie können auch das Modul collectds iptables verwenden, um die Zähler zu aggregieren:

https://collectd.org/wiki/index.php/Iptables

1
dothebart