Hier schreiben wir einige kleine Skripte, welche sich über den täglichen Aufruf via Crontab bei blocklist.de eine aktuelle IP Sperrliste herunterladen, und diese in ein MikroTik kompatibles Format konvertieren. Wir speichern die Datei ip_blacklist.rsc innerhalb unseres Webpfades. Auf dem Router wird die Datei heruntergeladen und importiert.
In dieser Sperrliste von blocklist.de befinden sich IP Adressen, von welchen mehrfach wiederholt Hackversuche ausgingen. Näheres finden Sie unter https://www.blocklist.de .
Auf der Seite https://www.blocklist.de finden Sie ebenfalls in Kategorien unterteilte Listen zum Download. Sie haben die Möglichkeit, sich beispielsweise auch nur erfasste SSH Einbruchsversuche zu blockieren etc.
Wget sollte bereits auf Ihrem System installiert sein.
Hier nun das Bash-Skript für die Linux Box:
x
cd /tmp/
/usr/bin/wget https://lists.blocklist.de/lists/all.txt
echo "/system logging disable 0" > /var/www/html/ip_blacklist.rsc
echo "/ip firewall address-list remove [find list=\"blocklist.de\"]" >> /var/www/html/ip_blacklist.rsc
echo "/ip firewall address-list" >> /var/www/html/ip_blacklist.rsc
while read line; do echo "/do {ip firewall address-list add list=\"blocklist.de\" address=$line timeout=2d} on-error={}" >> /var/www/html/ip_blacklist.rsc; done < /tmp/all.txt
echo "/system logging enable 0" >> /var/www/html/ip_blacklist.rsc
chown www-data:www-data /var/www/html/ip_blacklist.rsc
Einfach in /etc/cron.daily/update_blocklist_de abspeichern und an das executable Bit denken:
chmod +x /etc/cron.daily/update_blocklist_de
Auf dem MikroTik Router geht's weiter. Legen Sie eine neue Firewall Regel an:
xxxxxxxxxx
/ip firewall filter add action=drop src-address-list=blocklist.de chain=input place-before=0
/ip firewall filter add action=drop src-address-list=blocklist.de chain=forward place-before=0
Hier in unserem Beispiel sind es zwei Regeln. Eine für die Import- und eine Forward- Chain. Einfach an Ihre eigenen Bedürfnisse anpassen.
Achten Sie auf den Teil "place-before=0". Es hängt stark von Ihrer eigenen Konfiguration ab, an welcher Position diese beiden Regeln ihre Wirkung am Besten entfalten. Üblicherweise stehen zuvorderst die Regeln, die dem Administrator grundsätzlich alle Zugriffsrechte unter allen Umständen gewähren und danach erst die Blockiereinträge.
Als Nächstes importieren wir dieses Skript:
x
/system script
add dont-require-permissions=no name=update_ip_blacklist owner=admin policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=\
"/tool fetch user=someuser password=somepass url=https://rosignol.net/mtbl/ip_blacklist.rsc;\r\
\n/import file-name=ip_blacklist.rsc"
Ändern Sie die URL und den Pfad entsprechend Ihres eigenen Webservers. Wenn Sie diese (und andere) vorkonfigurierte RSC Files von unserem Webserver herunterladen möchten, schreiben Sie uns eine E-Mail, um einen Zugang zu erhalten.
Letzter Schritt ist der tägliche Aufruf auf dem MikroTik:
/system scheduler
add interval=1d name=update_blocklist on-event=update_ip_blacklist start-time=04:15:00
Fertig.