عرض مشاركة واحدة
قديم 07-15-2012, 02:21 PM   #1 (permalink)

Mr.Amr

عضو موقوف
 




 
Mr.Amr على طريق التميز

افتراضي شرح حماية الفى بى اس Vps من الدوس اتاك Dos Attack



بسم الله الرحمن الرحيم

موضوعنا اليوم يحتوي على


إلغاء تركيب أي جدار ناري أو برنامج حماية على السيرفر


تركيب الجدار الناري

CSF


إعداده إعداداً جيداً ومناسباً


عمل حماية لصد هجمات الإغراق الفلود بواسطة الجدار الناري


فحص الموديلات المفعله والمطلوبة لعمل الجدار الناري


تفعيل الموديلات المهمه التي يتطلبها الجدار الناري من داخل السيرفر الرئيسي


فحص حماية السيرفر بواسطة الجدار الناري


فلنبدأ على بركة الله تعالى



حماية السيرفر من هجمات الفلوود باستخدام الخاصيّة


Port Flood Protection


الموجودة في الجدار الناري CSF.


بعد القيام بالاعدادات اللازم سنتمكّن من تحديد عدد الاتصالات المسموح بها بنفس الوقت لكل


IP


يحاول الاتصال بالسيرفر


طريقة عمل هجمات الـ


Flood


منطقياً هجمات الفلود تتم بطريقتين, الأولى من خلال اتصال معين والثانية من خلال عدة اتصالات

وكل اتصال من هذه الاتصالات يتصل بالمزود بكل مالدية من طاقة وبالعادة يتم توحيد مكان الضرب مثلاً يكون الضرب



على
HTTPd

بروتوكول
TCP

منفذ
80
.


المتطلّبات
  • تركيب الجدار الناري CSF آخر اصدار.
  • IPT مفعل ويعمل بشكل جيد.
  • الموديل IPT_Recent الخاص بالـ IPT.
من وضائف الجدار الناري

CSF

خفيف و سهل و قوي يعتمد على الجدار الناري
iptables

و ميزة البرنامج او الاضافة ان واجهة الاعدادات واجهة رسومية يتم التحكم بها عن طريق
WHM


* هذا البرنامج لسيرفرات السي بنل فقط

يمنع المحاولات الدخول الفاشلة الى
FTP SSH POP IMAP HTTP

و اقصد فيها يوقف كل من يحاول الدخول اكثر من خمس مرات على هذه الخدمات



في بادئ الأمر لمن لا يستخدمون الجدار الناري
CSF

أو يستخدمون أي برنامج آخر ينصح بإلغائه وتركيب
CSF



وطريقة التركيب كالآتي

أول شي نقوم بحذف أي جدار ناري أو أي برنامج حماية آخر مثل
APF + BFD

عن طريق تطبيق الآتي

كود PHP:
chkconfig --del apf
rm 
/etc/init.d/apf /etc/cron.d/fw
rm 
-rf /etc/apf 
ومن ثم نقوم بتركيب الجدار الناري
CSF

عن طريق

كود PHP:
       rm -fv csf.tgz  wget http://www.configserver.com/free/csf.tgz   tar -xzf csf.tgz  cd csf  sh install.sh 
الآن تم تركيب الجدار الناري وتستطيع التأكد منه من لوحة تحكم الـ
WHM

ستجد رسالة فوق

Firewall Status: Enabled but in Test Mode


حالياً الجدار الناري مركب ومفعل ولكن في الوضع التجريبي وتستطيع تشغيله في الوضع الطبيعي عن طريق إعداد الجدار الناري كالآتي


إضغط على

Firewall Configuration

ومن ثم طبق الآتي

كود PHP:
       TESTING 0  TESTING_INTERVAL 5  AUTO_UPDATES =1  TCP_IN  =هنا ضيف بورت الشيل في حال غيرته من 22 الى رقم اخر ضيف المنفذ هنا    TCP_OUT نفس الكلام ضيف بورت الشيل هنا 
كود PHP:
     SYNFLOOD =1   SYNFLOOD_RATE =30/s  SYNFLOOD_BURST =50  CT_LIMIT =250  CT_PORTS  =80,443  LF__ 1  PT_SKIP_HTTP 
ومن ثم إضغط على
Change

ومن ثم
restart csf+lfd

و
Return

ومن ثم أدخل على
Firewall Security Level

وتختار
Medium

ومن ثم
restart csf+lfd

هكذا لقد قمت بتشغيل الجدار الناري
CSF
بنجاح على سيرفرك يتبقى ان تقوم بضبط برنامج
FTP
على سيرفرك وغالبا ما يكون
Pure-FTPD
ليتوافق عمله مع عمل الجدار الناري
بدون مشاكل .

نفذ الامر التالي من خلال الشيل :

كود PHP:
         pico /etc/pure-ftpd.conf 
ابحث عن

كود PHP:
    PassivePortRange 
قم بازالة علامة # من امامها

بعد ذلك قم بعمل ريستارت لل
FTP
من خلال الامر التالي

كود PHP:
     /s/restartsrv_ftpserver 
الآن إنتهينا وبنجاح من تركيب الجدار الناري وإعداده الإعداد الصحيح بإذن الله تعالى

الآن بالنسبة للحماية من هجمات الفلود بواسطة هذا البرنامج الجبار طبق الآتي

كود PHP:
         nano /etc/csf/csf.conf 
قوم بالضغط على CTRL + W ونبحث عن

PORTFLOOD

سوف نحد السطر بالشكل التالي افتراضياً:

كود PHP:
         PORTFLOOD 
نضع بداخل "" الاعدادات التي نريدها, كما في المثال التالي:

كود PHP:
         PORTFLOOD "80;tcp;20;10 
80
هو المنفذ

TCP
هو البروتوكول

20
هو عدد الاتصالات المسموح به بنفس الوقت

10
هو وقت الايقاف المؤقت وبعد الـعشر ثواني يتم السماح للأي بي بعمل اتصالات جديدة.

ملاحضه مهمه:

ipt_recent

تستطيع حساب
20 Packets

لكل عنوان, لذا تستطيع تغيير عدد الاتصالات من 1 إلى 20 فقط.

هل هنالك امكانية اضافة اكثر من منفذ ؟ نعم ويكون بالشكل التالي مجرد مثال

كود PHP:
         PORTFLOOD "22;tcp;10;200,21;tcp;15;100,80;tcp;20;5 
لاحظ أني عند كل اضافة منفذ جديد اضع فاصلة (,)

في المثال السابق اخترت اكثر من منفذ وهم 22 و 21 و 80 وتستطيع اضافة المزيد وتستطيع تغيير عدد الاتصالات و وقت الايقاف المؤقت وايضاً تغيير نوع البروتوكول مثلاً

من
TCP
إلى
UDP

وهكذا. بعد الانتهاء من التعديل نقوم بحفظ الملف

CTRL + X
ثم Y
ثم
Enter.

واخيراً لا ننسى اعادة تشغيل
CSF
بالأمر التالي:

كود PHP:
         csf -
ملاحظه

من خلال الفلود لا يتم اختراق الموقع او السيرفر, الفلود عبارة عن
DoS "حجب الخدمة"


هذه الطريقة تصد الفلود العادي والمتوسط ولا تستطيع مواجهة الفلود القوي او العالي.

ملاحظه أخرى

هذه العملية تتطلب وجود تفعيل موديل
ipt_recent

للتحقق من أن الموديل مفعل إضغط على
Test iptables

وشوف الموديلات الموجوده هل الموديل المطلوب مفعل أم لا ؟

إذا كنت صاحب سيرفر مشترك في بي أس راسل صاحب السيرفر الرئيسي لتفعيل الموديل

أما إذا كنت صاحب السيرفر الكامل وتريد تفعيل الموديل لعملائك الفي بي أي

إليك الطريقة

ملاحظة هامة : التطبيقات التالية سيتم تنفيذها على ملفات هامة جداً



