Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

WordPress: 5 plugin antispam

Plugin antispam: ecco i migliori 5 per WordPress
Plugin antispam: ecco i migliori 5 per WordPress
Link copiato negli appunti

Gli ospiti indesiderati che lasciano messaggi di spam sulle pagine dei nostri siti e dei nostri blog sono sempre dietro l'angolo. In questo articolo vedremo alcuni strumenti efficaci per combattere il fenomeno dello spam nei siti creati con WordPress.

Akismet: un antispam che impara dai propri errori

Uno dei plugin per WordPress più conosciuti per combattere lo spam è sicuramente Akismet. Con esso ogni volta che viene lasciato un commento a un post, questo è controllato da Akismet e, se riconosciuto come un commento di spam, viene spostato in un'altra cartella in attesa di essere controllato da un amministratore del blog. Al controllo si può decidere se eliminare il commento definitivamente oppure, nel caso sia considerato buono, ripristinarlo togliendolo dalla lista dello spam e pubblicarlo.

Il plugin Akismet è già presente di default nel pacchetto che contiene i file di installazione di WordPress. Per poterlo utilizzare però dobbiamo avere un account sul sito ufficiale del plugin e ottenere la chiave di attivazione (API Key). La chiave è personale e non può essere condivisa. Dopo aver fatto l'iscrizione arriverà la nostra API key direttamente nella casella di posta.

Attivato il plugin per inserire la chiave si clicca sul messaggio "Akismet è quasi pronto. perché funzioni occorre inserire la propria chiave API Akismet" oppure sulla voce "Configurazione Akismet" sulla barra laterale. Oltre a inserire la chiave possiamo impostare l'eliminazione automatica dei commenti di spam inseriti da più di un mese e la visualizzazione del numero di commenti inseriti da ogni utente, come vediamo dalla figura.

Figura 1. Installazione e inserimento della chiave in Akismet
(clic per ingrandire)


Installazione e inserimento della chiave in Akismet

Alcune configurazioni di alcuni server impediscono l'inserimento e l'attivazione della chiave. In questo caso dobbiamo inserirla a mano nel file del plugin. Per farlo basta andare su Plugin-> cercare Akismet e cliccare su Modifica e nel file akismet.php cercare queste righe di codice:

// If you hardcode a WP.com API key here, all key config screens will be hidden
$wpcom_api_key = '';

e inserire tra gli apici la chiave ricevuta.

Per controllare e gestire i commenti marcati come spam, dobbiamo accedere al pannello di amministrazione e nella barra laterale cliccare su Commenti e scegliere Spam. Vedremo così l'elenco dei diversi commenti con indicato anche l'eventuale utente che lo ha contrassegnato (nel caso fosse tra quelli approvati), come in figura.

Figura 2. Elenco dei messaggi ritenuti di spam
(clic per ingrandire)


Elenco dei messaggi ritenuti di spam

Per vedere i risultati ottenuti nel tempo dal plugin basta andare, dal pannello di amministrazione, su Bacheca-->Statistiche Akismet. In questo modo potremo vedere quanti messaggi sono stati catalogati come spam, oppure mancati oppure visti come falsi positivi in un periodo di tempo che può essere gli ultimi sei mesi, l'ultimo anno o dall'attivazione del plugin.

Se qualche messaggio non viene bloccato, è possibile semplicemente contrassegnarlo come "spam" nella pagina di moderazione (che è quella dove vengono approvati ed eliminati i commenti) e Akismet "apprenderà" dai propri errori.

Figura 3. Le statistiche con Akismet
(clic per ingrandire)


Le statistiche con Akismet

È molto importante controllare che i falsi positivi vengano tolti dalla cartella spam, altrimenti Akismet blocca l'indirizzo email di chi è stato considerato come uno spammer in tutti i blog che utilizzano il plugin. Questo è uno degli svantaggi più grossi del plugin perché non sempre gli amministratori fanno la manutenzione del sito oppure può capitare che non sia più utilizzato.

Peter's Custom Anti-Spam

Utilizzando Akismet, soprattutto su blog popolari nei quali ogni giorno sono pubblicati molti commenti, dobbiamo controllare periodicamente la lista dei messaggi visti come spam o come falsi positivi.
Per evitare questo e senza appesantire troppo il sito, possiamo tentare di risolvere il problema a monte, cioè impedendo a chi non è un essere umano di inserire un commento. Questo può essere fatto inserendo un CAPTCHA.

