كيفية تحديد محاولات تسجيل الدخول في ووردبريس دون إزعاج المستخدمين الحقيقيين

تعرّف على كيفية ضبط حدود تسجيل الدخول في ووردبريس بما يوقف بوتات القوة الغاشمة تماماً دون حظر المستخدمين الحقيقيين بسبب خطأ إملائي بسيط.

صفحة تسجيل الدخول في موقعك على ووردبريس تتعرض لهجمات البوتات بشكل مستمر. ليس أحياناً، بل باستمرار. في كل ساعة من كل يوم، تحاول سكربتات آلية تجربة تركيبات من أسماء المستخدمين وكلمات المرور على صفحة wp-login.php لديك، أملاً في أن تنجح إحداها. إذا تُرك الأمر دون رقابة، فقد يبطئ موقعك، ويملأ سجلاتك بضوضاء لا فائدة منها، وأحياناً ينجح فعلاً في اختراق كلمات مرور ضعيفة.

الحل الواضح هو تحديد عدد محاولات تسجيل الدخول. لكن إذا نفّذت ذلك بطريقة خاطئة، ستحظر مستخدمين حقيقيين، أو تمنع فريقك عن طريق الخطأ، أو تزعج الناس لدرجة أنهم يتوقفون عن المحاولة. إليك كيفية تحقيق التوازن الصحيح، وهو جزء أساسي من أفضل ممارسات أمان ووردبريس.

لماذا يهم تحديد محاولات تسجيل الدخول

هجمات القوة الغاشمة (brute force) تعتمد على الكم. البوت لا يتعب ولا ييأس. يستمر في التخمين، أحياناً آلاف المرات في الساعة، حتى يجد تطابقاً أو ييأس من موقعك وينتقل إلى هدف آخر.

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

مشكلة قواعد الحظر المتشددة جداً

هنا يبالغ الكثير من أصحاب المواقع في التصحيح. يضبطون حد المحاولات على شيء مثل محاولتين قبل حظر لمدة 24 ساعة، ثم يتساءلون لماذا حُظرت مديرة التسويق لديهم يوماً كاملاً لأنها أخطأت في كتابة كلمة المرور مرتين قبل أن يصحو ذهنها بفعل القهوة.

الإعداد الجيد لتحديد محاولات تسجيل الدخول يوازن بين هدفين:

  • إيقاف البوتات الآلية عن تجربة تركيبات كلمات المرور
  • إعطاء البشر الحقيقيين مساحة لارتكاب خطأ عادي دون عقاب

البشر يخطئون في كتابة كلمات المرور. ينسون أي نسخة من كلمات مرورهم الثلاث استخدموا. يُحظرون من الدخول إلى مدير كلمات المرور الخاص بهم. لا شيء من هذا خبيث، ولا ينبغي أن يعامله إعداد الأمان لديك على هذا الأساس.

ضبط حدود منطقية فعلاً

1. استخدم حد محاولات معقول

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

2. استخدم أوقات حظر تصاعدية

بدلاً من فترة حظر واحدة قاسية، قم بزيادتها تدريجياً:

  • الحظر الأول: 5-10 دقائق
  • الحظر الثاني: 30 دقيقة إلى ساعة
  • الحظر المتكرر: 24 ساعة

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

3. الحظر حسب تركيبة IP واسم المستخدم معاً

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

الحظر حسب اسم المستخدم فقط له مشكلة عكسية. يمكن للمهاجم تجربة أسماء مستخدمين كثيرة من عنوان IP واحد دون أن يُفعّل الحظر أبداً. النهج الأفضل يجمع بين الاثنين: تتبع المحاولات الفاشلة لكل تركيبة IP-اسم مستخدم، بحيث لا يُعاقب الزملاء الحقيقيون بسبب خطأ شخص آخر، لكن البوت الذي يستهدف حساباً معيناً يُوقف فعلاً.

إضافات موصى بها لتحديد محاولات تسجيل الدخول

إذا أردت التعامل مع هذا الأمر على مستوى الإضافات، هناك بعض الخيارات التي تؤدي أداءً جيداً باستمرار:

  • Limit Login Attempts Reloaded - خفيف الوزن، سهل الإعداد، ويتعامل بشكل جيد مع تركيبة IP/اسم المستخدم
  • WP Limit Login Attempts - وظائف مشابهة بواجهة أنظف للمبتدئين
  • Wordfence - يتضمن تحديد تسجيل الدخول كجزء من مجموعة أمان أوسع، مفيد إذا كنت تريد أكثر من هذا الجزء فقط

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

أضف المصادقة الثنائية كطبقة حماية ثانية

تحديد محاولات تسجيل الدخول يبطئ هجمات القوة الغاشمة، لكنه لا يوقف مهاجماً مصمماً يملك بالفعل كلمة مرور مسرّبة من اختراق بيانات في مكان آخر. هنا تأتي أهمية المصادقة الثنائية. حتى لو حصل شخص ما على كلمة المرور الصحيحة، سيظل بحاجة إلى الرمز من هاتفك للدخول.

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

فكّر في نقل الحماية إلى مستوى الاستضافة

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

النهج الأنظف هو إيقاف الطلبات الخبيثة قبل أن تصل إلى ووردبريس أصلاً. جدار حماية تطبيقات الويب (WAF) يمكنه تصفية الجهات المعروفة بالخبث وأنماط الطلبات المشبوهة على مستوى الخادم، بحيث لا يضطر موقعك حتى لمعالجتها. إذا كنت فضولياً حول كيفية عمل هذه الطبقة، تغطي نظرة عامة على WAF لدينا آلية عملها بتفصيل أكبر. بعض شركات الاستضافة تتيح لك أيضاً حظر نطاقات IP معينة مباشرة عبر جدار الحماية، وهو مفيد إذا كنت تلاحظ هجمات متكررة من نفس المصدر.

قائمة تحقق سريعة

  • اضبط حدود المحاولات حول 5، وليس 2 أو 3
  • استخدم توقيت حظر تصاعدي بدلاً من عقوبة واحدة قاسية
  • احظر حسب IP واسم المستخدم معاً، وليس أحدهما فقط
  • أضف المصادقة الثنائية كطبقة احتياطية
  • فكّر في نقل الطلبات الخبيثة إلى مستوى الاستضافة/جدار الحماية للمواقع الأكثر ازدحاماً

تحديد محاولات تسجيل الدخول هو أحد أبسط انتصارات الأمان المتاحة في ووردبريس، ويُعد من أفضل ممارسات أمان ووردبريس التي يسهل تطبيقها. اضبطه بعناية، وسيحظر بهدوء الغالبية العظمى من حركة البوتات دون أن يلاحظ مستخدموك الحقيقيون وجوده أبداً.