وخاصة بنظام التشغيل للنود الرئيسي ،
لذلك يجب عليك اخذ نسخة احتياطية من هذه الملفات
قبل تنفيذ التطبيقات الموجودة بالشرح ،
حتى اذا قمت بخطأ ما يمكنك استرجاع النسخة الاصلية من جديد ،
يمكنك اخذ نسخة من الملفات من خلال الاوامر النالية :
c
كود PHP:
         p /etc/sysconfig/iptables-config  /etc/sysconfig/iptables-config.old 
كود PHP:
         cp  /etc/sysconfig/vz /etc/sysconfig/vz.old 
كود PHP:
         cp  /etc/vz/vz.conf /etc/vz/vz.old 
كود PHP:
         ip_tables  ipt_state    ipt_multiport iptable_filter ipt_limit ipt_LOG  ipt_REJECT     ipt_conntrack ip_conntrack ip_conntrack_ftp iptable_mangle  ipt_owner     ipt_recent iptable_nat ip_nat_ftp ipt_REDIRECT ipt_length  ipt_tos     ipt_TOS ipt_TCPMSS ipt_tcpmss ipt_ttl ip_conntrack_netbios_ns 
عد وضع الموديلات السابقة ، قم بحفظ التغييرات التي قمت بها فى الملف من خلال الضغط على Ctrl+x ، ثم y ثم انتر .

بعد ذلك ، قم بفتح الملف التالي لوضع الموديلات اللازمة ايضاً :

كود PHP:
         nano /etc/sysconfig/vz 
ثم ابحث عن :

كود PHP:
IPTABLES



ستجدها كالتالي

كود PHP:
IPTABLES


=" " 
أيضاً ربما تجد موديلات موجوده ما بين القوسين "" ، قم بمسح ما بين القوسين وضع الموديلات التالية ، وتأكد انها على سطر واحد

كود PHP:
         ip_tables  ipt_state   ipt_multiport iptable_filter  ipt_limit ipt_LOG  ipt_REJECT    ipt_conntrack ip_conntrack  ip_conntrack_ftp iptable_mangle  ipt_owner    ipt_recent iptable_nat  ip_nat_ftp ipt_REDIRECT ipt_length  ipt_tos    ipt_TOS ipt_TCPMSS  ipt_tcpmss ipt_ttl ip_conntrack_netbios_ns 
بعد وضع الموديلات السابقة ، قم بحفظ التغييرات التي قمت بها فى الملف من خلال الضغط على Ctrl+x ، ثم y ثم انتر .

بعد ذلك ، قم بفتح الملف التالي لوضع الموديلات اللازمة ايضاً

كود PHP:
       nano /etc/vz/vz.conf 
ثم ابحث عن :

كود PHP:
       IPTABLES
ستجدها كالتالي

كود PHP:
       IPTABLES=" " 
أيضاً ربما تجد موديلات موجوده ما بين القوسين "" ، قم بمسح ما بين القوسين وضع الموديلات التالية ، وتأكد انها على سطر واحد

كود PHP:
                               ip_tables   ipt_state ipt_multiport  iptable_filter ipt_limit  ipt_LOG ipt_REJECT   ipt_conntrack  ip_conntrack ip_conntrack_ftp  iptable_mangle ipt_owner   ipt_recent  iptable_nat ip_nat_ftp  ipt_REDIRECT ipt_length ipt_tos   ipt_TOS  ipt_TCPMSS ipt_tcpmss ipt_ttl  ip_conntrack_netbios_ns 
الان انتهينا من اضافة الموديلات اللازمة .

بعد ذلك سنقوم باضافة الموديلات لملف الكونفيج الخاص بالفي بي اس الذي نريد تشغيل الـ csf عليه ، فلنفترض مثلا ان رقم الفي بي اس هو 100 ، اذاً سوف نقوم باضافة الموديلات فى ملف كونفيج الفي بي اس 100 وايضاً سوف نقوم بتحديد الـ resource الخاص بـالـ iptables لهذا الفي بي اس ، وسنقوم بعمل ذلك من خلال الاوامر التالية

