Bereich von IP-Adressen blockieren

48

Ich werde mit versuchten Hacks aus China mit ähnlichen IPs bombardiert.

Wie würde ich den IP-Bereich mit etwas wie 116.10.191. * Etc. blockieren

Ich verwende Ubuntu Server 13.10.

Die aktuelle Leitung, die ich benutze, ist:

sudo /sbin/iptables -A INPUT -s 116.10.191.207 -j DROP

Dadurch kann ich jeweils nur einen Block blockieren, aber die Hacker ändern die IP-Adressen bei jedem Versuch.

Stephen Cioffi
quelle
4
Sie sollten einen Blick auf fail2ban werfen. Es ist wirklich gut darin, lästige IP-Adressen dynamisch zu verbannen.
user9517 unterstützt GoFundMonica
Ich möchte auch knockd hinzufügen, um praktisch 100% der fehlgeschlagenen Zugriffsversuche aus meinen Protokollen zu entfernen. help.ubuntu.com/community/PortKnocking
Bruno Bronosky
pam_shield könnte hier hilfreich sein. github.com/jtniehof/pam_shield
Daniel

Antworten:

86

So blockieren Sie 116.10.191. * -Adressen:

$ sudo iptables -A INPUT -s 116.10.191.0/24 -j DROP

So blockieren Sie 116.10. *. * -Adressen:

$ sudo iptables -A INPUT -s 116.10.0.0/16 -j DROP

So blockieren Sie 116. *. *. * -Adressen:

$ sudo iptables -A INPUT -s 116.0.0.0/8 -j DROP

Aber seien Sie vorsichtig, was Sie mit dieser Methode blockieren. Sie möchten nicht verhindern, dass legitimer Datenverkehr den Host erreicht.

edit : Wie bereits erwähnt, wertet iptables die Regeln in sequenzieller Reihenfolge aus. Regeln, die im Regelsatz höher sind, werden vor Regeln angewendet, die im Regelsatz niedriger sind. Wenn es in Ihrem Regelsatz also eine Regel gibt, die den Verkehr zulässt, führt das Anhängen ( iptables -A) der DROP-Regel nicht zum beabsichtigten Blockierungsergebnis. In diesem Fall fügen Sie ( iptables -I) die Regel ein:

  • als erste Regel

sudo iptables -I ...

  • oder vor der Erlaubnisregel

sudo iptables --line-numbers -vnL

Angenommen, Regel Nummer 3 lässt SSH-Verkehr zu, und Sie möchten SSH für einen IP-Bereich blockieren. -INimmt ein Argument einer Ganzzahl, die der Position in Ihrem Regelsatz entspricht, an der die neue Regel eingefügt werden soll

iptables -I 2 ...

Bach
quelle
Überprüfen Sie arin.net und blockieren Sie die gesamte Palette der IP-Bereiche in Amsterdam . Dieser Ort ist RIPE mit prüfenden Spinnen - ich bezweifle, dass dort legitimer Verkehr herauskommt.
WEBjuju
Beachten Sie, dass dies abhängig von der Reihenfolge der iptable-Regeln möglicherweise nicht funktioniert. Weitere Informationen finden Sie unter answer serverfault.com/a/507502/1
Jeff Atwood
2
o snap @ JeffAtwood Ich bin von Ihrem Kommentar geehrt. Antwort aktualisiert;)
Creek
Und wie entsperren Sie einen bestimmten Bereich?
bzero
11

sudo /sbin/iptables -A INPUT -s 116.10.191.0/24 -j DROP

Dies blockiert den Bereich. Sie können das Subnetz nach Bedarf mit demselben allgemeinen Format erweitern.

Nathan C
quelle
Funktioniert dies auf der gesamten 4. Reihe? Wie ist die 0/24 nur 0-24. Ich habe zum Beispiel 500 ausprobiert, aber es hat nicht funktioniert. Will 0/24 decken all diese anderen Zahlen in den 100er und 200er Jahren
Stephen Cioffi
3
@Stephen Es ist ein CIDR-Bereich. Wenn Sie es für einen anderen Bereich berechnen müssen, verwenden Sie Folgendes
Nathan C
4

Alternativ können Sie auch einen so einfachen Ansatz wie fail2ban verwenden. Es führt zu einer Zeitüberschreitung für aufeinanderfolgende fehlgeschlagene Anmeldeversuche und macht Bruteforcing unmöglich, da sie nur wenige Chancen pro Zeitüberschreitung haben. Ich setze meine Auszeit auf 30 Minuten. Mit ein oder zwei Stunden wird ihnen klar, dass sie keine Fortschritte mehr machen und aufgeben können.

temet
quelle
Das Sperren ganzer Länder kann auch die autorisierte Verwendung verhindern.
Esa Jokinen
Mir ist klar, dass dieser Thread über ein Jahr alt ist, aber ich wollte den Leuten etwas mitteilen. Ich habe fail2ban installiert und lauffähig, überprüfe aber auch regelmäßig meine Serverprotokolle. Es gibt diesen IP-Bereich 89.248.x.x, der ungefähr eine Stunde nach dem letzten Versuch im Laufe des Tages verschiedene E-Mail-Anmeldungen versucht. Anscheinend findtimereicht es nicht mehr aus , das in fail2ban auf 30 Minuten zu beschränken, um jeden fiesen Script-Kiddie davon abzuhalten.
Tanzeel Kazi