إعداد جدار الحماية للخادم هو عملية فتح المنافذ الضرورية فقط وإغلاق جميع الوصولات غير الضرورية؛ حيث يشكل أول طبقة دفاع ضد هجمات DDoS، والتجريب القسري، وحركة المرور الضارة من الروبوتات. الهدف العملي هو تقليل وصول SSH، وفتح خدمات الويب بشكلٍ منظم، وتقييد الطلبات المشبوهة، ومراقبة السجلات، وإذا أمكن، تصفية حركة المرور باستخدام طبقات حماية مثل CDN/WAF قبل وصولها إلى الخادم.
عند فتح خادم الويب على الإنترنت، يمكنك مواجهة عمليات فحص المنافذ، ومحاولات SSH، والروبوتات التي تستغل الثغرات، ووكالات المستخدمين المزيفة في غضون دقائق. بالنسبة للخوادم التي تعمل على WordPress أو التجارة الإلكترونية أو اللوحات أو واجهات برمجة التطبيقات أو الألعاب، فإن جدار الحماية ليس خيارًا تقنيًا فحسب، بل هو ضروري لاستمرارية الخدمة. في هذا الدليل، سنقوم بإنشاء بنية جدار حماية خطوة بخطوة للخوادم التي تعمل بنظام Linux؛ وسنبحث في UFW وfirewalld وnftables وFail2ban، بالإضافة إلى نهج تقليل هجمات DDoS وجدار حماية تطبيق الويب.
لنبدأ بحقيقة مهمة: لا يمكن لجدار الحماية المحلي وحده إيقاف هجمات DDoS الكبيرة. عندما تصل هجمات بحجم 20 Gbps، أو 80 Gbps، أو أكبر إلى مركز البيانات أو بنية الشبكة، يمكن أن تملأ الحزم عرض النطاق الترددي الخاص بك قبل أن تصل إلى مجموعة القواعد في نظام التشغيل الخاص بك. لذلك، فإن النهج الصحيح هو الأمان المتعدد الطبقات: يجب أن تعمل الحماية من DDoS على مستوى مزود الخدمة، مع CDN/WAF، وجدار الحماية الخاص بنظام التشغيل، وتقييد معدل التطبيق، وتحليل السجلات بانتظام. يمكن الإشارة إلى صفحة حلول خادم VPS و VDS Hostragons لاختيار البنية التحتية المناسبة، وصفحة باقات استضافة الويب Hostragons للاطلاع على خيارات الاستضافة الآمنة على جانب الموقع.
ما هي وظيفة جدار الحماية للخادم؟
جدار الحماية للخادم هو طبقة أمان تقوم بفلترة حركة المرور الشبكية بناءً على عنوان IP المصدر، وعنوان IP الهدف، والمنافذ، والبروتوكول، وحالة الاتصال، وفي بعض الحالات، خصائص الحزم. على سبيل المثال البسيط؛ يجب أن تبقى المنافذ 80 و443 مفتوحة لموقعك على الويب، ولكن يجب أن تبقى منفذ قاعدة البيانات 3306 مغلقة على الإنترنت. من الأمان أكثر أن تسمح بالوصول إلى المنفذ 22 الخاص بـ SSH فقط من عنوان IP الخاص بمكتبك بدلاً من السماح للجميع بتجربته.
الهدف الأساسي لجدار الحماية ليس هو القضاء على جميع الهجمات بشكل سحري. الهدف الحقيقي هو تقليل سطح الهجوم. كلما كان سطح الهجوم أصغر، كلما كانت الخيارات التي سيجربها المهاجم أقل. على سبيل المثال، قد يتم فتح SSH، وواجهة الويب، وخدمة البريد، وقاعدة البيانات، ووكلاء المراقبة، وخدمات الاختبار كلها في وقت واحد على خادم Linux جديد. كل واحد من هؤلاء ينتج مخاطرة مختلفة. يعمل جدار الحماية المصمم بشكل جيد وفقًا لمبدأ "الرفض افتراضيًا، والسماح بما هو مطلوب".
فهم هجمات DDoS وحركة المرور من الروبوتات
لماذا تعتبر هجمات DDoS مختلفة؟
هجوم DDoS، أو هجوم حجب الخدمة الموزع، يهدف إلى جعل الخدمة المستهدفة غير قابلة للوصول من خلال حركة مرور كثيفة من مصادر متعددة. يمكن أن تملأ الهجمة عرض النطاق الترددي في بعض الأحيان، أو تستهلك موارد CPU وRAM للخادم في أحيان أخرى، أو تحفز عمليات مكلفة على مستوى التطبيق. على سبيل المثال، قد يتعذر على خادم تطبيق صغير يستقبل 50,000 طلب HTTP في الثانية الاستجابة بسبب PHP-FPM أو Node.js أو تجمع اتصالات قاعدة البيانات حتى لو لم يكن خط الشبكة مشغولاً.
هل تكون الروبوتات دائمًا ضارة؟
لا. الروبوتات مثل Googlebot وBingbot وبعض الروبوتات المراقبة تكون مفيدة. ومع ذلك، تقوم الروبوتات الضارة بعمليات فحص لوحات التحكم، والبحث عن الأدلة المفتوحة، وسبام النماذج، ونسخ المحتوى، واستغلال XML-RPC، وإنشاء التسجيلات المزيفة، ومحاولات تسجيل الدخول. لذلك، فإن الهدف في إدارة الروبوتات ليس هو حظر جميع الروبوتات، بل تمييزها وفقًا للسلوك. تشير معدلات الخطأ العالية، والعدد الكبير من الطلبات في فترة زمنية قصيرة، والعناوين التي لا تتصرف كمتصفح حقيقي، وأنماط URL المشبوهة إلى إشارات هامة.
قائمة التحقق قبل البدء في الإعداد
أكبر خطر عند كتابة قاعدة جدار الحماية على خادم مباشر هو أن تغلق على نفسك من الخادم. لذلك، يجب إجراء بعض التحضيرات قبل القيام بأي تغييرات. توفر قائمة التحقق أدناه نهجًا آمنًا شائع الاستخدام في بيئات الإنتاج.
- لا تغلق جلسة SSH النشطة؛ قم بإجراء اختبار باستخدام طرفية ثانية.
- تأكد من أن مزود الخدمة الخاص بك يوفر الوصول إلى وحدة التحكم أو VNC أو استعادة الوصول.
- قم بإدراج المنافذ المفتوحة الحالية: تحقق من خرج ss -tulpn أو netstat -tulpn.
- قم بتدوين المنافذ التي تستخدمها خدمات الويب والبريد وDNS وقاعدة البيانات واللوحة والمراقبة.
- إذا كنت تستخدم IPv6، خطط أيضًا لقواعد جدار الحماية الخاصة بـ IPv6.
- قم بتطبيق قواعد السماح أولًا، ثم قواعد الرفض.
- تأكد من أن مجموعة القواعد دائمة؛ يجب ألا تضيع عند إعادة تشغيل الخادم.
على سبيل المثال، في خادم نموذجي يستضيف موقع ويب، يجب أن تكون المنافذ المفتوحة للخارج غالبًا 80 و443 ومنفذ SSH محدود. إذا لم يكن خادم البريد يعمل، فلا حاجة أن تكون المنافذ مثل 25 و465 و587 و993 مفتوحة. إذا كانت قاعدة البيانات تُستخدم فقط من داخل نفس الخادم، يجب أن تظل المنافذ 3306 أو 5432 مغلقة على العالم الخارجي.
أي أداة لجدار الحماية يجب أن تختار؟
يوجد في عالم Linux العديد من الأدوات، والكثير منها يدير نفس بنية الفلترة الأساسية بطرق مختلفة من حيث سهولة الاستخدام. للمبتدئين، تعتبر UFW بسيطة وسريعة. في الأنظمة المستندة إلى Red Hat، يعتبر firewalld شائعًا. في السيناريوهات الأكثر تقدمًا، توفر nftables بنية حديثة ومرنة. تسهل الجدول أدناه عملية الاختيار.
| الأداة | الاستخدام الأمثل | المزايا | نقطة يجب أخذها في الاعتبار |
|---|---|---|---|
| UFW | خوادم الويب البسيطة المستندة إلى Ubuntu وDebian | بنية سهلة، تثبيت سريع | قد تواجه قيودًا في مجموعات القواعد المعقدة |
| firewalld | AlmaLinux وRocky Linux وCentOS Stream وRHEL | منطق المناطق، قواعد دائمة، ملفات تعريف الخدمة | يجب فهم الفرق بين runtime وpermanent جيدًا |
| nftables | أمان الشبكة المتقدم على Linux | حديث، عالي الأداء، مرن | يمكن أن يؤدي كتابة قاعدة خاطئة إلى انقطاع الوصول |
| مجموعات أمان السحابة | VPS، خوادم السحابة، وبيئة مراكز البيانات | تقوم بتصفية الحركة قبل وصولها إلى الخادم | يجب استخدامها بجانب جدار الحماية الخاص بنظام التشغيل، وليس كبديل له |
| WAF/CDN | تطبيقات الويب وهجمات HTTP | تقلل من هجمات الروبوتات، وHTTP flood، ومسح الثغرات | تتطلب تكوين DNS صحيح وعنوان IP حقيقي |
خطوات إعداد جدار الحماية للخادم
1. تحديد المنافذ والخدمات المفتوحة
الخطوة الأولى هي رؤية ما هو مفتوح. يُظهر الأمر ss -tulpn على خادم Linux أي الخدمات تستمع على أي منافذ. على سبيل المثال، إذا كان nginx يستمع على 0.0.0.0:80 و0.0.0.0:443، فهذا يعني أن حركة المرور الشبكية مقبولة من جميع الواجهات. إذا كانت MariaDB تستمع على 0.0.0.0:3306، فهذا عادة ما يكون خطرًا؛ يجب أن تعمل قاعدة البيانات في معظم المواقع على 127.0.0.1.
القاعدة العملية هنا: لا ينبغي لأي خدمة لا تحتاج إلى الوصول من الإنترنت أن تستمع على 0.0.0.0. من الأفضل تصحيح تكوين الخدمة أولًا، ثم إغلاقها باستخدام جدار الحماية. لأنه حتى إذا كان جدار الحماية معطلاً، يجب ألا تكون الخدمة مفتوحة للعالم الخارجي.
2. اجعل السياسة الافتراضية مغلقة
في مجموعات القواعد الآمنة، يتم رفض حركة المرور الواردة بشكل افتراضي، بينما يتم السماح لحركة المرور الصادرة بحسب الحاجة. تساعد هذه الطريقة في منع الخدمات التي تم إعدادها لاحقًا من الفتح عن طريق الخطأ على الإنترنت. في خادم Ubuntu يستخدم UFW، تكون المنطق كما يلي: أولًا يتم السماح لـ SSH، ثم تُفتح 80 و443، ثم يُجعل السياسة الافتراضية الواردة deny، ويتم تفعيل جدار الحماية.
تدفق المثال: امنح إذنًا لعنوان IP الخاص بالمدير لـ SSH، افتح حركة المرور HTTP وHTTPS، أغلق المنافذ غير الضرورية، ثم قم بالتفعيل. فتح جدار الحماية دون إعطاء إذن لـ SSH هو من أكثر الأخطاء شيوعًا، خاصة على الخوادم البعيدة.
3. قيد وصول SSH
SSH هو واحد من أكثر الخدمات المستهدفة من قبل المهاجمين. يمكن أن يشهد الخادم الذي لديه منفذ 22 مفتوحًا آلاف محاولات كلمة المرور يوميًا. النهج الأكثر أمانًا هو تقييد وصول SSH إلى عناوين IP معينة. إذا كنت تستخدم IP ثابت، اسمح فقط بعنوان IP الخاص بالمكتب أو VPN. إذا لم يكن لديك IP ثابت، على الأقل استخدم المصادقة القائمة على المفاتيح وأغلق إدخال كلمة المرور.
- أغلق تسجيل الدخول المباشر عبر SSH باستخدام الجذر.
- استخدم مفاتيح SSH بدلاً من كلمة المرور.
- قيد المستخدمين باستخدام AllowUsers أو AllowGroups.
- استخدم Fail2ban لحظر المحاولات الفاشلة تلقائيًا.
- إذا كنت تستخدم لوحة التحكم، قيد أيضًا منفذ اللوحة إلى IP.
تغيير المنفذ وحده لا يوفر الأمان، ولكنه يمكن أن يقلل من ضوضاء الروبوتات التلقائية. ومع ذلك، فإن الحماية الحقيقية توفرها قيود IP، ومصادقة قوية، ومراقبة السجلات.
4. افتح منافذ الويب بشكل منظم
تحتاج معظم الخوادم التي تنشر مواقع الويب إلى المنافذ 80 و443. ومع ذلك، يجب أن تكون 443، أي HTTPS، هي المنفذ الرئيسي لحركة المرور، ويجب استخدام 80 فقط لإعادة التوجيه إلى HTTPS. المواقع التي لا تحتوي على شهادة SSL تؤثر سلبًا على ثقة المستخدمين وأداء SEO. في هذه النقطة، توفر شهادات SSL Hostragons فرصة رابط داخلي طبيعي لتوجيه القارئ نحو إعداد HTTPS الآمن.
عند فتح منافذ الويب، انتبه إلى سلوك IP الحقيقي. إذا كنت تستخدم CDN أو proxy عكسي، فمن الأفضل السماح لحركة المرور القادمة إلى خادمك على المنافذ 80 و443 فقط من نطاقات IP الخاصة بـ CDN بدلاً من فتحها لجميع الإنترنت. بهذه الطريقة، حتى لو عرف المهاجم عنوان IP الحقيقي للخادم، لا يمكنه الوصول مباشرة إلى خدمة الويب.
5. اغلق قواعد البيانات والخدمات الداخلية على الإنترنت
إن فتح خدمات مثل MySQL وMariaDB وPostgreSQL وRedis وElasticsearch وMongoDB على الإنترنت يمكن أن يشكل خطرًا كبيرًا. نقص المصادقة لRedis، أو الوصول غير المصرح به إلى الفهارس في Elasticsearch، أو المنفذ الإداري المفتوح في MongoDB، قد يؤدي إلى العديد من تسريبات البيانات في الماضي. يجب أن تستمع هذه الخدمات، إن أمكن، فقط عبر localhost أو الشبكة الخاصة.
على سبيل المثال، يجب أن تعمل قاعدة بيانات موقع WordPress الذي يعمل على نفس الخادم على 127.0.0.1. إذا كنت تستخدم خادم تطبيق منفصل وقاعدة بيانات، فاسمح فقط بعنوان IP الخاص بخادم التطبيق. ترك الوصول إلى 3306 أو 5432 من الإنترنت العامة هو خطأ معروف يتم فحصه باستمرار من قبل الروبوتات.
6. استخدم Fail2ban لمنع محاولات التجريب القسري
تقوم Fail2ban بمراقبة ملفات السجلات للكشف عن محاولات تسجيل الدخول الفاشلة المتكررة وتمنع عنوان IP المعني مؤقتًا. يمكن تعريف السجون لـ SSH، وnginx، وApache، وPostfix، وDovecot، وتسجيل دخول WordPress وبعض خدمات اللوحات. على سبيل المثال، حظر عنوان IP الذي قام بـ 5 محاولات فاشلة لـ SSH في 10 دقائق لمدة ساعة هو بداية بسيطة لكنها فعالة.
كن حذرًا عند استخدام قواعد شديدة العدوانية في تكوين Fail2ban. يمكن أن تؤدي نمط سجل غير صحيح إلى حظر المستخدمين الحقيقيين أيضًا. لذلك، من الأفضل الحفاظ على قيمة bantime معقولة في المرحلة الأولى، ومراقبة السجلات، ثم القيام بتشديد تدريجي لاحقًا.
7. أضف تحديد معدل وحدود الاتصالات
يمكن أن يساعد تحديد المعدل على مستوى نظام التشغيل ضد DDoS وحركة مرور الروبوتات. على سبيل المثال، إذا كانت هناك اتصالات جديدة كبيرة تأتي من نفس عنوان IP في الثانية، يمكن تطبيق حد. على جانب خادم الويب، يمكن استخدام وحدات limit_req وlimit_conn لـ nginx، أو mod_evasive لـ Apache، أو حلول مشابهة. على جانب التطبيق، يجب إضافة حدود معدل لتسجيل الدخول، والبحث، وعربة التسوق، والدفع، ونقاط نهاية API.
مثال ملموس: في صفحة تسجيل الدخول، يمكن أن تكون 10 محاولات في الدقيقة من عنوان IP واحد معقولة. في نقطة نهاية البحث، يمكن أن تكون 2-5 طلبات في الثانية كافية. إذا كنت تقدم API، يجب أن يتم تصميم حدود قائمة على المستخدم، وحدود IP، وتحليل السلوك معًا. بهذه الطريقة، لا يمكن للمهاجم تخطي جميع الحدود فقط عن طريق تغيير عنوان IP.
سيناريو إعداد آمن باستخدام UFW
يمكن إعداد سيناريو بداية آمن بسيط على خادم ويب مستند إلى Ubuntu أو Debian وفقًا للمنطق التالي: تحقق أولاً من الخدمات الحالية، واسمح بالوصول إلى SSH من عنوان IP الخاص بالمدير، وفتح المنافذ 80 و443، ورفض حركة المرور الواردة بشكل افتراضي، وتحقق من حالة UFW. إذا لم يكن لديك قيود على الوصول إلى SSH بعنوان IP ثابت، يمكنك مؤقتًا السماح بالوصول إلى SSH من جميع IPs ثم الانتقال لاحقًا إلى حل VPN أو عنوان IP ثابت.
تكون مجموعة القرارات كالتالي: دعنا نفترض أن عنوان IP الخاص بالمدير هو 203.0.113.10. يجب أن يأتي SSH فقط من هذا العنوان. يجب أن تظل حركة مرور الويب عبر 80 و443 مفتوحة للجميع. يجب أن تكون قاعدة البيانات وRedis واللوحة ومنافذ الاختبار مغلقة. تمثل هذه البنية بداية جيدة للعديد من مواقع الويب المؤسساتية الصغيرة والمتوسطة. يمكن الإشارة إلى صفحة استعلام عن النطاق والتسجيل Hostragons لعمل توجيه صحيح على جانب النطاق وDNS.
منطق المنطقة باستخدام firewalld
يتم استخدام firewalld بشكل شائع على الخوادم المستندة إلى AlmaLinux وRocky Linux وRHEL. يعمل firewalld باستخدام مفهوم المناطق. تُستخدم المنطقة العامة للواجهات المفتوحة على الإنترنت، بينما تُستخدم المنطقة الموثوقة للشبكات الخاصة الموثوقة، وتُستخدم منطقة الإسقاط لتقليل الحركة غير المرغوب فيها بهدوء. النقطة الأكثر أهمية هي الفرق بين القوانين runtime وpermanent. يتم تطبيق القاعدة runtime على الفور، ولكنها قد تُفقد عند إعادة التشغيل؛ بينما تكون القاعدة permanent دائمة ولكن قد تتطلب إعادة تحميل.
عند استخدام firewalld في البيئات المؤسساتية، تسهل التعريفات القائمة على الخدمة الأمور. على سبيل المثال، يمكنك فتح خدمات http وhttps على المنطقة العامة، وضمان أن خدمة SSH يمكن الوصول إليها فقط من عناوين IP معينة. إذا كانت الشبكة الإدارية، وشبكة النسخ الاحتياطي، وحركة مرور المستخدمين في واجهات مختلفة، فإن هيكل المنطقة يزيد من الأمان والقابلية للقراءة.
حماية DDoS على مستوى المزود وCDN وWAF
يتخذ جدار الحماية المحلي قرارات بعد وصول الحزم إلى الخادم. في حالات هجمات DDoS الكبيرة، يكون الهدف هو تصفية الحركة قبل وصولها إلى الخادم. لذلك، فإن الحماية من DDoS على مستوى CDN وWAF ومزود الخدمة أمر حاسم. يقوم CDN بتقديم المحتويات الثابتة في مواقع الحافة، بينما يقوم WAF بتصفية الطلبات الضارة على مستوى التطبيق، وتقوم الحماية المقدمة من المزود بامتصاص أو تنظيف الهجمات الكبيرة على مستوى الشبكة.
في النموذج المثالي، تمر سجلات DNS عبر CDN، ويتم إخفاء عنوان IP الحقيقي للخادم، ويقبل جدار الحماية الخاص بالخادم حركة المرور فقط من نطاقات IP الخاصة بـ CDN على 80 و443. بينما يمكن الوصول إلى المنافذ الإدارية عبر VPN أو عنوان IP ثابت. يقلل هذا النموذج من احتمال الهجمات المباشرة على عنوان IP ويسمح لك بتصفية حركة مرور الروبوتات قبل وصولها إلى التطبيق. يمكن استخدام الرابط أدلة تسريع وأمان الموقع لمحتوى يتناول مواضيع الأمان والأداء معًا.
إجراءات على مستوى التطبيق ضد الروبوتات