كود PHP:
    vzctl set 100 --iptables ipt_REJECT --iptables ipt_tos  --iptables ipt_TOS --iptables ipt_LOG --iptables ip_conntrack --iptables  ipt_limit --iptables ipt_multiport --iptables iptable_filter --iptables  iptable_mangle --iptables ipt_TCPMSS --iptables ipt_tcpmss --iptables  ipt_ttl --iptables ipt_length --iptables ipt_state --iptables  iptable_nat --iptables ip_nat_ftp --save 
هكذا اضفنا الموديلات فى ملف الكونفيج الخاص بالفي بي اس ، ولتحديد الـ عدد iptables ، وعلى الاقل يجب ان تكون 1000 ، سوف نقوم بتنفيذ الامر التالي ايضاً

كود PHP:
       vzctl set 100 --numiptent 2000 --save 
-- طبق الامرين السابقين على جميع الـ vps التي تريد ان تقوم بتفعيل الـ csf لها بدون مشاكل ، مع استبدال رقم الـ vps الموجود اعلاه (100) برقم الفي بي اس الذي سوف تقوم بتنفيذ العملية عليه .

- بعد ذلك سوف تقوم بايقاف خدمة الـ vz وريستارت للـ iptables ثم بعدها اعادة التشغيل مرة اخري (ملحوظة : سوف يتم ايقاف جميع الفي بي اسات على النود عند ايقاف الخدمة وسوف يتم اعادة تشغيلهم مرة ثانية عند تشغيل الخدمة ) .

الان سوف تقوم بايقاف الخدمة من خلال الامر التالي

كود PHP:
       service vz stop 
انتظر حتى ينتهى وثم بعدها ريستارت للـ iptables :

كود PHP:
       service iptables restart 
بعدها تشغيل الخدمة مرة اخرى

كود PHP:
       service vz start 
الان تم حفظ التطبيقات التي قمت بها .

- بعد ذلك سنقوم بعمل رستارت للنتوورك من داخل الشيل الخاص بالفي بي اس ، قم بالدخول الى الفي بي اس من خلال الشيل او يمكنك الدخول اليه من خلال النود عن طريق الامر التالي

كود PHP:
       vzctl enter 100 
الان انت بداخل الشيل للفي بي اس 100 ، ستقوم بعمل ريستارت للنتورك وذلك من خلال الامر التالي

كود PHP:
       service network restart 
إلى الآن إنتهينا من إزالة أي جدار ناري على السيرفر وتركيب الـ

CSF

وإعداده إعداد مناسب وجيد والمساهمة بصورة كبيرة في حماية السيرفر من خطر الفلود وهجمات الإغراق على السيرفرات

وتأكدنا من الموديلات المفعله وفعلنا الموديلات المهمه لأصحاب السيرفرات الكاملة المقسمة إلى في بي أسات


آخر أمر في الموضوع

خاصية فحص حماية السيرفر بواسطة الجدار الناري
CSF

Chek Server Security

يعطيك نقاط ضعف سيرفرك وأخطاء السيرفر والأخطاء الأمنية

ستجد كل خطأ أماه تحذير باللون الأحمر

أبحث عن إسم الخطأ لتعرف حله


وفى اخر الموضوع دا برنامج لصد برنامج دوس اتاك

الان نبدأ بإسم الله .


افتح الشيل وسجل دخول الى السيرفر الرئيسيى بحساب الروت ونفذ الخطوات التالية .


سيتم اضافة موديلات الـ iptables اللازمة فى 3 ملفات ، من خلال الخطوات التالية :


نفذ الامر التالي لاضافة الـ iptables modules اللازمة :

كود PHP:
     nano /etc/sysconfig/iptables-config 
ابحث عن



كود PHP:
         IPTABLES_MODULES 



=



ستجدها كالآتي


:


I



كود PHP:
         PTABLES_MODULES 
=" "






تحياتى للجميع




Mr.Amr غير متواجد حالياً   رد مع اقتباس