Plugin para Detener Spam en Foros

Overview

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 UsersSilenced section of the Discourse Admin.


Installation

Follow these instructions to install this plugin in your Discourse installation.

Note: This plugin’s git clone url is GitHub - singerscreations/discourse-stopforumspam.


Configuration

After installing this plugin in Discourse, you’ll be able to configure the following settings in the SettingsPlugins 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.

33 Me gusta

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.

1 me gusta

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.

2 Me gusta

It’s very effective, but it’s certainly not foolproof.

6 Me gusta

An improvement proposal:

  • Add option to put suspicious users in the review queue directly after login (instead of silencing)
  • Add option to put suspicious users in the review queue after their first posting
  • Add option to the review queue actions: “Delete user and report to SFS”

Certainly works only for forums with little spam volume.

5 Me gusta

Hola, muchas gracias @msinger por este plugin, he estado usando SFS durante años en un foro que no es de Discourse y definitivamente ayuda.

¡La opción de volver a verificar nuevas cuentas después de X horas es una idea fantástica, gracias por agregarla!

Algunas posibles mejoras para este plugin:

  • ¿Es posible hacerlo funcionar desde el principio en la página de registro para que los spammers ni siquiera puedan registrarse?
  • ¿Se podrían implementar umbrales configurables por el administrador para especificar cuántos aciertos en la base de datos de SFS para nombre de usuario, correo electrónico e IP para considerarlo un spammer?
  • Sería bueno tener un botón de administrador para reportar un usuario y sus publicaciones a SFS.

Gracias de nuevo.

1 me gusta

¿Funciona este plugin con la última versión de Discourse?

Noto que StopForumSpam está caído en este momento, mostrando “demasiadas conexiones a la base de datos” - ¿es posible que este plugin sea parte del problema? ¿Podría este plugin aplicar un límite de velocidad, si es que no lo hace ya?

(Y, ¿cómo reacciona este plugin si no puede obtener una buena respuesta del servicio?)

1 me gusta

Sé que la pregunta era de diciembre, pero… creo que fue algo puntual; Stop Forum Spam ha estado funcionando en general.

Este plugin funciona mediante trabajos asíncronos, por lo que no afectará la experiencia del usuario si Stop Forum Spam no está disponible.

2 Me gusta

@msinger Veo que han pasado cinco años desde que te comprometiste con este plugin.

¿Tienes pensado hacer cambios y mejoras a este plugin, o has seguido adelante y es razonable que alguien haga un fork?

¡Gracias!

2 Me gusta

Introduje una nueva configuración en la versión 2.0 llamada Stopforumspam Minimum Entries Found (Entradas Mínimas Encontradas en Stopforumspam). Por defecto, esta configuración está establecida en 1. Puedes aumentar el valor para ajustar el umbral de coincidencias encontradas basándose en el correo electrónico, nombre de usuario o dirección IP.

Además, cuando un usuario es silenciado, la razón ahora incluye el número de ocurrencias.

3 Me gusta

Sí, siempre que permanezcan dentro del alcance del proyecto original. Si buscas expandirte más allá de mi visión inicial, entonces siéntete libre de crear una bifurcación.

3 Me gusta

Si bien no puedo garantizar que nunca se rompa debido al agresivo calendario de lanzamientos de Discourse, funciona completamente con la última versión beta. Actualmente lo estoy ejecutando en todos mis foros con 3.5.0.beta2-dev.

3 Me gusta

Recientemente instalé este plugin, pero no creo que haya detectado a nadie todavía (estoy seguro de que lo hará, ya que con bastante frecuencia vi IPs de nuevos usuarios presentes en stopforumspam).

Cuando se detecta una publicación, ¿va a la cola de revisión?

No, en mi opinión, eso anularía el propósito del plugin, que es básicamente un sistema completamente automatizado y práctico para bloquear spammers confirmados sin tiempo de moderación. Pero puedes buscar en /admin/users/list/silenced y los que fueron silenciados por el plugin muestran la razón como “User was found in StopForumSpam”.

1 me gusta

Excelente, no estaba al tanto de esta página.

¡Parece que el plugin está trabajando duro!

He tenido muchos spammers durante años en mi foro y he intentado varias cosas para minimizar las acciones de los administradores. ¡Confío en que este plugin hará un trabajo increíble, por lo que veo!

2 Me gusta

¿Sin falsos positivos?

Cada cuenta coincidente en stopforumspam, incluso antes de usar este plugin, parecía lo suficientemente sospechosa como para prohibir al usuario.

Así que, confío en esta base de datos porque parece fiable.

2 Me gusta

Nunca me ha dado un falso positivo (es decir, cada vez que encuentra algo, es algo que está en la base de datos SFS).

Una cosa a tener en cuenta es que la API tiene una limitación, y puedes obtener una coincidencia en una dirección de correo electrónico que no coincide exactamente con la dirección de correo electrónico; SFS identificará el dominio como un “dominio tóxico”, pero la API no te lo dice. Los usuarios con direcciones de correo electrónico de uno de esos dominios aparecerán como una coincidencia de correo electrónico, pero no podrás encontrar su correo electrónico exacto en la base de datos SFS realizando una búsqueda.

La base de datos es un esfuerzo comunitario, por lo que existe la posibilidad de que el usuario en realidad no sea un spammer, sino que haya sido identificado por alguien como spammer por alguna razón. Es raro, pero sucede (por eso SFS tiene un proceso de ‘apelación’).

2 Me gusta

Hasta ahora lo tenía configurado para que solo comprobara coincidencias de direcciones de correo electrónico, que es el identificador más único. Las coincidencias de direcciones IP y nombres de usuario son mucho más propensas a ser falsos positivos, por lo que deshabilité esas comprobaciones. Pero ahora que el umbral es configurable, podría establecer un umbral muy alto de, por ejemplo, 30 coincidencias para direcciones IP y quizás nombres de usuario.

Buen punto a tener en cuenta, me tomó mucho tiempo darme cuenta de eso. Aunque, sinceramente, esos “dominios tóxicos” tienen el nombre bien puesto, y cualquier usuario que se registre con uno de esos correos electrónicos casi seguramente tiene malas intenciones de enviar spam o evadir una prohibición por trolling/acoso repetido. Afortunadamente, este plugin solo silencia al usuario, por lo que si de alguna manera fuera un falso positivo, aún pueden contactar al personal con este otro plugin (en mi opinión esencial) habilitado:

1 me gusta