Wie lange dauert eine blockierte Verbindung von Iptables? Gibt es eine Möglichkeit, das Timeout einzustellen?

Wie lange dauert eine blockierte Verbindung von Iptables? Gibt es eine Möglichkeit, das Timeout einzustellen?
iptables -A INPUT -m state --state NEW -m recent --set                  # If we receive more than 10 connections in 10 seconds block our friend.
iptables -A INPUT -m state --state NEW -m recent --update --seconds 5  --hitcount 15 -j Log-N-Drop

Ich habe diese beiden relevanten Regeln von iptables. Wenn mehr als 15 Verbindungen in 5 Sekunden hergestellt werden, wird der Versuch protokolliert und blockiert. Wie lange hält iptables den Zähler aufrecht? Wird er aktualisiert, wenn erneut versucht wird, Verbindungen herzustellen?

Antwort1

Wenn innerhalb von fünf Sekunden mehr als 15 Verbindungen hergestellt werden, werden deren Verbindungen bis fünf Sekunden nach dem Empfang des letzten Pakets abgelehnt.

Antwort2

Sie können Hilfe zu diesem Modul erhalten, indem Sie Folgendes ausführen iptables -m recent --help:

Die wichtigsten Optionen im Zusammenhang mit Ihrer Frage sind:

[!] --update                    Match if source address in list, also update last-seen time.

Ich verstehe also, dass mit --update eine Aktualisierung erfolgt, aber Sie benötigen diese Aktualisierung vor dem Löschen. Wenn dies also zuerst geschieht, läuft es ab. Die Beispiele auf derAutorenseitekönnte auch helfen. Außerdem kommt der folgende Modulparameter ins Spiel, wenn weitere IPs kommen:

ip_list_tot=100 ; Anzahl der pro Tabelle gespeicherten Adressen

Edit: Ehrlich gesagt bin ich, wenn ich genauer darüber nachdenke, etwas verwirrt über all die möglichen Szenarien. Ich würde das ausführlich testen, indem ich verschiedene Quell-IP-Adressen mit etwas wie scapy für fping erstelle. Der folgende Modulparameter könnte auch hilfreich sein:

debug=0 ; Set to 1 to get lots of debugging info

Vielleicht hat jemand eine bessere Antwort, der mit den Optionen experimentiert hat, tut mir leid :-/

verwandte Informationen