Die Spamrobots haben nun auch unser Kontaktformular entdeckt, dessen Inhalt als E-Mail an eine interne Mailadresse geschickt wird. Ergebnis: täglich hunderte Mails mit Links zu Pharma-Erzeugnissen und anderem Dreck. Natürlich gibt es in typo3 mehrere Möglichkeiten, dieses Problem zu mildern. Captchas kommen nicht in Frage, da diese zum einen oft nicht barrierefrei sind und zum anderen viele Benutzer, die ernsthafte Anfragen stellen möchten, abschrecken. Wer dann noch das Standard-Mailformular von typo3 tt_content.mailform einsetzen möchte, ist in der Wahl der Spamabwehrmittel schon recht eingeschränkt...
Die einzige Extension, die ich gefunden habe und einen guten Eindruck macht, ist wt_spamshield. Neben der Formularerweiterung Powermail und dem Gästebuch ve_guestbook unterstützt die Extension auch das Standard-Mailformular von typo3 tt_content.mailform. Für tt_content.mailform stehen folgende Möglichkeiten zur Spamabwehr zur Verfügung:
- Prüfung von identischen Eingaben in 2 Feldern, z.B. Vorname, Nachname
- Begrenzung der Anzahl von Links in den Benutzereingaben
- Prüfung der Gültigkeit einer http-Session
- Prüfung der Geschwindigkeit einer Benutzeringabe (zu schnell, zu langsam)
- Honeypod-Eingabefeld, d.h. im Mailformular wird ein verstecktes Feld eingefügt, das von menschlichen Benutzern nicht ausgefüllt wird. Robots hingegen befüllen gerne dieses versteckte Eingabefeld, die Extension erkennt dies dann als Spam
Bei Einsatz von wt_spamshield in Verbindung mit ve_guestbook oder Powermail gibt es dann noch ein paar weitere Möglichkeiten der Spamprüfung.
Ich bin leider nicht der typo3-Experte und die Dokumentation von wt_spamshield lässt leider ein paar wesentliche Punkte der Installation im Dunkeln, deshalb dokumentiere ich hier nochmal was in unserer Installation funktioniert hat. Beim Durchführen der Installation der Extension nach der Dokumentation der Extension hat diese leider nicht funktioniert, d.h. die Extension war zwar offensichtlich aktiv (z.B. daran zu sehen, dass das Honeypod-Eingabefeld in das Mailformular eingefügt wurde, Spam wurde dennoch verschickt).
Also:
- Extension normal über den Extension-Manager vom TER installieren und aktivieren
- Im Extension Manager kann dann wie in der Extension-Dokumentation die Grundfunktionalität festgelegt werden
- Wenn die Extension für die gesamte Website gelten soll - was sinnvoll ist wenn Redakteure eigene Mailformulare einfügen können - folgendes Typoscript in die Konfiguration der root-Seite einfügen (bei uns in dem Haupttemplate der Root-Seite:
plugin.wt_spamshield {
enable.standardMailform = 1
redirect.standardMailform = http://www.mydomain.de/index.php?id=4711
enable.powermail = 0
enable.ve_guestbook = 0
message {
session.note1 = Die Zeit für die Eingabe ist leider abgelaufen
session.note2 = So schnell tippt doch kein Mensch!
session.note3 = Bitte beenden sie nicht die Session!
httpcheck = Bitte verwenden Sie nicht mehr als %s Verweise
uniquecheck = Bitte das Formular sinnvoll ausfüllen
namecheck = So so, Sie heissen mit Vornamen und Nachnamen gleich?
akismet = I believe you want to spam my server
honeypod = Bitte dieses Formular nicht für Spam verwenden
}
}
- Nun muss noch verhindert werden, dass Seiten mit Mailformular gecached werden. Dies lässt sich bequem in der Datei
/typo3conf/ext/wt_spamshield/static/setup.txt einstellen. Die Datei sieht dann so aus:
# wt_spamshield: Include protection for standard mailform
includeLibs.spamshield = EXT:wt_spamshield/ext/class.tx_wtspamshield_defaultmailform.php
tt_content.mailform = COA_INT
tt_content.mailform {
16 = LOAD_REGISTER
16 {
wt_spamshield.cObject = USER
wt_spamshield.cObject.userFunc = tx_wtspamshield_defaultmailform->generateSession
}
20.no_cache = 1
}
tt_content.mailform.20.stdWrap.wrap = ...
Anschließend sollten dann noch alle typo3-Caches über das Backend geleert werden - fertig!.
Quelle: http://www.typo3forum.net/forum/formular-anti-spam-extensions-wt_spamshield/37614-spamshield-scheinbar-ohne-funktion.html
Jetzt kommentieren