The Stop Forum Spam plugin (unofficial) can help weed out human spammers who are able to bypass Discourse’s built-in spam tools (thanks to their awesome human powers). Right after a new user signs up on your forum (before they have time to post), this plugin will check the user’s email address, forum username, and/or IP address (depending on your plugin settings) against the Stop Forum Spam database. If the user is found in this database of known spammers, their user account will be immediately auto silenced in Discourse.
Note: If needed, you can unsilence the user in the Users → Silenced section of the Discourse Admin.
Installation
Follow these instructions to install this plugin in your Discourse installation.
After installing this plugin in Discourse, you’ll be able to configure the following settings in the Settings → Plugins section of the Discourse Admin:
stopforumspam enabled: Enable the Stop Forum Spam plugin. This will auto silence new users who are in the Stop Forum Spam database of known spammers.
stopforumspam check email: Silence new user if email is found in Stop Forum Spam database.
stopforumspam check username: Silence new user if username is found in Stop Forum Spam database.
stopforumspam check ip: Silence new user if IP is found in Stop Forum Spam database.
stopforumspam minimum entries found: User must appear in the Stop Forum Spam database at least this number of times.
stopforumspam recheck users after hours: Number of hours to wait before rechecking new users a second time to make sure they are still not in the Stop Forum Spam database. Set to 0 to disable recheck.
Note: If you have more than one of these check settings enabled, the user will be deemed a spammer as soon as one of them is found in the Stop Forum Spam database.
GitHub Repository
Questions/Comments/Suggestions
While I don’t mind if you reach out to me directly for help, it would be benefit everyone here if you’d post your questions, comments, and/or suggestions below.
I added a new stopforumspam recheck users after hours plugin setting to allow users to be rechecked again after X hours. This will allow more spammers to be cleaned up later when they are not found in the Stop Forum Spam database on the first check.
This is a great idea — however, I would have expected that spammers change their email address each new time they spam so I’m surprised that checking such a database is effective.
Ciao, grazie mille @msinger per questo plugin, uso SFS da anni su un forum non-Discourse e aiuta sicuramente.
L’opzione per ricontrollare i nuovi account dopo X ore è un’idea fantastica, grazie per averla aggiunta!
Alcuni possibili miglioramenti per questo plugin:
È possibile farlo funzionare fin dall’inizio nella pagina di registrazione in modo che gli spammer non possano nemmeno registrarsi?
Si potrebbero implementare soglie configurabili dall’amministratore per specificare quanti “hit” nel database SFS per nome utente, email e IP per considerare un utente uno spammer?
Sarebbe bello avere un pulsante per l’amministratore per segnalare un utente e i suoi post a SFS.
Noto che StopForumSpam è attualmente non disponibile, mostrando “troppe connessioni al database” - è possibile che questo plugin sia parte del problema? Potrebbe questo plugin applicare un limite di frequenza, se non lo fa già?
(E, come reagisce questo plugin se non riesce a ottenere una buona risposta dal servizio?)
Ho introdotto una nuova impostazione nella versione 2.0 chiamata Stopforumspam Minimum Entries Found (Minimo riscontri Stopforumspam). Per impostazione predefinita, questa impostazione è impostata su 1. È possibile aumentare il valore per regolare la soglia per i riscontri trovati in base a email, nome utente o indirizzo IP.
Inoltre, quando un utente viene silenziato, il motivo ora include il numero di occorrenze.
Lo faccio, purché rimangano nell’ambito del progetto originale. Se stai cercando di espanderti oltre la mia visione iniziale, allora sentiti libero di creare un fork.
Anche se non posso garantire che non si romperà mai a causa del programma di rilascio aggressivo di Discourse, è completamente funzionante con l’ultima versione beta. Al momento lo sto eseguendo su tutti i miei forum con 3.5.0.beta2-dev.
Ho installato da poco questo plugin, ma non credo abbia ancora bloccato qualcuno (sono sicuro che succederà, dato che ho visto spesso gli IP di nuovi utenti su stopforumspam).\n\nQuando viene rilevato un post, va nella coda di revisione?
No, secondo me ciò vanificherebbe lo scopo del plugin, che è fondamentalmente un sistema completamente automatizzato e automatico per bloccare gli spammer confermati senza alcun tempo di moderazione. Ma puoi controllare in /admin/users/list/silenced e quelli che sono stati silenziati dal plugin mostrano il motivo come “User was found in StopForumSpam”.
Ho avuto molti spammer per anni sul mio forum e ho provato varie cose per cercare di minimizzare le azioni degli amministratori. Sono fiducioso che questo plugin farà un lavoro straordinario, da quello che vedo!
Non l’ho mai fatto dare un falso positivo (cioè, ogni volta che trova qualcosa, è qualcosa che è nel database SFS).
Una cosa da sapere è che l’API ha una limitazione, e puoi ottenere una corrispondenza sull’indirizzo e-mail che non corrisponde esattamente - SFS identifica il dominio come un “dominio tossico”, ma l’API non te lo dice. Gli utenti con indirizzi e-mail provenienti da uno di quei domini appariranno come corrispondenza e-mail, ma tu non troverai il loro indirizzo e-mail esatto nel database SFS cercando.
Il database è un risultato di un impegno comunitario, quindi ci sarà la possibilità che l’utente non sia effettivamente uno spammer, ma sia stato identificato come spammer da qualcuno per qualche motivo. È raro, ma succede (ed è per questo che SFS ha un processo di “appello”).
Fino ad ora l’avevo configurato per controllare solo le corrispondenze degli indirizzi email, che è l’identificatore più univoco. Le corrispondenze di indirizzi IP e nomi utente hanno molte più probabilità di essere falsi positivi, quindi ho disabilitato quei controlli. Ma ora che la soglia è configurabile, potrei impostare una soglia molto alta di circa 30 corrispondenze per gli indirizzi IP e forse per i nomi utente.
Buon punto da tenere a mente, mi ci è voluto molto tempo per capirlo. Anche se onestamente quei “domini tossici” hanno un nome appropriato, e qualsiasi utente che si registra con una di quelle email ha quasi sicuramente cattive intenzioni di spam o di eludere un ban per trolling / molestie ripetute. Fortunatamente questo plugin silenzia solo l’utente, quindi se fosse in qualche modo un falso positivo può comunque contattare lo staff con questo altro plugin (IMHO essenziale) abilitato: