كيفية منع هجمات DDoS باستخدام Nginx

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

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

يأتي Nginx، وهو نظام خادم شائع جدًا لأجهزة Unix، مزودًا بوظائف مدمجة كافية للحد بشكل كبير من فعالية هجمات DDoS.

فيما يلي بعض الخيارات الفعالة للتعامل مع مثل هذه التهديدات باستخدام Nginx.

كيف يمكن منع هجمات DDoS باستخدام Nginx؟

ملفات التكوين النسخ الاحتياطي

قبل تغيير أي إعدادات، تأكد من عمل نسخة احتياطية سريعة لتكوين الخادم الخاص بك. الأمر التالي يعمل لهذا الغرض:

sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.backup-original

كيفية منع هجمات DDoS باستخدام Nginx

بمجرد الانتهاء، أنت جاهز للمتابعة.

تحقق من حركة المرور

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

إعداد صفحة الحالة

عادةً ما يأتي Nginx مزودًا بوحدة تسمى "Stub Status" (http_stub_status_module)، والتي تسمح بدمج هذا النوع من الوظائف في بيئة الخادم بسهولة تامة. قم أولاً باختباره باستخدام الأمر التالي:

nginx -V

كيفية منع هجمات DDoS باستخدام Nginx

أو استخدم الأمر التالي للعثور عليه بشكل أسرع:

nginx -V 2>&1 | grep -o with-http_stub_status_module

كيفية منع هجمات DDoS باستخدام Nginx

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

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

افتحه وأضف الكود التالي إلى "توجيه http" لتمكين الوحدة، واستبدال معلوماتك الخاصة في "localhost" و"/status_page" و "127.0.0.1".

server {
listen 80;
listen [::]:80;
server_name localhost;
##
# Status Page Settings
##
location /status_page {
stub_status on;
allow 127.0.0.1;
allow ::1;
deny all;
}
}

ملاحظة : ستحتاج إلى امتيازات Sudo لتعديل هذا الملف.

كيفية منع هجمات DDoS باستخدام Nginx

الآن، اختبر التكوين الخاص بك:

sudo nginx -t

كيفية منع هجمات DDoS باستخدام Nginx

إذا كان كل شيء على ما يرام، أرسل إلى الخادم إشارة إعادة التحميل:

sudo systemctl reload nginx

كيفية منع هجمات DDoS باستخدام Nginx

للوصول إلى صفحة الحالة الخاصة بك، قم بزيارة الموقع server_name متبوعًا بـ "/status_page" في متصفح الويب أو باستخدام أداة سطر الأوامر مثل Curl. (وهذا مفيد إذا لم يتم تحديث ذاكرة التخزين المؤقت للمتصفح لديك تلقائيًا). إليك أمر الضفيرة للوصول إلى الصفحة في الأمثلة:

curl localhost/status_page

كيفية منع هجمات DDoS باستخدام Nginx

في المتصفح، يبدو إخراج الأمر أعلاه كما في الصورة التالية.

كيفية منع هجمات DDoS باستخدام Nginx

التحقق من سجلات الوصول

إذا لاحظت حركة مرور غير عادية عند التحقق من صفحة الحالة التي تم تكوينها أعلاه، فقد ترغب في التحقق من سجل الوصول الخاص بالخادم. يمكن العثور على سجل الوصول إلى الخادم على "/var/log/nginx/access.log". يسرد السجل أساليب HTTP المستخدمة وتاريخ/وقت محاولات الوصول ووكيل المستخدم والصفحات التي تم الوصول إليها.

كيفية منع هجمات DDoS باستخدام Nginx

حدود الاتصال

من بين العديد من الأساليب المفيدة لمنع هجمات DDoS التي تستحق التجربة، أحد أبسطها وأكثرها فعالية هو الحد من معدل حركة المرور الواردة.

من الناحية المثالية، يجب عليك تقييد الوصول بما يكفي لمنع الروبوتات الضارة من إرباك الخادم الخاص بك، مع الحفاظ على الأسعار المعقولة. في Nginx، يمكن القيام بذلك باستخدام التوجيهات Limit_req_zone و Limit_req . يقوم التعليمة البرمجية التالية بتعيين قيود الذاكرة والسرعة للاستخدام في أي موقع تم تكوين الخادم الخاص بك لعرضه:

limit_req_zone $binary_remote_addr zone=speedbump:10m rate=10r/s;

تحدد "المنطقة" اسم وسعة (بالميجابايت في هذه الحالة) لمساحة الذاكرة حيث يتم تخزين طلبات المستخدم. يضبط "Rate" إجمالي عدد الطلبات التي سيقبلها Nginx في الثانية (10 طلبات في هذا المثال). فكر في هذا الرمز كقاعدة وما يلي هو استخدام تلك القاعدة:

