Wir hatten kürzlich eine Flut von Registrierungsversuchen mit E-Mail-Adressen, die wie @services.cn aussehen und unsere MTA-Warteschlange als nicht zustellbar füllen.
Discourse unterstützt keine Wildcards in der Liste der blockierten E-Mail-Domains. Daher ist es nicht direkt möglich, ganze Domain-Muster wie @services.cn zu blockieren. Es gibt jedoch mehrere Maßnahmen, die Sie ergreifen können, um diese Spam-Registrierungsangriffe zu reduzieren oder zu verhindern:
Reduzieren Sie „max new accounts per registration IP“
Reduzieren Sie diese Einstellung auf 1 oder eine andere niedrige Zahl, um die Anzahl der neuen Konten zu begrenzen, die von derselben IP-Adresse erstellt werden können. Dies hilft, Massenregistrierungen von einer einzelnen IP zu verhindern und ist während eines Angriffs sehr effektiv.
Aktivieren Sie hCaptcha bei der Registrierung
Fügen Sie Ihrem Anmeldeformular eine CAPTCHA-Herausforderung hinzu, indem Sie das Discourse hCaptcha Plugin aktivieren. Dies erhöht die Reibung für Bots und automatisierte Anmeldungen und ist auf allen gehosteten Plänen verfügbar.
Blockieren Sie bekannte schlechte Domains manuell
Obwohl Wildcards nicht unterstützt werden, können Sie problematische Domains explizit zu Ihrer Liste „blockierte E-Mail-Domains“ hinzufügen.
Fordern Sie die Genehmigung neuer Benutzer an
Aktivieren Sie vorübergehend die Einstellung „Benutzer genehmigen“. Dadurch werden alle neuen Registrierungen zur manuellen Genehmigung in eine Moderationswarteschlange gestellt.
Das ist ein kluger Schachzug! Was war das Wildcard, das funktioniert hat?
Ich frage mich, warum das nicht funktioniert hat? Vielleicht gibt es Argumente für die Unterstützung von Wildcards, obwohl ich mir vorstellen kann, dass dies sehr einfach falsch konfiguriert werden könnte und Ihre Website für niemanden nutzbar wäre!
Ich habe per E-Mail geantwortet, aber meine Antwort hier nicht gesehen, keine Zeit, sie jetzt auszugraben, und die Weboberfläche erlaubt mir nicht, einfach vorformatierten Text einzugeben (ich hasse es!), also müssen Sie raten
@strk, vielleicht bist du nicht mit der Funktionsweise von vorformatiertem Text in Discourse vertraut. Es gibt mehrere Möglichkeiten, dies zu tun, und es ist ziemlich mächtig, wenn man es einmal gelernt hat. Siehe: Posting code or preformatted text
@tobiaseigen gibt es allerdings einen kleinen Fehler: Wenn ich diesen Regex als Text kopiere und in Discourse einfüge, wird er zu /.@service...cn/ verstümmelt (die Backslashes gehen verloren).
Was Sie dort sehen, ist kein Fehler, sondern das beabsichtigte Verhalten von Markdown. Zwei Sternchen um Text herum stellen den Text als kursiv dar. Da er ein @ enthält, wird er als ungültiger @Benutzername angezeigt. Sobald Sie den Regex in Backticks einschließen, wird er als vorformatierter Text angezeigt:
Kursiv mit Benutzername: /.@service\..\.cn/
Vorformatierter Text: /.*@service\\..*\\.cn/
Ja, ich kann das, was Sie beschreiben, mit dem Rich-Text-Editor reproduzieren. Versuchen Sie, zuerst zum Markdown-Editor zu wechseln, dann wird es funktionieren. Ich bin mir nicht sicher, ob man etwas dagegen tun kann.