Ich möchte mehr als 200 Anfragen pro IP fallen lassen, um ddos-Angriffe zu verhindern. Dies ist ein Befehl, mit dem ich die Anzahl der Anforderungen pro IP ermittelt habe:
netstat -alpn | grep :80 | awk '{print $5}' |awk -F: '{print $(NF-1)}' |sort | uniq -c | sort -nr
Jetzt möchte ich alle IP-Adressen, die mehr als 200 Anfragen in IPtables gestellt haben, zur DROP-Eingabe und Ausgabe hinzufügen.
networking
security
iptables
command-line-interface
Morteza Soltanabadiyan
quelle
quelle
Antworten:
Sie können auch iptables verwenden, um die Rate eingehender Verbindungen zu begrenzen. Wenn Sie beispielsweise nicht mehr als 200 Verbindungen pro Minute von einer Quelle möchten:
iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --set
iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --update --seconds 60 --hitcount 200 -j DROP
quelle
Sie können eine erstellen
ipset
. Auf diese Weise können Sie dem Satz beliebig viele IP-iptables
Adressen hinzufügen, ohne den Regelsatz zu ändern.Oder verwenden Sie in Ihrem Fall die Ausgabe Ihres Skripts und lesen Sie sie wie folgt:
Und die Referenz in Ihren
iptables
Regeln:Lesen Sie die Manpage für weitere Details und Optionen.
Es gibt auch andere Möglichkeiten, einen DDOS-Angriff direkt abzuschwächen
iptables
. Lesen Sie deniptables
Manpage-Abschnitt über dieconnlimit
undrecent
Module.quelle