limit_req zone=speedbump burst=20;

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

كيفية منع هجمات DDoS باستخدام Nginx

قم بإنشاء قائمة سوداء لعناوين IP

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

أضف الكود التالي إلى توجيه الخادم الخاص بك:

location / {
deny 123.123.123.0/28;
# ...
}

حظر الطلبات لملفات معينة

إذا كان هجوم DDoS يستهدف ملفات معينة على الخادم - على سبيل المثال ملف xmlrpc.php على WordPress (هذا ملف مستهدف بشكل شائع في معظم خوادم WordPress)، فيمكنك حظرها جميع المتطلبات الخاصة بها. أضف هذا الرمز إلى توجيه الخادم الخاص بك:

location /xmlrpc.php {
deny all;
}

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

أتمنى أن تكون ناجحا.

اترك تعليقاً

كيفية إزالة إشعار طلب حقوق الطبع والنشر في الزاوية اليمنى من الشاشة على نظام التشغيل Windows 10

كيفية إزالة إشعار طلب حقوق الطبع والنشر في الزاوية اليمنى من الشاشة على نظام التشغيل Windows 10

هل ترى إشعار تفعيل Windows 10 في الزاوية اليمنى من الشاشة؟ سترشدك هذه المقالة إلى كيفية حذف إشعار طلب حقوق الطبع والنشر على نظام التشغيل Windows 10.

تعليمات من AZ حول كيفية تثبيت Windows 10 الإصدار 14393.222

تعليمات من AZ حول كيفية تثبيت Windows 10 الإصدار 14393.222

أصدرت Microsoft مؤخرًا آخر تحديث تراكمي لمستخدمي أجهزة الكمبيوتر التي تعمل بنظام Windows 10 والذي يسمى Build 14393.222. يعمل هذا التحديث الذي تم إصداره لنظام التشغيل Windows 10 بشكل أساسي على إصلاح الأخطاء بناءً على تعليقات المستخدمين وتحسين تجربة أداء نظام التشغيل.

قم بحماية شبكة الكمبيوتر الخاص بك مع Bastion host في 3 خطوات فقط

قم بحماية شبكة الكمبيوتر الخاص بك مع Bastion host في 3 خطوات فقط

هل لديك أجهزة كمبيوتر على شبكتك المحلية تحتاج إلى وصول خارجي؟ يمكن أن يكون استخدام مضيف أساسي كحارس بوابة لشبكتك حلاً جيدًا.

3 طرق لمسح كافة سجلات الأحداث بسرعة في نظام التشغيل Windows 10

3 طرق لمسح كافة سجلات الأحداث بسرعة في نظام التشغيل Windows 10

في بعض الأحيان قد تحتاج إلى حذف سجلات الأحداث القديمة مرة واحدة. في هذا الدليل، سيعرض لك موقع Quantrimang.com 3 طرق لحذف كافة سجلات الأحداث بسرعة في Windows 10 Event Viewer.

كيفية إنشاء مفتاح Windows إذا كانت لوحة المفاتيح غير متوفرة

كيفية إنشاء مفتاح Windows إذا كانت لوحة المفاتيح غير متوفرة

إذا كنت تفضل استخدام لوحة مفاتيح كلاسيكية قديمة، مثل IBM Model M، والتي لا تتضمن مفتاح Windows فعليًا، فهناك طريقة سهلة لإضافة المزيد، عن طريق استعارة مفتاح لا تستخدمه كثيرًا.

كيفية إنشاء وضع خلفية شفافة على نظام التشغيل Windows 10

كيفية إنشاء وضع خلفية شفافة على نظام التشغيل Windows 10

WindowTop هي أداة لديها القدرة على تعتيم جميع نوافذ التطبيقات والبرامج التي تعمل على أجهزة الكمبيوتر التي تعمل بنظام Windows 10. أو يمكنك استخدام واجهة ذات خلفية داكنة على النوافذ.

تساعدك أساليب IP المزيفة على الوصول بشكل مجهول

تساعدك أساليب IP المزيفة على الوصول بشكل مجهول

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

كيفية إيقاف تشغيل شريط اللغة على شريط مهام Windows 8

كيفية إيقاف تشغيل شريط اللغة على شريط مهام Windows 8

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

نصائح لتحسين سرعة الاتصال بالإنترنت من Linksys

نصائح لتحسين سرعة الاتصال بالإنترنت من Linksys

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

كيفية إعداد WEP، WPA، WPA2 لجهاز التوجيه Linksys

كيفية إعداد WEP، WPA، WPA2 لجهاز التوجيه Linksys

يعد الاتصال اللاسلكي أمرًا ضروريًا اليوم، ولهذا السبب، يعد الأمان اللاسلكي ضروريًا لضمان السلامة في شبكتك الداخلية.