Tipps zur Verhinderung von Spam

:bookmark: This documentation provides a comprehensive guide on preventing spam in Discourse forums, and includes information about various settings and tools designed to help maintain a spam-free community environment.

:person_raising_hand: Required user level: Administrator

On most forums spam is rare. However, if you’re having problems with spam on your site, Discourse comes with numerous tools to help you automatically prevent spam.

The following guide offers some recommendations on how you can help prevent spam, while still maintaining a positive and welcoming environment for your community.

Spam Detection with Discourse AI

AI Spam Detection is one of the best Discourse features for automated spam detection. Unlike other tools, it can automatically block users and posts based on preconfigured rules. AI Spam Detection is available to all users on Discourse hosting, and on self-hosted sites with an LLM configured.

Benefits of AI Spam Detection include:

  • Automation: No manual intervention is needed to block obvious spam.
  • Customizability: You can tailor it to your community’s unique requirements.
  • Scalability: Works well even when communities are under heavy spam attacks.
  • Broad compatibility: Free (on Discourse hosting) and budget-friendly LLMs like GPT-4, Claude 3.5, and Gemini Flash can handle spam detection effectively.

Setting up AI spam detection

:megaphone: This is now default turned on for Starter and Standard customers

Simply turn it on in Admin settings → plugins → AI → Spam Handling (details here).

By default it uses a prompt that Discourse has tailored for our sites, but you may add custom instructions specific to your site.

Example tailored prompt

:information_source: With Discourse AI you can also use the creative AI bot to generate tailored prompts that are specific to your site’s needs.

Default Trust Levels

The default trust level for new users on your site can be adjusted on the .../admin/site_settings/category/trust page, however, we recommend keeping the default trust level set to 0.

If you’ve modified the value of this setting, we strongly recommend changing it back to 0: new user, as changing this setting can put your site at serious risk for spam, due to the way that trust levels interact with Discourse’s spam related settings.

Spam Related Site Settings

:warning: Unless you are specifically having trouble with spam, we recommend keeping the following settings at their default values.

Discourse has several spam related site settings that you can access on your site’s .../admin/site_settings/category/spam page.

These settings can be adjusted to increase or decrease the sensitivity of spam detection, and the strictness of the consequences associated with posting spam.

The following are some of the more commonly adjusted spam related settings that have a notable impact on how spam is handled on a site.

The default values for all settings are shown below.

Hiding Posts

The hide post sensitivity and cooldown minutes after hiding posts settings control the likelihood that a flagged post will be automatically hidden by Discourse, and how long a user must wait before they can edit a flagged and hidden post.

Silencing New Users

Discourse has a num users to silence site setting, which will automatically silence a new user if they receive a certain number of spam flags.

By default this is set to 3, so you may want to consider lowering this if you’re consistently having problems with spam coming from the same user(s).

Limiting Links

Discourse limits the number of posts a new user can make that contain links to an outside domain with the newuser spam host threshold setting. If new users on your site are frequently spamming links to the same domain, you may want to consider lowering the value of this setting.

Limiting IP Addresses

Discourse limits the number of new accounts a user can make from any given IP address. If you’re finding that problematic users on your site are repeatedly creating accounts to spam your site, you could consider lowering this from the default value.

There’s also a flag sockpuppets checkbox that you can enable to prevent users from creating multiple accounts and then commenting on the same topic:

Additionally, you can manually look up the IP addresses of problematic users on their admin page under the Last IP Address and Registration IP Address fields, and delete other accounts associated with the same IP address.

Or consider blocking IP addresses that spammers are using on the “Logs → Screened IPs” page (.../admin/logs/screened_ip_addresses):

Adjusting Flag Requirements

By default, a topic needs to be flagged by 5 unique users before Discourse will automatically suspending posting to that topic.

You can adjust the num flaggers to close topic site setting to raise or lower the number of flaggers required to suspend posting on a topic, and adjust the auto close topic sensitivity setting to change the likelihood that the topic in question will get automatically closed instead.

Watched Words

Watched Words are another great feature for helping block or limit posts that contain words, phrases, or URL links that spammers might be repeatedly using.