Esistono molti plugin che permettono di inserire un'immagine CAPTCHA di controllo, uno di questi è Peter's Custom Anti-Spam. Una volta scaricato dalla pagina dei plugin di WordPress ed estratta la cartella, la dobbiamo caricare dentro ../wp-content/plugins e lo attiviamo dal panello di amministrazione scegliendo la sezione Plugin. Questo plugin richiede le librerie GD e Free Type e non fa uso di cookie.

Per gli articoli pubblicati viene inserita l'immagine CAPTCHA: l'utente dovrà inserire, su una casella di testo, le lettere che vede nell'immagine, garantendo così di essere una persona e non un bot o simili.
Dalle impostazioni del plugin (le troviamo se clicchiamo su Impostazioni-->Custom anti-spam) possiamo attivare il CAPTCHA anche agli utenti registrati, creare un blocco selettivo dei trackback, permettere i pingback (compresa la gestione delle corrispondenti code) e inserire le parole da utilizzare in modo random nell'antispam. Possiamo inoltre scegliere il font e il colore da utilizzare nell'immagine e le dimensioni del CAPTCHA. Se l'utente è un ipovedente, è possibile ascoltare un audio con le lettere dell'immagine semplicemente cliccandoci sopra. Attivato in ogni articolo avremo un risultato come in figura.

Figura 4. Il plugin Peter's Custom Anti-Spam in azione
(clic per ingrandire)


Il plugin Peter's Custom Anti-Spam in azione

Rispetto ad altri plugin con CAPTCHA, questo è anche più discreto: non è un pugno nell'occhio nei diversi temi installati.

Did You Pass Math: la matematica non è un'opinione

Did You Pass Math? è uno dei plugin più semplici e utili per eliminare commenti spam da WordPress. Il suo scopo è quello di proporre una semplice domanda di matematica (per esempio la somma di due numeri) quando l'utente inserisce un commento; per poter veder pubblicato il suo commento l'utente deve rispondere esattamente. Lo scarichiamo da questa pagina. Per installarlo dobbiamo caricare nella directory ../wp-content/plugins due file: did_you_pass_math_functions.php e it/did_you_pass_math.php' (oppure quello corrispondente a un'altra lingua).

Una versione più completa di questo plugin si chiama Math Comment Spam Protection Plugin ed è scaricabile da questa pagina. Si carica la cartella del file dentro ../wp-content/plugins e poi possiamo configurare l'estensione andando su Impostazioni-->Math Comment Spam Protection. Il nuovo campo verrà aggiunto automaticamente se l'opzione "Add math question field automatically" è attivata. Nelle configurazioni possiamo modificare il codice HTML per personalizzare il messaggio e i campi. Devono essere usate le parole chiave seguenti:

  • [operand1]: il primo operando;
  • [operand2]: il secondo operando;
  • [fieldname_answer]: il campo per la risposta che deve essere data dall'utente;
  • [fieldname_hash]: il campo nasconto che contiene l'hash;
  • [result]: il risultato calcolato con l'hash;
  • .

Possiamo poi scegliere quali numeri usare come operandi e i messaggi di errore, sia nel caso di risposta sbagliata sia quando l'utente non inserisce niente. Infine possiamo cambiare i nomi dei campi per aumentare ancora di più la sicurezza contro i bots.

Figura 5. Inserimento del quesito matematico con Math Comment Spam Protection Plugin
(clic per ingrandire)


Inserimento del quesito matematico con Math Comment Spam Protection Plugin

WP-Ban: bannare gli IP dei commentatori

Con il plugin WP-Ban possono essere bannati gli utenti andando a guardare l'IP, il range degli IP, gli hostnmane e gli url referer. A seconda della motivazione del ban possiamo avere un messaggio diverso. Il plugin può essere scaricato da questa pagina. Una volta attivato WP-Ban, tutti gli indirizzi IP dei commenti verranno analizzati e, se ritenuti di spam, aggiunti a una lista nera. In questo modo con il passare del tempo il numero dei commenti correttamente inseriti diminuirà e aumenterà la lista incriminata.

