WordPress-Sicherheit & Performance: Webserver-Module gegen Spammer

Aktueller Fall als Prolog: https://plus.google.com/110569673423509816572/posts/hwSDaz58YjB

Einige von euch haben das WordPress-Plugin Top Spam IPs [1] von +Franz Josef Kaiser mitbekommen und vielleicht auch gleich installiert: Es listet IP-Adressen der lokal eingefangenen Bots auf, die per Copy&Paste in die Systemdatei .htaccess eingefügt gehören. Das Prinzip dahinter: Bots bereits auf der Server-Ebene abfangen und blocken. So wird der Server und die Datenbank entlastet, da kein PHP/WordPress ausgeführt wird.

Pflege und Aktualität
Spammer bereits in .htaccess zu erkennen und abzuweisen ist absolut die richtige Strategie. Das Problem ist die Wartbarkeit der Liste mit IP-Adressen innerhalb von .htaccess - wer aktualisiert diese schon täglich per Hand? Eine Möglichkeit wäre, die Liste aus dem Plugin heraus zu schreiben und zu refreshen. Doch da speilen viele Faktoren wie Schreibschutz, Sicherheit, etc. mit. Auch handelt es sich um eine Liste mit lokal erkannten und gespeicherten IP-Adressen. Sinnvoller wäre es, eine globale, auch von anderen Nutzern generierte bzw. gemeldete Liste zu verwenden.

Da existieren ebenfalls Listen, die allerdings 25 Meter lang sind - nach dem Einfügen in die .htaccess sieht diese entsprechend unübersichtlich aus. Auch das Problem mit der Aktualität besteht weiterhin.

Servermodul
Für Blogger mit technischem Verständnis und Server-Rootzugang empfehle ich ein entsprechendes Modul für den Webserver. Nach der Installation bezieht das Modul die Daten aus einer der bekannten AntiSpam-Datenbanken wie z.B. Spamhaus [2] oder Project Honey Pot [3] und sortiert Zugriffe auf den Blog von dort gemeldeten Spammern aus.

Anleitungen für Apache:
mod_spamhaus
- http://www.howtoforge.com/how-to-block-spammers-with-apache2-mod_spamhaus-debian-etch
- http://wiki.ubuntuusers.de/Apache/mod_spamhaus
- http://suckup.de/linux/debian/spammerhacker-fernhalten-apache2/ von +Lars Moelleken 

mod_security
- https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#wiki-SecHttpBlKey

mod_httpbl
- http://www.projecthoneypot.org/httpbl_download.php

Anleitungen für Nginx:
- https://github.com/perusio/nginx-spamhaus-drop
- http://www.mybbsecurity.net/topic-block-spammers-automatically-in-nginx

Speziell Fail2Ban
- http://cup.wpcoder.de/fail2ban-ip-firewall/

Landesbegrenzung
Für deutschsprachige Blogs kommt auch eine geografische Sperrung der „Nutzer“ in Frage: Nahezu 80 % der aktuellen Angriffe auf WordPress-Adminbereiche stammen aus der Türkei, auf Spam-Formulare aus China (so die IP-Herkunft). Man braucht den Zugriff nicht auf den kompletten Blog auszuweiten, sondern auf Problemzonen wie die Login-/Registrierungsseite und das Kommentarformular zu beschränken.

In einem der nächsten Tutorials zeige ich, wie man bestimmte Länder bereits auf dem Server aussperrt.

Sonniges Wochenende.

[1] https://plus.google.com/107110219316412982437/posts/48EfEx2oM2Z
[3] http://www.spamhaus.org
[4] http://www.projecthoneypot.org

#WordPress   #Sicherheit  
Photo
Shared publiclyView activity