: : : هذا الشرح مقدم من شركة هوست تونيد لخدمات الأستضافة والتصميم : : :
شرحي راح يكون عن الطريقة الأحترافية في صد هجمات الدوس الطريقة مجربة 100%
وتم حظر الكثير من هجمات الدوس على السيرفرات بواسطة الطريقة سهلة وبسيطة
والتي تعبت جدا في البحث عنها وتمت تجربتها والحمد لله كل شيء صار تمام
تـــابــع الشرح
قبل كل شيء أنبه ان هنالك ثغرة خطيرة في برنامج bind9 وننصح بتركيب النسخة 9.3.4 لخلوها من الثغرة
1 • الحماية ضد Dos , DDos :
? تقوية sysctl.conf و host.conf
ندخل على الشيل
رمز PHP:
cd /etc/
mv sysctl.conf sysctl.conf.css
رمز PHP:
pico sysctl.conf
ضع فيه التالي :
رمز PHP:
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(
and
# sysctl.conf(5) for more details.
# Controls IP packet forwarding
net.ipv4.ip_forward = 0
# Controls source route verification
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.lo.rp_filter = 1
net.ipv4.conf.eth0.rp_filter = 1
# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.lo.accept_source_route = 0
net.ipv4.conf.eth0.accept_source_route = 0
# Disable ICMP Redirect Acceptance
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.lo.accept_redirects = 0
net.ipv4.conf.eth0.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
# Enable Log Spoofed Packets, Source Routed Packets, Redirect Packets
net.ipv4.conf.all.log_martians = 0
net.ipv4.conf.lo.log_martians = 0
net.ipv4.conf.eth0.log_martians = 0
# Lower retry rates
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 3
# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0
# Max File Handlers
fs.file-max = 8192
# Disable CTR+ALT+DEL Restart Keys
kernel.ctrl-alt-del = 1
# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
# Decrease the time default value for tcp_fin_timeout connection
net.ipv4.tcp_fin_timeout = 15
# Decrease the time default value for tcp_keepalive_time connection
net.ipv4.tcp_keepalive_time = 1800
# Turn off the tcp_window_scaling
net.ipv4.tcp_window_scaling = 0
# Turn off the tcp_sack
net.ipv4.tcp_sack = 0
# Turn off the tcp_timestamps
net.ipv4.tcp_timestamps = 0
# Enable TCP SYN ****** Protection
net.ipv4.tcp_syn******s = 1
# Enable ignoring broadcasts request
net.ipv4.icmp_echo_ignore_broadcasts = 1
# Enable bad error message Protection
net.ipv4.icmp_ignore_bogus_error_responses = 1
# Log Spoofed Packets, Source Routed Packets, Redirect Packets
net.ipv4.conf.all.log_martians = 1
# Increases the size of the socket queue (effectively, q0).
net.ipv4.tcp_max_syn_backlog = 1024
# Increase the tcp-time-wait buckets pool size
net.ipv4.tcp_max_tw_buckets = 1440000
# Allowed local port range
net.ipv4.ip_local_port_range = 16384 65536
ثم نحفظ العمل
رمز PHP:
/sbin/sysctl -p
رمز PHP:
sysctl -w net.ipv4.route.flush=1
ثم
رمز PHP:
cd /etc
mv host.conf host.conf.css
رمز PHP:
pico host.conf
نضع فيه التالي :
رمز PHP:
# Lookup names via DNS first then fall back to /etc/hosts
order hosts,bind
# Check for IP address spoofing.
nospoof on
# multiple IP addresses
multi on
ثم
رمز PHP:
httpd restart
الساين كوكيز يمكن تفعيلها عن طريق الأمر :
رمز PHP:
echo 1 > /proc/sys/net/ipv4/tcp_syn******s
بعد ذلك نقوم بتركيب برنامج Easy Linux Security
لتركيب البرنامج اكتب الأمر التالي :
رمز PHP:
wget --output-********=installer.sh
[عزيزى الزائر لايمكنك مشاهده الروابط الا بعد التسجيلللتسجيل اضغط هنا] chmod +x installer.sh; sh installer.sh
الي مركب البرنامج احنا راح ننزل برنامج APF + BFD مع افضل الأعدادات :
نـبداء الشرح :
نقوم بتحديث سكربت ELS عن طريق الأمر التالي :
رمز PHP:
els --update
اذا هناك تحديث سوف يقوم به تلقائيا اذا كانت لديك أخر نسخه من الاسكربت سوف تظهر هذه الرساله :
رمز PHP:
ELS 3.0.0.3 is the latest release, there is no need to update. اولا : تركيب برنامج الجدار الناري APF مع افضل اعدادات
نكتب الأمر التالي لتركيب البرنامج :
رمز PHP:
els --apf
بعد تنزيل البرنامج نكتب الأمر التالي لضبط الأعدادات :
رمز PHP:
pico /etc/apf/conf.apf
ونتإكد من القيم التالية بإنها :
رمز PHP:
EGF="1"
USE_DS="1"
USE_AD= 1
بعد ذلك نسوي حفظ للعمل
بعد ذلك نذهب الى الملف التالي :
رمز PHP:
pico /etc/apf/ad/conf.antidos
ونتأكد من القيم التالية :
رمز PHP:
LP_KLOG="1"
CONAME="Your Company"
USR_*****="1"
USR="you@yourco.com"
بعد ذلك نسوي خفظ للملف
هذه اوامر مهمة للفايرول :
تشغيل الفايرول :
رمز PHP:
/usr/local/sbin/apf -s
اعادة تشغيل الفايرول :
رمز PHP:
/usr/local/sbin/apf -r
ايقاف الفايرول :
رمز PHP:
/usr/local/sbin/apf -f
مشاهدة حالة الفايرول :
رمز PHP:
/usr/local/sbin/apf -st
للسماح للأي بي
رمز PHP:
/usr/local/sbin/apf -a 124.11.11.11
لحظر أي بي شخص بالفيرول
رمز PHP:
/usr/local/sbin/apf -d 124.11.11.11
بعد الانتهاء نقوم بتشغيل الفايرول اكتب الأمرين التالين :
رمز PHP:
/etc/apf/ad/antidos -a
/usr/local/sbin/apf -r
ثانيا : بعد الانتهاء من تركيب الفايرول نقوم بتركيب برنامج الحماية BFD (Brute Force Detection)
لتركيب البرنامج اكتب الأمر التالي :
رمز PHP:
els --bfd
ولضبط اعدادات البرنامج نكتب الأمر التالي :
رمز PHP:
pico -w /usr/local/bfd/conf.bfd
يجب انت تكون القيم كتالي :
رمز PHP:
*****_USR="1"
EMAIL_USR=you@yoursite.com
مع استبدال البريد الإلكتروني
نسوي حفظ للملف
لتشغيل البرنامج نكتب الأمر التالي :
رمز PHP:
/usr/local/sbin/bfd -s
معلومة هامة حول البرنامج :
للسماح بالأي بي
رمز PHP:
pico -w /etc/apf/allow_hosts.rules
ونضع الأي بي داخل الملف ونسوي له حفظ
ولحظر اي بي نروح الى
رمز PHP:
pico -w /usr/local/bfd/ignore.hosts
ونضع الأي بي داخل الملف ونسوي له حفظ
ثالثا : تركيب برنامج الحماية من هجمات DOS-Deflate
تنصيب البرنامج :
رمز PHP:
wget
[عزيزى الزائر لايمكنك مشاهده الروابط الا بعد التسجيلللتسجيل اضغط هنا] chmod 0700 install.sh
./install.sh
بعد ذلك نقوم بضبط الأعدادات :
رمز PHP:
pico /usr/local/ddos/ddos.conf
ونغير التالي :
رمز PHP:
Set NO_OF_CONNECTIONS=150
نغيرها الى اي رقم تريده
هذا الخيار للوضع حدد لعدد الأتصالات بالسيرفر للأي بي الواحد
يفضل وضعها 300 او 250
وتإكد من القيم التالية :
رمز PHP:
APF_BAN=1
EMAIL_TO=xxx@xxx.com
هذا عدد الوقت بالثانية للحظر 600 ثانية
BAN_PERIOD=600
لمعرفة المتصلين بالسيرفر نكتب الامر هذا
رمز PHP:
cd /usr/local/ddos/;./ddos.sh
sh /usr/local/ddos/ddos.sh
لحظر اي شخص ندخل هنا
رمز PHP:
pico /usr/local/ddos/ignore.ip.list
ونضع الأي بي داخل الملف ونسوي له حفظ
تشغيل البرنامج :
رمز PHP:
/usr/local/ddos/ddos.sh -c
iptables -F
ولجعل البرنامج يعمل بعد الريستارت نروح للملف :
رمز PHP:
pico /etc/rc.d/rc.local
ونضع في نهاية الملف التالي :
رمز PHP:
## Add the following lines at the bottom of the file
/usr/local/ddos/ddos.sh -c
لو رغبت بحذف البرنامج اكتب الأمر التالي :
رمز PHP:
wget
[عزيزى الزائر لايمكنك مشاهده الروابط الا بعد التسجيلللتسجيل اضغط هنا] chmod 0700 uninstall.ddos
./uninstall.ddos
بعد الانتهاء من اعداد برامج الحماية السيرفر والفايرول افضل اعدادات اقدم
لكم معلومات لكيفة صد اي هجوم DOS يتعرض له السيرفر وكيفية معرفة ذلك
اكتب الأمر التالي لمعرفة عدد المتصلين بالسيرفر :
رمز PHP:
netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1
or
netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -n
راح يظهر لك النتيجة كتالي :
رمز PHP:
1 195.229.235.36
1 195.229.235.39
1 195.229.236.214
1 195.229.237.39
1 195.229.242.53
1 195.229.242.55
1 195.229.242.56
1 196.12.217.252
1 196.20.126.97
1 41.200.213.119
1 86.60.97.145
1
.108.0.85
2 195.229.235.41
2 41.201.175.161
2 41.248.162.42
2 77.30.118.133
2 94.97.78.197
3 84.11.138.148
400 41.235.239.187
هذا يعني ان الأي بي
41.235.239.187
مسوي فلود على السيرفر طيب الحين عرفنا مسبب الفلود الحين نجي نسوي له حظر
اكتب الأمر التالي :
رمز PHP:
pico /usr/local/ddos/ignore.ip.list
وضع الأي بي الشخص المسبب للحظر
ولحظر الأي بي بواسطة برنامج BFD
ولحظر اي بي نروح الى
رمز PHP:
pico -w /usr/local/bfd/ignore.hosts
ونضع الأي بي داخل الملف ونسوي له حفظ
وايضا نروح للبرنامج APF ونحط الأي بي
رمز PHP:
/usr/local/sbin/apf -d 41.235.239.187
وهذه طريقة اخرى لخظر الشخص
رمز PHP:
iptables -I INPUT -s 41.235.239.187 -j DROP
بعد كذا نكتب الامر
رمز PHP:
service iptables save
service iptables restart
بالنسبة للي مركب برنامج الحماية CSF انصح الأشخاص الذين يمتلكون سيرفرات
VPS بعدم تركيبه لأن ما ينفع مع سيرفرات VPS ويسبب مشاكل ولكن يعمل بشكل
جيد مع السيرفرات الكاملة
انتهى الشرح وهذا افضل طريقة للحظر هجمات الدوس وهي طريقة مجربة
عند عمل فلود راح توصلك رسالة كتالي على بريدك
IP addresses banned on Wed Aug 13 17:10:07 AST 2008
رمز PHP:
Banned the following ip addresses on Wed Aug 13 17:10:01 AST 2008
41.249.56.19 with 205 connections
انا جالس اجهز شرح مفصل للسيرفرات وان شاءلله ربنا يوفقنا في الأنتهاء من كتابة الشرح