Spam tegen gaan op je Drupal website

Door Robert RooseBijgewerkt op 22 februari 2024 2 Reacties

De beste manier om spam tegen te gaan op een Drupal website is door gebruik te maken van modules. Deze modules zijn gratis en uit eigen ervaring zijn de volgende twee modules het meest succesvol gebleken:

Maar er zijn nog meer modules tot je beschikking.

Captcha

In dit artikel bespreek ik geen captcha's. Ik ben van mening dat de captcha een hele slechte techniek is om spam af te vangen. Als ik bijvoorbeeld een reactie ergens op wil geven en ik moet een captcha invoeren begin ik al direct luid te zuchten. Ik weet niet of het aan mij ligt maar de captcha's zijn meestal zo onleesbaar dat ik het drie of vier keer moet proberen voordat ik de letters goed gok. Ik doe al moeite om een reactie te schrijven en nu moet ik ook nog extra veel tijd stoppen in het oplossen van een captcha. Een captcha is een extra horde die een gebruiker moet nemen om een actie te ondernemen. Daarom valt in mijn ogen deze optie direct af. Er zijn alternatieven die Thomas in dit artikel bespreekt maar ik kies toch liever voor een optie die de gebruiker geen moeite kost.

Spamicide

Deze module hebben we een hele lange tijd op onze eigen website succesvol gebruikt. Spam is meestal het resultaat van bots die massaal websites bezoeken en formulieren invullen. Spamicide maakt hier handig gebruik van door een extra veld toe te voegen aan de formulieren die jij wil beschermen tegen spam. Dit veld is voor de normale bezoeker niet zichtbaar. De bot ziet dit veld wel en zal het ook invullen, omdat een bot altijd alle velden van een formulier wil invullen. Wanneer het veld ingevuld is bij het opslaan van het formulier weet de spamicide module dat het om spam gaat. De resultaten van dit formulier verdwijnen dan automatisch in de prullenbak.

Hoewel we een jaar lang zeer weinig spam hebben gehad werden de bots steeds slimmer. Bij spamicide moet je in de instellingen aangeven hoe dit nep veld moet heten. De bots kregen echter door dat dit een nep veld was en begonnen deze te omzeilen. Het werd een gevecht waarbij wij elke keer de naam van dit nep veld moesten veranderen en de bots moesten achterhalen hoe we dit veld nu weer genoemd hadden. Uiteindelijk was de module niet meer effectief en zijn we op zoek gegaan naar een andere oplossing.

Meer artikelen over Drupal in je inbox? Schrijf je dan in voor onze nieuwsbrief.

Mollom

Deze dienst is opgericht door Dries Buytaert, bedenker van Drupal. Om mollom te kunnen gebruiken moet je een account aanmaken en de module downloaden. Je kan dan gebruik maken van een gratis account waarbij een beperkt aantal spam pogingen wordt tegen gehouden. Wanneer je betaalt voor mollom krijg je de opties om meer spam te blokkeren.

Wanneer je genoeg betaalt voor mollom werkt het fantastisch. Het doet wat het moet doen: spam tegen houden. Echter liepen wij tegen een paar problemen op:

Voor hele grote websites die een flink budget hebben zou mollom een optie kunnen zijn. Onze zoektocht ging echter verder.

Bekijk de Drupal projecten die wij beschermen tegen spammers

Honeypot

De honeypot module maakt gebruik van dezelfde techniek als Spamicide door een nep veld te plaatsen. Hier komt ook de naam van de module vandaan want het nep veld wordt gezien als een honingpot waar spam bots door aangetrokken worden. Naast deze methode kijkt honeypot ook naar het aantal seconden dat de gebruikt nodig heeft om een formulier in te vullen. Een spam bot verraadt zichzelf namelijk door formulieren binnen een aantal milliseconden in te voeren. Dit is voor normale mensen niet te doen. Alle formulieren die dus vliegensvlug ingevoerd worden niet gepubliceerd.

Ook deze module heeft ons een tijdje geholpen in het gevecht tegen de spam maar was uiteindelijk ook niet goed genoeg om alles te blokkeren. Wat ons brengt bij onze huidige oplossing.

http:BL

Deze module pakt het op een andere manier aan. Wanneer iemand een formulier invult wordt het IP van deze gebruiker gecheckt. Er wordt dan gecontroleerd of dit IP op de zwarte lijst met IP adressen van spammers staat. Als dit het geval is wordt het formulier geweigerd en het IP adres geblokkeerd. http:BL maakt gebruik van de lijsten van 'Project Honey Pot' (niet te verwarren met de Honeypot module). Hier kun je een gratis account aanmaken welke je nodig hebt bij de configuratie van de module. Je krijgt dan ook de mogelijkheid om mee te werken aan het project, zodat IP adressen die jij markeert als spam ook worden opgenomen in de lijst. Er zijn nu al meer dan 500 miljard van deze 'spam traps' actief die proberen zoveel mogelijk spammers op de zwarte lijst te krijgen.

We draaien deze module nu bijna twee maanden en het aantal spam berichten is minimaal. Eén per week is veel. Voor ons is dit momenteel de beste oplossing om spam tegen te gaan op onze Drupal website, maar dat wil niet zeggen dat dit in de toekomst kan veranderen. Wanneer wij een nog betere methode vinden zal ik dit artikel een update geven.

Bonus: Spambot

Spam komt in meerdere vormen. Het gebeurt namelijk ook dat bots nep accounts aanmaken binnen je Drupal website waarmee ze uiteindelijk willen spammen. Een handige module die eigenlijk hetzelfde werkt als de hierboven beschreven http:BL is Spambot. Wanneer iemand zich registreert wordt het IP adres (maar ook e-mailadres en/of gebruikersnaam) tegenover de zwarte lijst van Spambot gezet. Als er een match is wordt het account niet goedgekeurd en krijgt de spammer geen account op jouw website. Spambot maakt gebruik van de lijsten op Stop Forum Spam.

Heb jij veel last van spam op je Drupal website en heb je misschien een betere oplossing? Laat het mij weten in het commentaar, ik ben benieuwd!

Meer inzichten over Drupal