إضافة توقف فورم سبام

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 إعجابًا

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)

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)

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

6 إعجابات

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 إعجابات

مرحباً، شكراً جزيلاً @msinger على هذه الإضافة، لقد كنت أستخدم SFS لسنوات في منتدى غير Discourse وهي مفيدة بالتأكيد.

خيار إعادة التحقق من الحسابات الجديدة بعد X ساعات فكرة رائعة، شكراً لإضافتها!

بعض التحسينات الممكنة لهذه الإضافة:

  • هل من الممكن جعلها تعمل منذ البداية في صفحة التسجيل حتى لا يتمكن المخربون من التسجيل؟
  • هل يمكن تنفيذ حدود قابلة للتكوين للمسؤول لتحديد عدد مرات الظهور في قاعدة بيانات SFS لاسم المستخدم والبريد الإلكتروني وعنوان IP لاعتبارهم مخربين؟
  • سيكون من الجيد وجود زر للمسؤول للإبلاغ عن مستخدم ومنشوراته إلى SFS.

شكراً مرة أخرى.

إعجاب واحد (1)

هل تعمل هذه الإضافة مع أحدث إصدار من discourse؟

ألاحظ أن StopForumSpam معطل حاليًا، ويظهر “الكثير من اتصالات قاعدة البيانات” - هل من الممكن أن يكون هذا المكون الإضافي جزءًا من المشكلة؟ هل يمكن لهذا المكون الإضافي تطبيق حد للمعدل، إذا لم يكن كذلك بالفعل؟

(وكيف يتفاعل هذا المكون الإضافي إذا لم يتمكن من الحصول على استجابة جيدة من الخدمة؟)

إعجاب واحد (1)

أعلم أن السؤال كان في ديسمبر، ولكن… أعتقد أن ذلك كان استثناءً؛ كان Stop Forum Spam يعمل بشكل عام.

تعمل هذه الإضافة عبر مهام غير متزامنة، لذلك لن تؤثر على تجربة المستخدم إذا كان Stop Forum Spam معطلاً.

إعجابَين (2)

@msinger أرى أنه قد مر خمس سنوات منذ أن قمت بالالتزام بهذا المكون الإضافي.

هل لديك أي فكرة عن إجراء تغييرات وتحسينات على هذا المكون الإضافي، أم أنك انتقلت ومن المعقول أن يقوم شخص ما بعمل نسخة منه؟

شكرا!

إعجابَين (2)

لقد قدمت إعدادًا جديدًا في الإصدار 2.0 يسمى الحد الأدنى للإدخالات الموجودة في Stopforumspam. بشكل افتراضي، يتم تعيين هذا الإعداد على 1. يمكنك زيادة القيمة لضبط العتبة للمطابقات الموجودة بناءً على البريد الإلكتروني أو اسم المستخدم أو عنوان IP.

بالإضافة إلى ذلك، عندما يتم إسكات مستخدم، يتضمن السبب الآن عدد مرات الظهور.

3 إعجابات

لدي، طالما بقيت ضمن نطاق المشروع الأصلي. إذا كنت تتطلع إلى التوسع إلى ما وراء رؤيتي الأولية، فلا تتردد في إنشاء نسخة.

3 إعجابات

بينما لا يمكنني ضمان أنها لن تتعطل أبدًا بسبب جدول الإصدارات العدواني لـ Discourse، إلا أنها تعمل بكامل طاقتها مع أحدث إصدار تجريبي. أقوم حاليًا بتشغيلها على جميع منتدياتي باستخدام 3.5.0.beta2-dev.

3 إعجابات

لم أقم بتثبيت هذه الإضافة مؤخرًا، لكنني لا أعتقد أنها اكتشفت أي شخص بعد (أنا متأكد من أنها ستكتشف، حيث رأيت في كثير من الأحيان عناوين IP لمستخدمين جدد على stopforumspam).\n\nعند اكتشاف منشور، هل يذهب إلى قائمة المراجعة؟

