Springe zum Inhalt

7

Auf allen Blogs, Webseiten und überhaupt allem, was http spricht, tummeln sich Bots. Die meisten davon sind Bots der Suchmaschinenbetreiber. Daneben gibt es solche, die für die Webseite keinerlei Nutzen bringen, ja sogar gegen die Webseitenbetreiber arbeiten. So z.B. der Pixray-Bot, der Webseiten nach urheberechtlich geschützen Bildern durchsucht. Bei einem Fund kann man sich anschließend offensichtlich auf Post vom Anwalt freuen.

Da meiner Meinung nach das Verhalten des Pixray-Bots einer digitalen Hausdurchsuchung entspricht, ich ihm das nicht erlaubt habe und ich den durch den Bot generierten Traffic bezahlen muss, habe ich nach einer Lösung gesucht, den Bot von meinen Webseiten fernzuhalten. ...weiterlesen "Pixray-Bot mit Fail2ban aussperren"

Alle im Internet angebotenen Services werden über kurz oder lang angegriffen werden. Einfache Attacken sind dabei das Ausprobieren verschiedener Logins auf einem SSH- oder IMAP-Server. Diese können automatisch mit logcheck erkannt und dokumentiert werden. Eine wirkliche Abwehr der Attacke ist das jedoch nicht, da logcheck nur die gescheiterten Loginversuche aus den Logfiles heraussucht und entsprechende Warnungen an den Administrator per E-Mail verschickt. Auf der Suche nach einer einfachen Abwehrmethode stieß ich auf fail2ban, welches nach einer einzustellenden Anzahl von fehlgeschlagenen Logins die IP-Adresse des Angreifers mittels iptables automatisch blockieren kann und diese Blockierung nach einer einzustellenden Zeit automatisch wieder aufhebt.

logcheck und fail2ban ist in den Ubuntu-Quellen enthalten und kann mit

apt-get install logcheck
apt-get install fail2ban

installiert werden. In der Datei /etc/logcheck/logcheck.conf kann angepasst werden, an welche E-Mail-Adresse die Ergebnisse der Suche nach fehlgeschlagenen Logins geschickt werden. Für fail2ban kann das Selbe in der Datei /etc/fail2ban/jail.conf konfiguriert werden. Nach einem Neustart dieser beiden Dienste werden die Änderungen übernommen.

service logcheck restart
service fail2ban restart

Unter Ubuntu 10.04.3 LTS ist es erforderlich, für die erfolgreiche Überwachung des saslauthd die Datei /etc/fail2ban/filter.d/sasl.conf anzufassen, da der saslauthd unter Ubuntu offenbar eine andere Ausgabe benutzt, als sie in fail2ban voreingestellt ist. Die Zeile zum Matchen der Meldung ist durch folgende Zeile zu ersetzten (Quelle):

failregex = (?i): warning: [-._\w]+\[<HOST>\]: SASL (?:LOGIN|PLAIN|(?:CRAM|DIGEST)-MD5) authentication failed(: [A-Za-z0-9+/ ]*)?$

Nach einem Neustart von fail2ban werden anschließend auch fehlgeschlagene Logins über den saslauthd erkannt.

Wenn fail2ban mehrere aufeinanderfolgende fehlgeschlagenen Login-Versuche von einer IP-Adresse durch entsprechende Logmeldungen der zu überwachenden Dienste erkennt, wird die IP-Adresse mittels iptabels gesperrt. Nach einer bestimmten Zeit, die in /etc/fail2ban/jail.conf unter bantime in Sekunden eingestellt werden kann, wird die IP-Adresse wieder aus der Sperrliste in iptables entfernt. Falls man den oder die zu überwachenden Server allein betreibt, kann man evtl. die Sperrzeit auf einen sehr hohen Wert einstellen. 86400 Sekunden entspricht dabei einem Tag.