Um Brute-Force-Angriffe gegen ssh zu verhindern, habe ich einige Iptables-Regeln hinzugefügt ( siehe unten). Die Frage ist: Wie kann ich die gesperrten IP-Adressen auflisten?
(1)
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 8 --rttl --name SSH -j DROP
iptables -L INPUT -v -n
zeigt alle blockierten ipAntworten:
Eine Möglichkeit wäre, Ihre verworfenen Pakete mit einer Regel wie der folgenden zu protokollieren:
Fügen Sie das direkt vor der
DROP
Regel ein. Anschließend können Sie die Syslog-Datei nach "FW_DROPPED" durchsuchen, und die Liste der IP-Adressen wird angezeigt. Die Einträge in der Protokolldatei sehen ungefähr so aus:Wenn Sie also "SRC =" ausschneiden, werden die verworfenen IPs angezeigt. Sortieren Sie das, indem Sie doppelte Einträge entfernen, und Sie haben Ihre Liste.
Ich habe festgestellt, dass das Iptables-Tutorial die nützlichste Dokumentation für iptables / netfilter ist.
quelle
Details finden Sie unter / proc / net / ipt_recent / SSH.
Dieser Artikel enthält weitere Informationen.
quelle
Ansehen
/proc/net/ipt_recent/YOURNAME
Dabei ist IHR NAME der Name, den Sie mit der Option --name in Ihrer iptables-Regel verwendet haben.
quelle
/proc/net/xt_recent/[list-name]
Hier ist ein einfacher Einzeiler:
quelle
Was ich zum Beispiel für das Spoofing von Eingabeadressen tue, ist die Definition der Kette
SPOOF_REJECT
:dann, um Pakete an diese Kette zu senden, wenn sie gefälscht sind:
Sie können für jede Kategorie von Paketen, die Sie verwerfen oder ablehnen, so etwas tun, um eine Zeile im Syslog zu suchen, und dann regelmäßig nach IP-Adressen aus diesen Protokollzeilen suchen, diese ausschneiden und sortieren.
Die Verwendung einzelner Ketten für jede Kategorie hat den Vorteil, dass Ihre Konfiguration übersichtlicher und das Lesen Ihrer
iptables
Konfiguration einfacher wird . Wenn Sie mehr und mehr Regeln hinzufügen, werden Sie froh sein, dass Sie einzelne Ketten für bestimmte unterschiedliche Aktionen verwendet haben.quelle
"Die Frage ist: Wie kann ich die gesperrten IP-Adressen auflisten?"
Erstellen Sie eine BANNED-Kette:
Erstellen Sie eine Protokollierungskette:
Fügen Sie vor den meisten anderen Regeln einen Sprung zu einer gesperrten Kette in der INPUT-Kette hinzu
Fügen Sie nun die IP-Adressen zur gesperrten Kette hinzu:
Sie können es auch wie eine Datenbank mit den Kommentaroptionen verwenden, damit Sie wissen, wann und warum usw. Flock ist wichtig, wenn iptables von vielen Prozessen häufig aktualisiert wird - es scheint, dass in iptables keine Sperre eingebaut ist.
So zeigen Sie die gesperrten Adressen und Regeln in der gesperrten Kette an:
So zeigen Sie nur sortierte eindeutige IP-Adressen an:
Auf meinen Servern werden eine Reihe von Daemons ausgeführt, die die Syslog-Dateien und Weblogs prüfen. Wenn also jemand einen bösen Versuch unternimmt, wird die Adresse je nach Art und Schweregrad und Anzahl der vorherigen Angriffe für einige Tage automatisch gesperrt. Die Informationen werden in einer MySQL-Datenbank angemeldet und sind regelmäßig abgelaufen. Die Adressen werden auch über die MySQL-Replikation an alle anderen Computer im Cluster verteilt, damit sie auch geschützt sind und synchron bleiben. Meine Software sucht auch den Besitzer des Netzwerks und schickt eine Beschwerde an den ISP.
Nach 10 Jahren Arbeit hoffe ich, dass es bald allen zur Verfügung steht. Derzeit habe ich ungefähr 1,5 Millionen IP-Adressen und Hunderttausende von E-Mail- und SSH-Angriffen gemeldet, die zur Bereinigung des Netzes beitragen. Wenn mehr es benutzen würden, dann hoffe ich, dass es mehr Auswirkungen haben würde.
quelle