IP-Blocklisten mit ipset

Im letzten Beitrag hatte ich beschrieben, wie Du via Fail2Ban automatisiert beispielsweise auf fehlerhafte Login-Versuche reagieren kannst. Fail2Ban legt hierzu automatisch eine entsprechende iptables-Regel an, so dass die entsprechende IP-Adresse blockiert wird. Sehr oft handelt es sich bei diesen IP-Adressen um allgemein bekannte Angreifer-IP-Adressen. Das sind beispielsweise bereits kompromittierte Server, VPN-Adressen oder anderweitig genutzte Angreifer-Maschinen. Für genau solche IP-Adressen existieren umfangreiche IP-Listen.

Welche Listen gibt es?

Reine Text-Listen solcher IP-Adressen (um diese elektronisch weiterzuverarbeiten) findest du auf den Seiten https://www.projecthoneypot.org, https://www.maxmind.com, https://danger.rulez.sk, https://www.spamhaus.org, https://lists.blocklist.de, etc.

Via http://ipverse.net/ipblocks/data/countries/XX.zone kannst du sogar länderbasiert IP-Adressen blockieren. XX steht hierbei für den 2-digit-Countrycode.

Beim Nutzen solcher Listen gilt im Übrigen dasselbe wie beim generellen Anlegen automatisierter Firewall-Blockierungen: Achte immer darauf, dass du nicht dein eigenes Interface und auch nicht deine eigene IP-Adresse blockierst. Diese solltest Du whitelisten!

Wie funktioniert ipset?

Das einzelne Blockieren von IP-Adressen erzeugt natürlich einen entsprechenden Aufwand für iptables – zumindest dann, wenn ganze IP-Adressensammlungen im fünf- oder sechsstelligen Bereich blockiert werden sollen. Und hier kommt ipset ins Spiel – eine Netfilter-Erweiterung. Mit ipset kannst du diese ganzen Listen in ein Set laden und diese mit nur einer einzigen iptables-Regel blockieren. ipset installierst Du mit dem Paketmanager deines Linux-Systems (apt-get, pacman, etc.).

Trick77/ipset-blacklist

Du kannst solche Listen sehr angenehm über ein bereits fertiges Script auf deinem Server organisieren: https://github.com/trick77/ipset-blacklist

In der Readme.md-Datei ist die schnelle Installation in fünf Schritten und Ausführung des Scripts beschrieben. Wichtig ist dabei auch, dass Du den beschriebenen Cronjob einrichtest und diesen einmal täglich ausführst. Auf diese Weise werden die IP-Listen aktualisiert. Denn täglich kommen natürlich neue IP-Adressen hinzu, bzw. werden auch IP-Adressen wieder freigegeben. Nach dem Anpassen der Datei /etc/ipset-blacklist/ipset-blacklist.conf an die eigenen Bedürfnisse, werden die IP-Adresslisten wie von dir ausgewählt automatisiert hinzugefügt.

Manuelles hinufügen von IP-Adressen

Du kannst desweiteren manuell IP-Adressen kurzfristig via ipset (ipset add [BLACKLISTNAME] [IP-ADRESSE]) zu deiner blacklist hinzufügen, oder langfristig die Datei /etc/ipset-blacklist/ip-blacklist-custom.list pflegen (nachdem diese in der Konfigurationsdatei aktiviert wurde).

Aussicht: Automatisiertes Melden von IP-Adressen via Fail2ban

Projekte wie beispielsweise https://www.badips.com leben davon, dass Angriffsversuche gemeldet werden. Erreicht eine IP-Adresse eine bestimmte Menge an Meldungen über Angriffsversuche, landet diese auf der Liste, die selbst wieder zum Blockieren genutzt werden kann. Wie Du dies ebenfalls automatisiert und beispielsweise via Fail2Ban erledigen kannst, schreibe ich in einem der kommenden Beiträge.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Durch die Abgabe eines Kommentars akzeptieren sie die Datenschutzerklärung von net73.de

ähnliche Beiträge