2013-07-09 9 views
10

Ich möchte wissen, ich kann herausfinden, welche Regel zugegriffen wurde, und wie oft, aus der Zugriffsliste, die ich mit iptables erstellt habe.Wie kann ich die Trefferanzahl für jede Regel in iptables überprüfen?

Meine Firewall hat über 1000 Ein- und Ausgabe-Regeln in iptbales; Ich möchte herausfinden, auf wie viele von ihnen zugegriffen wurde.

Beispiel: 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 jede der Regeln 1, 2, 3, 4, 5 und 6 getroffen wurden.

Antwort

14

iptables listet Paket- und Bytezähler auf, wenn Sie die Option -v für ausführliche, z. iptables -vL. Gleichermaßen listet iptables-save alle Einträge einschließlich der erwähnten Zähler für jede Kette auf, aber nicht für jeden Tabelleneintrag (auf einigen Systemen benötigt iptables-save die Option -c, um Zähler einzuschließen).

+0

Ich habe auch bemerkt, dass die Option und ausgeführt es und dachte, seine falsch als anythign erwarten nicht Regeln zeigt .. Merkwürdige ist, dass seine zeigt 0 Pakete und 0 Byte auf allen Regeln. Dieser Server wird als Linux-Firewall verwendet und es gibt fast 20 Server dahinter und alles funktioniert gut, aber es gibt kein Paket oder Byte, das einer INPUT- oder OUTPUT-Kette entspricht? Mache ich etwas falsch ? – apps

+0

ohh etwas ist da, als ich mit offenen Augen schaute ': EINGABE DROP [0: 0]: VORAUS AKZEPTIEREN [74684295: 91842276117]: AUSGABE DROP [0: 0]: LOGGING - [0: 0]' – apps

+0

So Ihre Weiterleitungskette hat insgesamt 74684295 Pakete und insgesamt 91842276117 Bytes. – scai

4

Ich verwende die folgenden auf meine iptables-Regeln zu überprüfen:

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

Die -n beschleunigt den Prozess Hostnamen-Lookups werden nicht ausgeführt

Die Zeilennummern helfen beim Löschen von Regeln:

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

HTH