Considering adding some “Blocked” or “Silence” Words to your site if you’re finding that spammers are frequently using the same types of text in their posts.

For a more advanced use of Watched Words, you could also consider Using Regex with Watched Words.

Increase Trust Level Requirements

If you’re finding that spam is coming mainly from TL0 users, you may also want to adjust some of the trust level settings to make it harder to get to TL1:

hCaptcha Plugin

The Discourse hCaptcha plugin aims to enhance security and bot protection by integrating hCaptcha into the local sign-up form.

:sparkles: On all Discourse hosted sites, this plugin is automatically included.

Additional Steps

It’s important to understand why users are spamming your site. Are they’re bored, malicious, or looking to promote themselves?

Suggestions for dealing with The Difficult User, along with a variety of other moderation topics can be found in our Discourse Moderation Guide, so you may want to read through this guide for some additional ideas regarding moderating your site.

Outside of the above, ramping up your moderation team for the short term, so that you have full coverage is another good approach to combatting spam. The key is to wear the problem users down so they get bored and move on.

If you’re continually having problems with spam after going through this guide, you could also consider placing all or some posts from new users into the review queue with the approve post count, approve unless trust level, or approve new topics unless trust level settings:

However, it’s important to make sure you have enough moderators at hand to handle this, as this can have the potential make it difficult for new users to start interacting with the site if posts go unapproved.

Last edited by @Saif 2025-03-13T15:11:05Z

Check documentPerform check on document:
17 „Gefällt mir“

Ich kann nicht für alle Foren sprechen, aber in einem Forum, in dem ich früher TL3 war, gab es mindestens einen Spam-Beitrag, der noch online war, als ich mich zum ersten Mal am Tag in meinen beobachteten Kategorien anmeldete. Und auf dem Forum, auf dem ich derzeit Moderator bin, erhalten wir durchschnittlich etwa 2 Spam-Beiträge pro Tag. Basierend darauf denke ich, dass es auf vielen Foren einigermaßen üblich ist.

5 „Gefällt mir“

Ein sehr nützlicher regulärer Ausdruck ist \\d{3}-\\d{4}|[\\w+\\-.]+@[a-z\\d\\-]+(\\.[a-z\\d\\-]+)*\\.[a-z]+, der E-Mail-Adressen und Telefonnummern blockiert. Vergessen Sie nicht, die Einstellungen zu aktivieren - posting - „watched words regular expressions“.

7 „Gefällt mir“

Hey :wave:

Ich habe diese Tipps in meinem Forum sehr gut genutzt, also… vielen Dank! :heart:

Gibt es eine Einstellung, die aktiviert werden kann, um nur neue Benutzer, die sich von einer gmail.com-Domain anmelden, in die Überprüfungswarteschlange zu senden?

Derzeit werden alle neuen Benutzer zur Überprüfung in die Warteschlange gestellt, aber ich habe festgestellt, dass die Mehrheit der Spam-Benutzer diejenigen sind, die mit einer Gmail-E-Mail-Adresse erstellt wurden. Nur diese in die Überprüfungswarteschlange zu senden, würde die Last und die Überprüfungszeit für mich zumindest reduzieren :sweat_smile:

1 „Gefällt mir“

@SaraDev Weißt du, ob das möglich ist? Ich würde es auch gerne wissen, da es sehr hilfreich wäre, nicht nur IPs, sondern auch bestimmte Domains zu blockieren!

1 „Gefällt mir“