لا يقتصر حظر الروبوتات على قائمة حظر IP فقط. يمكن للروبوتات الحديثة استخدام proxy وعناوين IP لشبكات المحمول ومراكز البيانات وعوامل المستخدم المتغيرة. لذلك، هناك حاجة إلى نهج قائم على السلوك. يجب تحليل محاولات تسجيل الدخول العديدة في فترة زمنية قصيرة من نفس IP، والبحث المستمر عن 404، والكثافة العالية لـ wp-login.php أو xmlrpc.php، ونمط النقر المختلف عن المستخدمين العاديين، والعناوين المشبوهة.
- استخدم تحديد المعدل في نماذج تسجيل الدخول والتسجيل.
- قم بإغلاق أو تقييد الوصول غير الضروري لـ XML-RPC.
- قم بحماية لوحة التحكم باستخدام URL مختلف، وتقييد IP، والمصادقة متعددة العوامل.
- قم بتصفية الأنماط المشبوهة من user-agent وreferer على مستوى WAF.
- استخدم آليات التحقق من الروبوتات مثل CAPTCHA أو التحقق غير المرئي بشكل متوازن في النماذج.
- قم بإضافة التحقق من المفتاح، والتوقيع، والحصة، وختم الوقت لنقاط نهاية API.
من المهم عدم التأثير على تجربة المستخدم في إدارة الروبوتات. يمكن أن يؤدي استخدام CAPTCHA المفرط، أو الحظر العدواني، أو حظر البلدان الخاطئ إلى الإضرار بالعملاء الحقيقيين. لذلك، فإن القياس، والاختبار، والتشديد التدريجي هي أفضل طرق لمواجهة هذه المشكلة.
مراقبة السجلات وقواعد الإنذار
يعتبر الاعتقاد بأن الإعداد قد انتهى خطأً شائعًا. جدار الحماية هو نظام حي ويجب مراقبته بانتظام. يجب مراقبة محاولات SSH في auth.log أو secure، والكثافة غير العادية للطلبات في سجلات وصول nginx، وزيادة 404 و500 في سجلات الأخطاء، ومتابعة مقاييس النظام مثل CPU وعدد الاتصالات. يمكن أن توفر الإنذارات البسيطة وقتًا ثمينًا عند بدء الهجوم.
يمكن أن تكون قيم العتبة الأولية مثل: 100 طلب 404 من نفس IP خلال 5 دقائق، أو أكثر من 20 محاولة على صفحة تسجيل الدخول في دقيقة واحدة، أو بقاء استخدام CPU فوق 90٪ لمدة 10 دقائق، أو زيادة عدد الاتصالات إلى 3 أضعاف المعدل الطبيعي. تختلف هذه العتبات من موقع لآخر؛ المهم هو معرفة ملف تعريف حركة المرور العادية لديك.
الأخطاء الشائعة وطرق التجنب
- تفعيل جدار الحماية دون إذن SSH: قد يؤدي ذلك إلى فقدان الوصول على الخادم البعيد. دائمًا قم باختبار باستخدام جلسة ثانية.
- نسيان IPv6: يمكن أن تظل الخدمة مفتوحة عبر IPv6 بينما يكون جانب IPv4 مغلقًا.
- ترك قاعدة البيانات مفتوحة على الإنترنت: يتعرض المنافذ مثل 3306 و5432 و6379 و9200 للفحص المستمر من قبل الروبوتات.
- استخدام CDN مع ترك IP الحقيقي مفتوحًا: يمكن أن يتجاوز المهاجم CDN ويهاجم الخادم مباشرة.
- تغيير القواعد دون توثيق: قد يصبح من الصعب معرفة أي قاعدة كانت ماذا في حالة الطوارئ.
- عدم إعداد خطة وصول احتياطي: إذا كانت القاعدة خاطئة، قد تستغرق الانقطاعات فترة طويلة بدون وصول إلى وحدة التحكم.
مثال على سياسة جدار الحماية العملية
يمكن تلخيص سياسة قابلة للتطبيق لموقع ويب مؤسسي صغير كما يلي: يتم إغلاق حركة المرور الواردة بشكل افتراضي؛ 443 مفتوحة لجميع الزوار؛ 80 مفتوحة فقط لإعادة التوجيه إلى HTTPS؛ SSH متاح فقط من عنوان IP ثابت أو VPN للمدير؛ قاعدة البيانات في localhost أو شبكة خاصة؛ إذا كان يتم استخدام CDN، يجب أن يُسمح لـ 80 و443 فقط لنطاقات IP الخاصة بـ CDN؛ تقوم Fail2ban بمراقبة محاولات تسجيل الدخول لـ SSH والويب؛ تُرسل سجلات السجلات إلى أداة مراقبة مركزية.
بالإضافة إلى ذلك، في موقع تجارة إلكترونية متوسط الحجم، يتم عمل قائمة بيضاء لعنوان IP لردود الدفع، ويتم وضع لوحة التحكم خلف VPN، وتطبيق حد على أساس المستخدم لـ API، وتفعيل قواعد SQL injection وXSS على WAF، وإعداد خطة تصفية مؤقتة بناءً على البلد أو ASN. من المهم أن تكون هذه الخطة مكتوبة؛ فإن تطبيق الإجراءات المحددة مسبقًا بدلاً من اتخاذ قرارات على الفور أثناء الهجوم يقلل من فترة الانقطاع.
اختبار: هل تعمل القواعد حقًا؟
يجب اختبار إعداد جدار الحماية بعد الانتهاء منه. قم بإجراء فحص للمنافذ المفتوحة من شبكة مختلفة، تحقق من أن وصول SSH يعمل فقط من IP المسموح به، تحقق من إمكانية الوصول إلى موقع الويب عبر HTTPS، وتأكد من أن منفذ قاعدة البيانات مغلق من الخارج. إذا كنت تستخدم CDN، تأكد من أنه يتم حظر طلبات HTTP المباشرة إلى عنوان IP الحقيقي للخادم.
خلال عملية الاختبار، تجنب إجراء عمليات فحص عدوانية يمكن أن تلحق الضرر بالأنظمة الإنتاجية. الهدف هو إجراء تحقق آمن. أيضًا، قم بتصدير مجموعة القواعد أو تدوينها بعد كل تغيير. سيسهل ذلك العودة إلى التكوين الصحي السابق إذا حدثت مشكلة.
خطة الصيانة والتحديث
أمان الخادم ليس مجرد إعداد مرة واحدة، بل هو عملية صيانة دورية. يجب مراجعة احتياجات المنافذ عند إضافة خدمة جديدة، وإزالة الأذونات ذات الصلة عند إزالة خدمة قديمة، وتطبيق التحديثات الأمنية في الوقت المناسب، ومراقبة السجلات بشكل دوري. إن إجراء فحص للمنافذ المفتوحة مرة واحدة على الأقل في الشهر، ومراجعة مجموعة قواعد جدار الحماية كل ثلاثة أشهر هو بداية عملية جيدة.
علاوة على ذلك، فإن خطة النسخ الاحتياطي هي جزء من استراتيجية الأمان. يمكن أن تؤدي هجمات DDoS إلى انقطاع الوصول، ولكن قد تؤدي برامج الفدية أو الوصول غير المصرح به إلى فقدان البيانات. يجب التفكير في استضافة آمنة، وشهادة SSL، وإدارة أسماء النطاقات معًا. في هذا السياق، فإن نقاط يجب مراعاتها عند اختيار استضافة آمنة وكيفية تثبيت شهادة SSL هما روابط استمرارية طبيعية.
الخلاصة
إعداد جدار الحماية للخادم لا يجعل الخادم غير مرئي تمامًا ضد هجمات DDoS والروبوتات؛ ولكنه يقلل بشكل كبير من سطح الهجوم، ويقلل من مخاطر الوصول غير المصرح به، ويسمح لك بالتدخل في الأحداث بشكل أكثر تحكمًا. يتم تحقيق أفضل النتائج من خلال تنفيذ الحماية من DDoS على مستوى المزود، وCDN/WAF، وسياسة المنافذ الصارمة، وتقييد SSH، وFail2ban، وتحديد المعدل، ومراقبة السجلات بانتظام.
إذا كنت تطلق مشروعًا جديدًا، فإن التخطيط لسياسة جدار الحماية في البداية يكون أسهل من تصحيحها لاحقًا. يمكنك تقييم احتياجات الأمان الخاصة بك أثناء تقييم خادمك، واستضافتك، ونطاقك، وبنية SSL على Hostragons لإنشاء بيئة ويب أكثر مرونة. إذا كنت بحاجة، ابدأ بقائمة تحقق صغيرة: أغلق المنافذ المفتوحة، قيد SSH، اجعل HTTPS إلزاميًا، وراقب السجلات.
أسئلة شائعة
هل يمنع جدار الحماية للخادم هجمات DDoS بالكامل؟
لا. يمكن لجدار الحماية المحلي تقليل الهجمات الصغيرة وبعض الهجمات على مستوى البروتوكول، ولكن في حالة الهجمات الكبيرة، يجب استخدام الحماية من DDoS على مستوى المزود، وCDN، وWAF.
ما هي المنافذ التي يجب أن تبقى مفتوحة على خادم الويب؟
عادةً ما تبقى المنافذ 80 و443 مفتوحة على خادم الويب النموذجي. يجب أن يكون منفذ SSH متاحًا فقط لعناوين IP المصرح لها. يجب أن تبقى منافذ قاعدة البيانات والخدمات الداخلية مغلقة على الإنترنت.
هل يجب أن أستخدم UFW أم firewalld؟
تقدم UFW بداية أسهل لـ Ubuntu وDebian. بينما يعتبر firewalld شائعًا على الأنظمة المستندة إلى AlmaLinux وRocky Linux وRHEL. يمكن استخدام nftables في السيناريوهات المتقدمة والخاصة.
هل يمكنني إيقاف حركة مرور الروبوتات فقط عن طريق حظر IP؟
عادةً لا. تستخدم الروبوتات الحديثة عناوين IP مختلفة وproxy. يجب استخدام تحديد المعدل، وقواعد WAF، وتحليل السلوك، وCAPTCHA، وحدود قائمة على التطبيقات إلى جانب حظر IP.
ما هو أكبر خطر عند إعداد جدار الحماية؟
أكبر خطر هو قطع وصول SSH الخاص بك بسبب قاعدة خاطئة. لذلك، يجب تحديد إذن SSH أولًا، واختباره باستخدام جلسة ثانية، وضمان وجود وصول وحدة التحكم من المزود.