لا، في رأيي هذا من شأنه أن يقوض الغرض من المكون الإضافي، وهو في الأساس نظام آلي بالكامل لحظر البريد العشوائي المؤكد دون أي وقت للإشراف. ولكن يمكنك البحث تحت /admin/users/list/silenced وأولئك الذين تم إسكاتهم بواسطة المكون الإضافي يظهرون السبب على أنه “تم العثور على المستخدم في StopForumSpam”.

إعجاب واحد (1)

ممتاز، لم أكن على علم بهذه الصفحة.

يبدو أن المكون الإضافي يعمل بجد!

لقد واجهت العديد من مرسلي البريد العشوائي لسنوات في منتدياتي وجربت أشياء مختلفة لمحاولة تقليل إجراءات المسؤول. أنا واثق من أن هذا المكون الإضافي سيقوم بعمل رائع، مما أراه!

إعجابَين (2)

لا إيجابيات خاطئة؟

كل حساب مطابق على stopforumspam، حتى قبل استخدام هذا المكون الإضافي، بدا مشبوهًا بما يكفي لحظر المستخدم.

لذلك، أنا أثق فقط في هذه قاعدة البيانات لأنها تبدو موثوقة.

إعجابَين (2)

لم أواجه مطلقًا حالة إعطاء نتيجة إيجابية كاذبة (أي، في كل مرة يجد فيها شيئًا، هو شيء موجود في قاعدة بيانات SFS).

شيء واحد يجب أن تكون على دراية به هو أن واجهة برمجة التطبيقات لديها قيود واحدة، ويمكنك الحصول على تطابق على عنوان بريد إلكتروني لا يتطابق تمامًا مع العنوان في قاعدة البيانات - ستقوم SFS بتحديد النطاق على أنه “نطاق سام”، ولكن واجهة برمجة التطبيقات لا تخبرك بذلك. المستخدمون الذين يمتلكون عناوين بريد إلكتروني من أحد تلك النطاقات سيظهرون كتطابق بريد إلكتروني، لكنك لن تجد البريد الإلكتروني الدقيق الخاص بهم في قاعدة بيانات SFS عند البحث.

قاعدة البيانات هي جهد مجتمعي، لذلك ستكون هناك فرصة ألا يكون المستخدم بالفعل مرسل بريد عشوائي، لكن تم تحديده بواسطة شخص ما على أنه مرسل بريد عشوائي لسبب معين. الأمر نادر، لكنه يحدث (لهذا السبب لدى SFS عملية ‘استئناف’).

إعجابَين (2)

حتى الآن، قمت بتكوينه للتحقق فقط من تطابقات عنوان البريد الإلكتروني، وهو المعرف الأكثر تميزًا. تطابقات عنوان IP واسم المستخدم أكثر عرضة لنتائج إيجابية خاطئة، لذا قمت بتعطيل تلك التحققات. ولكن الآن بعد أن أصبح الحد قابلاً للتكوين، قد أقوم بتعيين حد عالٍ جدًا مثل 30 تطابقًا لعناوين IP وربما أسماء المستخدمين.

نقطة جيدة يجب وضعها في الاعتبار، لقد استغرقت وقتًا طويلاً لفهم ذلك. على الرغم من أن هذه “النطاقات السامة” سميت بحق، وأي مستخدم يسجل بعنوان بريد إلكتروني منها لديه بالتأكيد نوايا سيئة في البريد العشوائي أو التهرب من حظر بسبب المضايقات المتكررة. لحسن الحظ، هذه الإضافة تقوم فقط بإسكات المستخدم، لذلك إذا كان لديهم نتيجة إيجابية خاطئة بطريقة ما، فلا يزال بإمكانهم الاتصال بالموظفين مع تمكين هذه الإضافة الأخرى (التي أعتقد أنها ضرورية):

إعجاب واحد (1)