Es gibt keine Kernfunktion von Discourse, um Beiträge nur von Benutzern einer bestimmten Domain (z. B. gmail.com) an die Überprüfungswarteschlange zu senden.
Die nächstgelegene verwandte Funktion ist die Website-Einstellung Auto-Approve Email Domains, die es bestimmten E-Mail-Domains ermöglicht, den manuellen Benutzergenehmigungsprozess zu umgehen, indem Benutzer aus diesen Domains automatisch genehmigt werden.
Es gibt auch Einstellungen für blocked email domains und allowed email domains, die eine Möglichkeit bieten, die Registrierung von Benutzern auf Ihrer Website basierend auf ihren E-Mail-Domains einzuschränken oder zu steuern:
Diese Einstellungen würden jedoch alle erfordern, dass die Einstellung must approve users aktiviert ist, und sie wirken sich nur auf Benutzer aus, die sich anfänglich auf einer Website registrieren, und nicht auf die Interaktion zwischen der Erstellung von Beiträgen und der Überprüfungswarteschlange.
Als Workaround könnten Sie jedoch Groups verwenden, um eine ähnliche Funktionalität zu erreichen. Sie könnten beispielsweise eine benutzerdefinierte Gruppe erstellen und Benutzer, die sich mit einer bestimmten E-Mail-Adresse registrieren, automatisch zur Gruppe hinzufügen. Anschließend könnten Sie diese Gruppe zur Einstellung approve unless allowed groups und approve new topics unless allowed groups hinzufügen.


Mit dieser Art von Einrichtung könnten Sie effektiv die Überprüfungswarteschlange für Benutzer mit einer bestimmten Domain umgehen und gleichzeitig andere Beiträge nach Wunsch an die Überprüfungswarteschlange senden.

2 „Gefällt mir“

Hallo, ich wollte fragen, ob es möglich ist, ein Captcha für die Themen- und/oder Beitragserstellung zu erzwingen?

Ich weiß es nicht, aber was hilft es, wenn ein Bot das Captcha beim Anmelden umgehen kann? Dann kann er dasselbe beim Veröffentlichen tun.

Stimmt, aber es scheint Captcha-Unterstützung für die Registrierung zu geben, daher habe ich mich gefragt, ob dasselbe für die Themen-/Beitragserstellung gilt.

Wir haben in letzter Zeit eine Reihe von Kunden erlebt, die von großen Spam-Angriffen betroffen waren, und was sie alle gemeinsam hatten, war, dass sie eine oder mehrere Kategorien für jeden geöffnet hatten - erstellen, wodurch alle Vertrauensstufenbeschränkungen umgangen wurden.

Für erfahrene Discourse-Administratoren ist es offensichtlich, dass dies eine schlechte Idee ist, aber für weniger erfahrene Personen ist es das nicht. Daher könnte es eine gute Idee sein, das (für uns) Offensichtliche zu sagen und dies zum Startbeitrag des Themas hinzuzufügen.

7 „Gefällt mir“

In letzter Zeit haben wir es mit Spammern zu tun, die sich automatisch registrieren und dann neue Themen mit KI-generierten Inhalten erstellen, die wie echte Anfragen nach Ratschlägen aussehen, aber Amazon-Affiliate-Links enthalten. Sie tarnen diese Links normalerweise mit verschiedenen URL-Verkürzungs-Engines. Sie können auf Antworten reagieren und sogar auf lustige Weise in PM chatten. Hat jemand Erfahrungen damit gemacht? Ich frage mich, ob es, da diese Versuche vollständig automatisiert zu sein scheinen, viele andere gezielte Discourse-Foren geben würde. Haben Sie Ratschläge für eine Strategie, um sie loszuwerden?

1 „Gefällt mir“

Hallo @Overgrow,

Hier sind ein paar Ideen, die Sie hier ausprobieren könnten, um dies zu verhindern:

  • Verwenden Sie Discourse AI - KI-Triage, um Spamerkennung in Ihrer Community einzurichten, um diese Art von Inhalten zu erkennen.
  • Fügen Sie URL-Shortener und Muster von Amazon-Affiliate-Links zu Ihrer blockierten Überwachte Wörter-Liste hinzu.
  • Senken Sie den Schwellenwert für Spam bei neuen Benutzern und erhöhen Sie die Anforderungen für TL1.
  • Reduzieren Sie maximale neue Konten pro Registrierungs-IP und aktivieren Sie Sockenpuppen kennzeichnen.
  • Verwenden Sie das Discourse hCaptcha-Plugin, um automatisierte Spam-/KI-Registrierungen auf Ihrer Website zu verhindern.
  • Erwägen Sie, alle Inhalte neuer Benutzer in die Überprüfungswarteschlange zu stellen, bis der Angriff nachlässt, indem Sie Folgendes anpassen:
    • Beitraganzahl genehmigen
    • genehmigen, es sei denn, Vertrauensstufe
    • neue Themen genehmigen, es sei denn, Vertrauensstufe

