37.3 Spam-Vorbeugung 

Spam ist in Joomla! bisher zum Glück nur ein untergeordnetes Problem. Das liegt daran, dass zum Bearbeiten der Inhalte ein gültiger Username und ein Passwort nötig sind. Da die meisten Content-Spammer darauf aus sind, möglichst schnell möglichst viele Links auf Ihrer Seite unterzubringen, ist das eine Hürde, die das System momentan selbst bei offener Registrierung relativ unattraktiv macht. Das wird sich mit zunehmender Verbreitung und Rechnergeschwindigkeit allerdings sicher ändern.
Im Kernbereich von Joomla! kann Spam auf zwei Arten auftreten:
- E–Mail-Spam, also unerwünschte Werbung mit Ihnen als Adressaten, kommt über das Kontakt-Modul.
- Content-Spam, also die Verlinkung der Spammer-Seite, um Suchmaschinen zu beeindrucken, kann über automatisierte registrierte Benutzer kommen.
Gegen E–Mail-Spam wurde ein Mechanismus integriert, mit dem Sie Mails, die bestimmte Schlüsselwörter enthalten, ausschließen können. Die Einstellung dazu finden Sie in der Kontakte-Komponente. Gehen Sie dort auf das Symbol Einstellungen. Es öffnet sich ein Fenster, in dem Sie unter anderem drei Eingabefelder finden:
- Verbotene E–Mail-Adressen
- Verbotene Betreff-Zeilen
- Verbotener Text
In jeder dieser Zeilen können Sie Texte eingeben, die nicht in dem entsprechenden Bereich enthalten sein dürfen. Wenn Sie mehrere Einträge haben, die Sie blocken wollen, so verwenden Sie Strichpunkte als Trennzeichen, also:
viagra;porn;credit
Um die Hürden für Spammer noch etwas höher zu setzen, greift man zu einem einfachen Trick, der sicherstellt, dass sich ein Mensch und keine Maschine im System befindet. Damit er Daten an ein gefährdetes Skript abschicken zu kann, muss der Sender ein paar Buchstaben aus einem verzerrten Bild abschreiben. Für Menschen ist das gar kein Problem, im Mustererkennen sind wir sehr gut. Computer beißen sich daran – noch – die Zähne aus. Ein solcher Mechanismus wird Captcha genannt. Das ist ein Akronym für completely automated public Turing test to tell computers and humans apart, also »gänzlich automatisierter öffentlicher Turing-Test, um Computer von Menschen zu unterscheiden«.
Abbildung 37.1 Ein Captcha
Dieser Mechanismus wurde auch für Joomla! 1.5 als Hack implementiert. Sie finden die entsprechenden Dateien auf der DVD im Verzeichnis Erweiterungen/Captchas. Da diese jeweils auf die Version 1.5.7 abgestimmt sind, empfehlen wir jedoch, die aktuellen Dateien von http://www.waltercedric.com/downloads-for-joomla/cat_view/333-joomla15/334-securityimages.html herunterzuladen.
Installieren Sie zunächst die Komponente com_securityimages5.0.0RC1.zip. Diese erzeugt die Bilder, die als Captchas verwendet werden. Zudem wird ein Plugin benötigt, das Sie auf der DVD im gleichen Ordner finden: plugin_system_securityimages5.0.0RC1.zip. Auch das müssen Sie installieren und aktivieren.
Jetzt muss noch der Code der Module und Komponenten angepasst werden, die den Sicherheitsmechanismus verwenden sollen. Dazu ist es nötig, einen Patch einzuspielen. Das ist ein Archiv, das Sie im Wurzelverzeichnis von Joomla! entpacken und das die entsprechenden Dateien austauscht. Diesen Patch finden Sie ebenfalls auf der DVD.
Nachdem Sie den Patch installiert haben, gehen Sie in die Konfiguration und schalten im Reiter Server die Einstellung Use SecurityImages against spammers auf Ja. Speichern Sie diese Einstellung. Jetzt sind die Captchas aktiv.
Bevor Sie die Sicherheitsbildchen verwenden, sollten Sie noch einen Blick auf die Einstellungen werfen. Diese finden Sie im Menü unter Komponenten • Security Images. Unter Check Your System können Sie überprüfen, ob alle Einzelteile korrekt installiert wurden (Abbildung 37.2).
Abbildung 37.2 Der Systemcheck für Captchas
Unter dem Menüpunkt Edit Plugin Settings finden Sie eine Reihe von Optionen, mit denen Sie das Erscheinungsbild der Captchas einstellen können. Wenn Sie die Hinweistexte ändern wollen, die die Security Images-Komponente generiert, so haben Sie die Möglichkeit, die Sprachdatei direkt zu bearbeiten. Zu ihr gelangen Sie im Menü über den Punkt Komponenten • Security Images • Edit General Language. Suchen Sie einfach den entsprechenden englischen Text, und ersetzen Sie ihn durch eine eigene Variante.
Allerdings hat die momentan eingesetzte Variante im Deutschen noch ein Defizit in der Übersetzung. Um die Beschriftung SECURITYIMAGES LABEL loszuwerden, müssen Sie folgende Zeile am Ende der Dateien languages/de_DE.com_user.ini sowie languages/de_DE_mod_login.ini einfügen:
SECURITYIMAGES LABEL=Sicherheitsabfrage
Damit wird die Beschriftung geändert.
Wir haben das Login-Feld mit einem Captcha gesichert. Wie das im Frontend aussieht, können Sie in Abbildung 37.3 sehen.
Abbildung 37.3 Der Login mit Captcha
Neben dem Code sehen Sie einen Reload-Button. Wenn die Zeichen selbst für Menschen unleserlich sind – das kann z. B. sein, wenn nicht klar ist, ob es sich um eine 0 (Null) oder ein O handelt –, dann kann der Benutzer ein neues Bild anfordern.