Per configurarlo bisogna andare su Impostazioni-->Ban. In cima alla pagina abbiamo il riepilogo con il proprio IP, Host Name, User Agent e url del sito. È stato inserito per mettere in guardia l'utente perché non dovrebbe inserire nella lista dei ban quei dati. Sotto ci sono i blocchi dove inserire gli IP singoli, il range di IP, gli host name, i Referer e gli User Agent da bannare. Ogni riga deve contenere un singolo indirizzo o nome. Tranne per i range di IP, tutte le altre voci possono contenere l'asterisco come carattere jolly, per esempio "192.140.*" oppure "*.cn".

Gli ultimi due blocchi servono per inserire gli indirizzi IP esclusi dal ban e il codice HTML per il messaggio che comparirà a colui che, tra i bannati, si connetterà e cercherà di visualizzare la pagina.
Il messaggio può essere personalizzato e possiamo inserirci anche delle variabili, come il nome del sito (%SITE_NAME%), l'url (%SITE_URL%) e l'ip (%USER_IP%). Per vedere come verrà visualizzato il messaggio evitando di usare il proprio IP, basta cliccare sul pulsante "Preview Banned Message". Modificando in modo diverso il messaggio, otterremo delle visualizzazioni anche diverse, come in figura.

Figura 6. Messaggi diversi per gli utenti bannati
(clic per ingrandire)


Messaggi diversi per gli utenti bannati

In fondo alla pagina abbiamo le statistiche: vengono indicati tutti gli IP, quante volte un utente bannato ha provato ad accedere alle pagine del sito e l'azione eseguita dal plugin. Le statistiche possono essere resettate.

Comment Spam Trap

Comment spam trap è un plugin che aggiunge due campi di input invisibili: questi campi sono "visti" solo dai bot, i quali analizzano il codice della pagina. Se questi campi vengono compilati il commento viene automaticamente considerato spam. Lo spammer in questo modo cade nella trappola e viene bloccato. Inoltre il plugin blocca anche lo spam che si presenta sotto forma di trackback e invia una notifica via email ogni volta che coglie uno spammer in flagrante.

Per vedere la presenza effettiva dei campi nascosti basta andare in una pagina con inserimento di commenti e guardare il codice sorgente. Supponiamo di avere il nostro sito in locale all'indirizzo http://localhost/wordpress e supponiamo di aprire una pagina dove è possibile inserire un commento. Qui di seguito abbiamo la parte di codice riguardante il form di inserimento del commento e come possiamo leggere ci sono dei campi che nella pagina originale non sono visibili.

<div id="respond">
				<h3 id="reply-title">Lascia un Commento <small><a rel="nofollow" id="cancel-comment-reply-link" href="/wordpress/?p=7#respond" style="display:none;">Annulla risposta</a></small></h3>
									<form action="http://localhost/wordpress/wp-comments-post.php" method="post" id="commentform">
																			<p class="comment-notes">L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati <span class="required">*</span></p>							<p class="comment-form-author"><label for="author">Nome</label> <span class="required">*</span><input id="author" name="author" type="text" value="" size="30" aria-required='true' /></p>

<p class="comment-form-email"><label for="email">Email</label> <span class="required">*</span><input id="email" name="email" type="text" value="" size="30" aria-required='true' /></p>
<p class="comment-form-url"><label for="url">Sito web</label><input id="url" name="url" type="text" value="" size="30" /></p>
												<p class="comment-form-comment"><label for="comment">Commento</label><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea></p>						<p class="form-allowed-tags">È possibile utilizzare questi tag ed attributi <abbr title="eXtensible HyperText Markup Language">XHTML</abbr>:  <code><a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> </code></p>						<p class="form-submit">

							<input name="submit" type="submit" id="submit" value="Commento all'articolo" />
							<input type='hidden' name='comment_post_ID' value='7' id='comment_post_ID' />
<input type='hidden' name='comment_parent' id='comment_parent' value='0' />
						</p>
						
        <input type="text" name="Prove_var_thanks" value="thanks" style="display:none;" />
        <input type="text" name="Prove_var_sorry" value="" style="display:none;" />
        					</form>
							</div><!-- #respond -->

Ti consigliamo anche