Der Ansatz hier wird ähnlich sein wie bei der allgemeinen Spam-Prävention, mit einem stärkeren Fokus speziell auf die verkürzten URLs und KI-generierten Inhalte.

Für Ihren Fall hier könnten Sie versuchen, eine KI-Eingabeaufforderung speziell zur Erkennung von KI-Inhalten zu verwenden, wie die folgende:

Sie sind ein Spam-Erkennungssystem. Analysieren Sie den folgenden Inhalt und Kontext.

Hinweise:
- Antworten müssen für den Diskussionsfaden relevant bleiben.
- Markieren Sie als SPAM, wenn der Inhalt irrelevant, werblich oder automatisiert ist.
- Betrachten Sie Beiträge neuer Benutzer mit Links als potenziellen SPAM, es sei denn, sie sind ausdrücklich themenrelevant.

Achten Sie auf Inhalte, die authentisch erscheinen, aber unnatürliche Muster aufweisen.
Suchen Sie nach Texten mit seltsamer Formulierung, übermäßiger Formalität gemischt mit
lässiger Sprache oder generischen Ratschlägen, die nicht ganz zum Kontext passen.
Kennzeichnen Sie Inhalte, die versteckte Affiliate-Links enthalten, insbesondere wenn der Beitrag
darauf ausgelegt zu sein scheint, natürlich zu Produktempfehlungen zu führen.

Achten Sie besonders auf diese Warnsignale:
1. Inhalte, die als echte Ratschlagsanfragen getarnt sind, aber werbliche Elemente enthalten
2. Beiträge, die ein Problem vorstellen und dann spezifische Produkte als Lösungen vorschlagen
3. Das Vorhandensein von URL-Shortenern (bit.ly, tinyurl, t.co, goo.gl usw.), die Affiliate-Links verschleiern können
4. Amazon-Produktlinks oder -referenzen, insbesondere mit Affiliate-Parametern (tag=, ref=, affiliate=)
5. Inhalte, die nach Empfehlungen zu fragen scheinen, aber subtil auf bestimmte Produkte abzielen
6. Künstliche Textqualität – übermäßig formelle Sprache gemischt mit lockeren Ausdrücken oder ungeschickter Struktur
7. Neue Konten, die Inhalte mit einem der oben genannten Muster posten

Antworten Sie nur mit "SPAM" oder "NICHT SPAM".
3 „Gefällt mir“

Habe in letzter Zeit viele Probleme mit Bot-Konten. Ich musste die Registrierung neuer Benutzer zum zweiten Mal deaktivieren. Gestern musste ich etwa 50 Bot-Konten mit ungefähr 30 Spam-Posts löschen. Ich habe bereits hcaptcha mit einem schwierigen Rätsel aktiviert, aber das hat sie nicht gestoppt. Ich war auf 3.5.0, habe aber gerade nach dem Angriff auf 3.6.0 aktualisiert. Wir erlauben bereits keine Links mehr auf Vertrauensstufe 0 und benötigen 30 Beiträge, bevor wir Links erlauben, aber diese Beiträge sind nur Textwände über Reisebüros und anderen zufälligen Unsinn. Ich hatte auch KI-Konten und Beiträge, die sich auf tatsächliche Foreninhalte beziehen, aber keinen Sinn ergeben. Diese sind für unsere Benutzerbasis einigermaßen unterhaltsam, aber trotzdem wollte ich KI nicht im Forum aktivieren, aber ich glaube, ich habe alle anderen Optionen ausgeschöpft. Allerdings erhalte ich diese Nachricht:

Aber ich sehe nirgends, wo ich diese Konfiguration hinzufügen kann?

Vor allem, während die KI vielleicht bei Spam hilft, glaube ich nicht, dass die Aktivierung dieser Funktion die Erstellung von Bot-Konten an sich verhindert, oder irre ich mich?

1 „Gefällt mir“

Wenn approve post count auf 1 gesetzt ist. Müssen diese dann noch geändert werden?

Ich kenne die Antwort auf diese Frage ehrlich gesagt nicht.