Anti SPAM - Minder SPAM vanaf je website?

SPAM staat voor Unsolicited Commercial E-mail en Unsolicited Bulk E-mail, hoewel deze definitie niet volledig is. Eigenlijk alles wat ongevraagd in je mailbox of op je website belandt, kun je SPAM noemen. Wanneer je ongevraagd reclameboodschappen op een forum plaatst, ben je dus een spammer. Je bent ook een spammer wanneer je een zoekmachine vervuilt met nutteloze pagina's. Volgens Jeroen is Vinden.nl hier een voorbeeld van.

De onderstaande tips zijn bedoeld voor webmasters, die regelmatig last hebben van SPAM via of op de website.

1. Zuinig

Geef je e-mailadres alleen door aan familie, vrienden en bekenden. Gebruik voor onbelangrijke zaken (aanmelden nieuwsbrieven, aanvragen informatiepakketten, etc.) een alternatief e-mailadres.

2. Lokaal SPAM filter

Maak gebruik van software als SPAM Fighter (gratis) om SPAM te filteren.

3. Server SPAM filter

Gebruik ook het SPAM filter van de hostingprovider. Met hosting zorg je ervoor dat je website op het internet bereikbaar wordt. Een goed hostingpakket bevat een instelbaar SPAM filter. Alles wat dit filter tegenhoudt, hoeft lokaal niet meer te worden tegengehouden.

Het beste SPAM filter wordt momenteel geleverd door Barracuda SPAM Firewall. Deze appliance pakt SPAM en virussen op een zeer effectieve wijze aan. Bijkomend voordeel is dat de filtering op deze server plaatsvindt, waarna de e-mail wordt gedropt naar jouw mailserver (capaciteitswinst). In principe neemt deze firewall al je SPAM filtering (dus ook lokaal) uit handen. Hosting met Barracuda SPAM Firewall wordt o.a. geleverd door WWW4.be.

Uiteraard kun je je prima beschermen met een regulier SPAM filter. Webhosting bevat een krachtig SPAM filter, dat gebruik maakt van diverse algoritmen, zwarte en witte lijsten. De oorzaak van het veel ontvangen van SPAM is vrijwel altijd een niet (correct) ingesteld SPAM filter.

4. ASCII

Converteer alle e-mailadressen op je website naar ASCII formaat. Ook hier geldt: wees voorzichtig met het plaatsen van e-mailadressen op je website.

Via deze Text to ASCII tool kun je de e-mailadressen converteren. Maak je een link naar je e-mailadres, converteer dan ook mailto: naar ASCII. Schrik niet van de vreemde tekens; het geconverteerde e-mailadres wordt in de browser normaal weergegeven.

5. Formuliervelden

Geef minder logische namen aan je formuliervelden. SPAM bots begrijpen vaak door de formulierveldnamen welke waarde er moet worden ingevuld.

6. Verzendknoppen

Gebruik JavaScript voor het verzenden van je formulieren. SPAM bots ondersteunen geen JavaScript, waardoor ze het formulier niet kunnen verzenden.

Voorbeeld: <input type="button" value="Verzenden" onclick="document.jeformuliernaam.submit();" />

Vervang jeformuliernaam door de naam van je formulier. Heb je een button van het type submit, dan kan een SPAM bot het formulier wel verzenden. Natuurlijk kun je dan kiezen voor captcha en reguliere expressies (zie de volgende tips).

7. Formuliercontrole

Controleer altijd de inhoud van je formulier aan de hand van reguliere expressies. Met een reguliere expressie definieer je een formaat van bijv. een telefoonnummer, postcode, e-mailadres, etc. Op deze manier kun je kijken of het een formulierveld het door jou gedefinieerde formaat heeft. Met correcte reguliere expressies kun je trouwens ook e-mail header injection en SQL injection voorkomen. Dergelijk misbruik kan je website een slechte naam bezorgen, maar ook volledig lamleggen. Voorkomen is beter dan genezen. Heb je nagenoeg geen last van SPAM, pas dan toch degelijke formuliercontrole toe!

8. Captcha

Gebruik captcha om geautomatiseerd invullen van formulieren te voorkomen. Met captcha dient bij het formulier een bepaald woord of code te worden overgenomen van een afbeelding. Zolang de codes niet overeenkomen, wordt het formulier niet verzonden. Op PHPFreakz vind je kant-en-klare scripts.

9. Registratie en login / activering

Gebruik een registratie- en loginprocedure om bezoekers gecontroleerde toegang tot je website te geven. Dit gebruik je vooral wanneer gebruikers zelf content aan je website kunnen toevoegen (forums, etc.). Wanneer een gebruiker eenmalig content kan ingeven (gastenboeken, contactformulieren, etc.), kun je gebruik maken van captcha (zie tip 8) of activering: laat een bezoeker een actie bevestigen per e-mail of per SMS. Zolang de bevestiging niet heeft plaatsgevonden, wordt de actie niet uitgevoerd. Op PHPFreakz vind je allerlei tutorials en scripts voor het opzetten van dergelijke systemen.

10. .htaccess

Blokkeer middels .htaccess IP adressen, waarvandaan SPAM wordt verzonden. Middels je websitestatistieken kun je mogelijk het IP adres van de spammer achterhalen. Gebruik deze methode alleen wanneer je veel SPAM ontvangt.

Voorbeeld: plaats onderstaande code in een bestand met de naam .htaccess.

order allow,deny
deny from 0.0.0.0
allow from all

Vervang het adres 0.0.0.0 door het IP adres van de spammer. Het .htaccess bestand plaats je op hetzelfde niveau als je indexbestand.