PDA

مشاهدة نسخة كاملة : دروس منتقاة في حماية السيرفرات أرجو التثبيت


arabkit
05-09-2005, 12:47 PM
السلام عليكم ورحمة الله وبركاته
أخواني الأكارم أٌقدم لكم هذه المجموعة من الدروس المنتقاة لحماية و زيادة أمن السيرفر وجعله مستقرا وقد قمت بجمع هذه الدروس من أشهر المواقع الأجنبية في مجال حماية السيرفر وذلك بعد تجريبها والتأكد من صحتها وخلوها من أي خطأ وأتمنى أن يلقى عملي هذا ترحيبا وتشجيعا من الجميع وأن يساعد كل من ليس لديه خبرة في إدارة وحماية السيرفر قد استفاد من هذه الدروس كما قمت باختيار هذا الموقع اقصد الويب العربي نظرا لتفوقه على جميع الماوقع العربية على الإطلاق في هذا المجال ولنبدأ بالدرس الأول:
================================================== ===================
Root Check
================================================== ===================
يقوم بفحص وعمل سكان للنظام لمعرفة ما إذا كان هناك أي تروجان ويقوم بفحص البورتات ومعرفة إذا كان هناك أي مخترق كما يقوم بفحص اللوغ و السماحيات والكثير...

تعليمات التنصيب
-------
قم بالدخول إلى السيرفر كرووت
نفذ التعليمات التالية:


wget http://www.ossec.net/rootcheck/files/rootcheck-0.4.tar.gz

tar -xvzf rootcheck-0.4.tar.gz
cd rootcheck-0.4
./install



ذلك تكون قد قمت بتنزيل الرووت تشيك على السيرفر وعندما ينتهي التنصيب ستستقبل الرسالة التالية:


Compilation sucessfull. Ready to go.
---------------------------------------------------------
That's it! If everything went ok, you should be ready to run RootCheck. If you any doubts
about installation, please refer to INSTALL file. You can also find additional information
at : http://www.ossec.net/rootcheck/ Improves, patches, comments are very welcome.

---------------------------------------------------------



فحص النظام
-------
الآن بعد ان قمت بالتنصيب يمكنك فحص النظام من خلال التعليمة التالية:
./rootcheck.pl

ستنتقل بعدها إلى شاشة تفاعلية وستخزن جميع المعلومات في الملف
results.txt
حيث ستجد معلومات واضحة عن الملفات المشتبه بها وما قام به البرنامج أثناء الفحص
إذا أردت معلومات أكثر عن الرووت تشيك يمكن أن تجدها في الموقع
http://www.ossec.net/

والله ولي التوفيق

arabkit
05-09-2005, 01:01 PM
الفكرة الثانية
----------------
================================================== ===============
Changing APF log for TDP/UDP drops
================================================== ===============
إذ كنت مضجرا من رؤية ملف
/var/log/messages
ممتلئا من الرسائل المرسلة من قبل الـجدار الناري apf فيوجد حل بإنشاء ملف لوغ منفصل من أجل TCP/UDP OUTPUT and drops
وهذا سيحعل ملف لوغ الرسائل غير ممتلئ كثيرا وسهل التصفح

المتلطلبات:
-----
اصدار جادر ناري
APF Firewall 0.9.3 او أعلى كما انه يمكن أن يعمل على إصدار أدنى لكن ذلك لم يجرب لمعرفة إذا كان يعمل أم لا


تغيير إعدادات الـ APF Firewall
------------------------
1- قم بالدخول إلى السيرفر كرووت

2- انشئ ملف لوغ جديد فقط من أجل the TCP/UDP output/drops from APF
touch /var/log/iptables

3- قم بتغيير السماحيات من أجل تقييد النفاذ:
chmod 600 /var/log/iptables
4- يجب علينا القيام بعمل باك لملف الـ syslog من أجل الأمان في حال قمنا باي خطأ عبر التلعليمة:

cp /etc/syslog.conf /etc/syslog.conf.bak
5- تغيير الـ syslog ليجبر الـ iptables ليستخدم ملف اللوغ الجديد:
pico /etc/syslog.conf

6- أضف ما يلي في نهاية الملف:


# Send iptables LOGDROPs to /var/log/iptables
kern.=debug /var/log/iptables

- احفظ التغييرات
ctrl + X then Y
8- اعد تشغيل خدمة syslogd لتنفيذ التعديلات الجديدة :
/sbin/service syslog reload
9- عمل نسخة احتياطية للـ أ.ب.اف:
cp /etc/apf/firewall /etc/apf/firewall.bak
10- فتح الـ أ.ب.ف وعمل تعديلات عليه:
pico /etc/apf/firewall
11- قم بالبحث عن DROP_LOG
ستجد المقطع التالي
if [ "$DROP_LOG" == "1" ]; then
# Default TCP/UDP INPUT log chain
$IPT -A INPUT -p tcp -m limit --limit $LRATE/minute -i $IF -j LOG --log-prefix "** IN_TCP DROP ** "
$IPT -A INPUT -p udp -m limit --limit $LRATE/minute -i $IF -j LOG --log-prefix "** IN_UDP DROP ** "
قم بتبديله بالتالي:

if [ "$DROP_LOG" == "1" ]; then
# Default TCP/UDP INPUT log chain
$IPT -A INPUT -p tcp -m limit --limit $LRATE/minute -i $IF -j LOG --log-level debug
$IPT -A INPUT -p udp -m limit --limit $LRATE/minute -i $IF -j LOG --log-level debug

12- ابحث عن DROP_LOG أكثر من مرة حتى تجد المقطع التالي:

if [ "$DROP_LOG" == "1" ] && [ "$EGF" == "1" ]; then
# Default TCP/UDP OUTPUT log chain
$IPT -A OUTPUT -p tcp -m limit --limit $LRATE/minute -o $IF -j LOG --log-prefix "** OUT_TCP DROP ** "
$IPT -A OUTPUT -p udp -m limit --limit $LRATE/minute -o $IF -j LOG --log-prefix "** OUT_UDP DROP ** "
قم بتبديله إلى

if [ "$DROP_LOG" == "1" ] && [ "$EGF" == "1" ]; then
# Default TCP/UDP OUTPUT log chain
$IPT -A OUTPUT -p tcp -m limit --limit $LRATE/minute -o $IF -j LOG --log-level debug
$IPT -A OUTPUT -p udp -m limit --limit $LRATE/minute -o $IF -j LOG --log-level debug

13- احفظ التغييرات على الجدار الناري:
Ctrl + X then Y
14- أعد تشغيل الـجدار الناري لتنفيذ التعليماتت الجديدة عبر الأمر:
/etc/apf/apf –r
15- نفذ الأمر للتأكد من أن ملف اللوغ الجديد يستقبل الرسائل:
tail –f /var/log/iptables
ستجد أشياء مكتوبة كهذه:

Aug 27 15:48:31 fox kernel: IN=eth0 OUT= MAC=00:0d:61:37:76:84:00:d0:02:06:08:00:08:00 SRC=192.168.1.1 DST=192.168.1.1 LEN=34 TOS=0x00 PREC=0x00 TTL=118 ID=57369 PROTO=UDP SPT=4593 DPT=28000 LEN=14

كذلك يمكن فحص ملف اللوغ الأساسي بانه لا يتسقبل معلومات من الجدار الناري عبر الأمر
tail –f /var/log/messages
لمزيد من المعلومات يمكن الإطلاع على الرابط
http://www.rfxnetworks.com/apf.php

arabkit
05-09-2005, 01:44 PM
الفكرة الثالثة:
----------------
How to Disable Telnet

ان التيلينت خلال عملية الولوج أو تسجيل الدخول ترسل اسم المستخدم وكلمة السر بشكل واضح وبدون تشفير لذلك يجب ان يتم تعطيلها على السيرفر واستبدالها بالSSh
بعض مزودي خدمة الاستضافة لا يقومو بتعطيل هذه الخدمة بشكل افتراضي ويجب الانتباه إلى ذلك وتعطيلها كما ان التيلنيت تصغي إلى الرسائل الداخلة والخارجة عبر البورت رقم 23 وإليكم كيفية إلغاء تفعيل هذه الخدمة:
1- قم بالدخول إلى السيرفر كرووت من خلال اس اس اتش
2- قم بتنفيذ الأمر التالي:
pico /etc/xinetd.d/telnet
3- ابحث عن السطر
disable = no
وغيره إلى
disable = yes
4- قم بإعادة تشغيل خدمة inetd service عبر الأمر:
/etc/rc.d/init.d/xinetd restart
5- قد تبقى هذه الخدمة فعالة بعد الذي فعلناه لذلك لضمان أنها ليست فعالة نفذ الامر:
/sbin/chkconfig telnet off
6- اعمل سكان للسيرفر للتأكد من أن البورت 23 مغلق:
nmap -sT -O localhost
7- نفذ الأمر التالي لكي تتأكد من انه لا يوجد اي عملية خاصة بالتيلينت فعالة وإذا وجدت اي واحدة دمرها ب kill:
ps -aux | grep telnet

Ali Hamad
05-09-2005, 05:00 PM
السلام عليكم :

شكرا لك على جهدك في افادة اخوانك ، دروس رائعة ، اتمنى من الاستمرار في ذلك .

خالص التحية ،
علي حمد ،

arabkit
05-09-2005, 09:28 PM
شكرا لك يا أخي Ali Hamad وان شاء الله سأستمر في طرح كل الأفكار الجديدة في هذا المجال
وأليكم الفكرة الرابعة

================================================== =================
How to install BFD (Brute Force Detection)
================================================== =================
ماهو ال BDF أو Brute Force Detection؟
هو سكريبت شيل يقوم بمراقبة من يدخل السيرفر ويراقب حالات الدخول الفاشلة إلى السيرفر ويقوم بتسجيلها في ملف لوغ , ولا توجد معلومات تفصيلية كثيرة عن

الـbdf كل ماهنالك أن تركيبه واستعماله سهل جدا للغاية ومن المهم ان يكون على كل سيرفر كمستوى جديد لحماية السيرفرسنقوم الآن بشرح طريقة تركيبه هلى السيرفر
المتطلبات:
-----
يجب ان تكون قد ركبت الجدار الناري APF حيث أن الBFD لا يمكنه العمل بدونه

التركيب----
1- أدخل إلى السيرفر عن طريق الـ ssh

2-انشئ مجلد جديد أو أدخل إلى المكان الذي تخزن عليه الملفات المؤقتة :
cd /root/downloads
3- قم بجلب الملف إلى السيرفر عن طريق الأمر:
wget http://www.rfxnetworks.com/downloads/bfd-current.tar.gz
4- قم بفك ضغط الملفات عن طريق الأمر:
tar -xvzf bfd-current.tar.gz
5-نفذ الأمر:
cd bfd-0.7

6- قم بالتركيب والتنصيب عن طريق الامر:
./install.sh
سوف تتلقى رسالة مفادها أنه تم التثبيت:

.: BFD installed
Install path: /usr/local/bfd
Config path: /usr/local/bfd/conf.bfd
Executable path: /usr/local/sbin/bfd

تعديل إعدادات ال BFD:
-----------
1- افتح ملف الإعدادات عن طريق الامر:
pico /usr/local/bfd/conf.bfd
2- فعل إعطاء الإنذار في حال حدوث محاولة اختراق:
ابحث عن ALERT_USR="0" وغيرها إلى ALERT_USR="1"

3- ضع البريد الالكتروني الذي تريد تلقي الإنذار عليه:
ابحث عن EMAIL_USR="root" وغيرها إلى EMAIL_USR="your@yourdomain.com"

4- احفظ التغييرات Ctrl+X then Y

5- يجب ان تضع الاي بي ادريس IP Address الخاص بك عندما تدخل إلى السيرفر حتى لا يعمل لك بلوك:
pico -w /usr/local/bfd/ignore.hosts
ثم اكتب عناون الاي بي الذي تدخل به مثال:192.168.1.1
6- احفظ التغييرات Ctrl+X then Y
الآن قم بتشغيل البرنامج عن طريق الأمر:
/usr/local/sbin/bfd -s
7- يمكنك أن تتحكم بطريقة عمل بعض البرامج على السيرفر عن طريق تفحص الدليل
/usr/local/bfd
انتهت الفكرة

الفكرة الخامسة

================================================== ==================
Stop PHP nobody Spammers
================================================== ==================
لا تستطيع بي اتش بي و لا الأباتشي منذ إصداراتها الأولى مراقبة ومتابعة الاشخاص اللذين يرسلون البريد الالكتروني عبر PHP mail function و ذلك عبر مستخدم nobody user والاشخاص الحقودين والماكرين يستغلون هذه النقطة لإرسال رسائل السبام بواسطة سكريتات بي اتش بي أوغيرها دون ان تعرف من يقوم بذلك من هؤلاء الاشخاص
إن مراقبة exim_mainlog لا يساعدك كثيرا في هذا الأمر لأنك سترى أن هناك من يرسل رسائل لكن لا تدري من هو المستخدم الذي يرسل هذه الرسائل و أين تقع السيكريبت التي ترسل هذه الرسائل
أذا فحصت ملف PHP.ini ستجد أن برنامج البريد موضوع بشكل افتراضي على المسار
/usr/sbin/sendmail
ستجد ان اغلب سكريبتات الـphp تستخدم هذا المسار لإرسال الرسائل عبر التابع mail(); لذلك فإن اغلب الرسائل سترسل عبر
/usr/sbin/sendmail =)

المتطلبات
-----
سنفترض أنك تستخدم الإصدارات التالية:
Apache 1.3x, PHP 4.3x and Exim
الوقت اللازم:
------
عشر دقائق تقريبا

طريقة التنفيذ:-------
1- الدخول إلى السيرفر عبر SSh
2- قم بايقاف Exim لمنع اي تأثيرات جانبية:
/etc/init.d/exim stop
3-قم بعمل نسخة احتياطية للملف الافتراضي /usr/sbin/sendmail عبر الأمر:
mv /usr/sbin/sendmail /usr/sbin/sendmail.hidden
4- قم بإنشاء سكريبت مراقبة للإيميلات الجديدة المرسلة:
pico /usr/sbin/sendmail
انسخ ما يلي:


#!/usr/local/bin/perl

# use strict;
use Env;
my $date = `date`;
chomp $date;
open (INFO, ">>/var/log/spam_log") || die "Failed to open file ::$!";
my $uid = $>;
my @info = getpwuid($uid);
if($REMOTE_ADDR) {
print INFO "$date - $REMOTE_ADDR ran $SCRIPT_NAME at $SERVER_NAME n";
}
else {

print INFO "$date - $PWD - @infon";

}
my $mailprog = '/usr/sbin/sendmail.hidden';
foreach (@ARGV) {
$arg="$arg" . " $_";
}

open (MAIL,"|$mailprog $arg") || die "cannot open $mailprog: $!n";
while (<STDIN> ) {
print MAIL;
}
close (INFO);
close (MAIL);
والصقه


5- قم بتغيير السماحيات عبر الأمر:
chmod +x /usr/sbin/sendmail
6- انشئ ملف لوغ جديد :

touch /var/log/spam_log

chmod 0777 /var/log/spam_log

7- أعد تشغيل exim
/etc/init.d/exim start
8- راقب ملف spam_log وجرب قبل ذلك ان ترسل أي رسالة مثلا من أي صفحة اتصل بنا :
tail - f /var/log/spam_log
لمنع جعل ملف اللوغ كبير يجب ضبط إعدادات Log Rotation Details
وذلك عبر مايلي:
1- افتح الملف logrotate.conf عبر الامر:
pico /etc/logrotate.conf
2- ابحث عن:

# no packages own wtmp -- we'll rotate them here
/var/log/wtmp {
monthly
create 0664 root utmp
rotate 1
}
أضف بعدها:

# SPAM LOG rotation
/var/log/spam_log {
monthly
create 0777 root root
rotate 1
}

انتهت الفكرة الخامسة

يتبع ......

TheOther
05-09-2005, 11:01 PM
مشكور جدا أخى على هذه المعلومات القيمة و إن شاء الله الموضوع هيتثبت

و نتمنى نشوف تفاعل أكثر من الإخوان هنا مع الموضوع

استمر يا أخى بارك الله فيك

الرّاسم
06-09-2005, 12:31 AM
الله يعطيك العافيه على جهودك الرائعه

تحياتي

m7tref.net
06-09-2005, 01:37 AM
مشكور و يعطيك العافيه و جعلها الله في ميزان حسناتك

تحياتي لك ...
المحترف ديزاين لخدمات الإنترنت و التصميم

AhmedServ.com
06-09-2005, 06:48 AM
موضوع جميل جداً ويستحق التثبيت ..
موفق ان شاء الله

طالب^علم
06-09-2005, 06:57 AM
يعطيك الف عافيه اخوي arabkit

Balarb Hosting
06-09-2005, 01:43 PM
مشكور يالغالي ويعطيك ربي الف عافية

arabkit
07-09-2005, 01:32 PM
شكرا للجميع على ردودهم واتمنى أن أوفق في اكمال ما بدات به حتى النهاية
واليكم الفكرة السادسة:

================================================== ====================
E-mail Alert on Root SSH Login============================================= =========================
بهذه الفكرة التي نتكلم عنها اليوم ستتمكن من استقبال رسالة بريدية مجرد دخول أي شخص إلى السيرفر كرووت وهذا أمر هام من أجل تتبع كل من يدخل إلى السيفر كرووت حيث سترسل رسالة فورية لك تخبرك بذلك ويفضل أن تضع عنوان بريد الكتروني في سيرفر أو استضافة أخرى وليست على نفس سيرفرك الذي سيرسل رسالة التحذير ويفضل استخدام هذه الطريقة في حال كان هناك أكثر من مدير للسيرفر واليكم الطريقة:
1- إدخل إلى السيرفر كرووت عن طريق SSh
2- نفذ الأمر :
cd /root
3- افتح الملف .bashrc للكتابة:
pico .bashrc
4- أضف ما يلي في نهاية الملف مع تغيير الايميل والهوست:

echo 'ALERT - Root Shell Access (YourserverName) on:' `date` `who` |
mail -s "Alert: Root Access from `who | cut -d"(" -f2 | cut -d")" -
f1`" you@yourdomain.com


5- أحفظ الملف Crtl + X then Y

6- يمكنك الآن الخروج من الـ اس اس اتش والدخول مرة ثانية للتجريب
وهذه نهاية الفكرة

arabkit
09-09-2005, 09:07 PM
الفكرة السابعة:
================================================== ===================
How to install APF (Advanced Policy Firewall)
================================================== ===================
برنامج الجدار الناري من أقوى برامج الحامية يصلح لأن يكون راكبا على كل سيرفر يقوم بحماية أكيدة وفعالة للسيرفر وهو سهل الاعداد ولمزيد من الملعولمات يمكن الإطلاع على الرابط:
http://www.rfxnetworks.com/apf.php

طريقة التركيب:
1- الدخول إلى السيرفر كرووت عن طريق SSh
2- انشئ مجلدا لتحميل الملف المضغوط عليه و فك ضغط هذا الملف وليكن هذا المجلد اسمه downloads
3- إدخل إلى هذا المجلد عن طريق الامر:
cd /root/downloads
4- قم بجلب ملف الجدار الناري غلى السيرفر عن طريق الأمر:
wget http://www.rfxnetworks.com/downloads/apf-current.tar.gz
5- فم بفك ضغط هذا الملف:
tar -xvzf apf-current.tar.gz
6- حسب الإصدار الأخير للبرنامج نفذ الأمر
cd apf-0.9.5-1/
7- شغل برنامج التنصيب:
./install.sh
8- سوف تتلقى رسالة بانتهاء التنصيب:

Installing APF 0.9.5-1: Completed.

Installation Details:
Install path: /etc/apf/
Config path: /etc/apf/conf.apf
Executable path: /usr/local/sbin/apf
AntiDos install path: /etc/apf/ad/
AntiDos config path: /etc/apf/ad/conf.antidos
DShield Client Parser: /etc/apf/extras/dshield/

Other Details:
Listening TCP ports: 1,21,22,25,53,80,110,111,143,443,465,993,995,2082, 2083,2086,2087,2095,2096,3306
Listening UDP ports: 53,55880
Note: These ports are not auto-configured; they are simply presented for information purposes. You must manually configure all port options.

9- سنقوم الآن بضبط إعدادات الجدار الناري فنفتح الملف التالي للتعديل:
pico /etc/apf/conf.apf
10- ابحث عن USE_DS="0"
وغيرها إلى USE_DS="1"

11- إعدادات بورتات الجدار الناري:
من اجل cpanel
من اجل بورتات الاستقبال inbound ports:
أضف مايلي
# Common ingress (inbound) TCP ports -3000_3500 = passive port range for Pure FTPD
IG_TCP_CPORTS="21,22,25,53,80,110,143,443,2082,2083, 2086,2087, 2095, 2096,3000_3500"
#
# Common ingress (inbound) UDP ports
IG_UDP_CPORTS="53"

بورتات الإرسال Outbound ports

# Egress filtering [0 = Disabled / 1 = Enabled]
EGF="1"

# Common egress (outbound) TCP ports
EG_TCP_CPORTS="21,25,80,443,43,2089"
#
# Common egress (outbound) UDP ports
EG_UDP_CPORTS="20,21,53"

من اجل سيرفرات Ensim :أضف مايلي
من اجل بورتات الاستقبال inbound ports:

# Common ingress (inbound) TCP ports
IG_TCP_CPORTS="21,22,25,53,80,110,143,443,19638"
#
# Common ingress (inbound) UDP ports
IG_UDP_CPORTS="53"
من اجل بورتات الإرسال Outbound ports:

# Egress filtering [0 = Disabled / 1 = Enabled]
EGF="1"

# Common egress (outbound) TCP ports
EG_TCP_CPORTS="21,25,80,443,43"
#
# Common egress (outbound) UDP ports
EG_UDP_CPORTS="20,21,53"
أحفظ الملف Crtl + X then Y

12- شغل الجدار الناري عبر الأمر:
/usr/local/sbin/apf -s
هناك أوامر اخرى مثل:
إعادة تشغيل الجدار الناري:

-s|--start ......................... load firewall policies
-r|--restart ....................... flush & load firewall إعادة التشغيل
-f|--flush|--stop .................. flush firewall توقيف الجدار الناري
-l|--list .......................... list chain rules إظهار القواعد التي يعمل عليها الجدار الناري
-st|--status ....................... firewall status حالة الجدار الناري

13-تعديل خيار الـ DEV
بعد التأكد من ان الجدار الناري يعمل بشكل صحيح يجب إلغاء خيار ايقاف الجدار الناري كل خمس دقائق من الكرون جوب cron وذلك بفتح الملف :
pico /etc/apf/conf.apf
ابحث عن
DEVM="1" وغيرها إلى DEVM="0"

14- إعداد الجدار الناري من اجل AntiDOS :
افتح الملف:
pico /etc/apf/ad/conf.antidos
إذهب إلى القسم # [E-Mail Alerts] و ضع الإعدادات التالية:
ضع هنا اسم شركتك:

# Organization name to display on outgoing alert emails
CONAME="Your Company"

من أجل أن يرسل لك رسالة عند حصول محاولة اختراق او دوس اتاك dos attack غير ما يلي إلى 1
# Send out user defined attack alerts [0=off,1=on]
USR_ALERT="0"

ثم ضع بريدك هنا
# User for alerts to be mailed to
USR="your@email.com"

أحفظ الملف Crtl + X then Y

15- أعد تشغيل الجدار الناري:
/usr/local/sbin/apf -r
16- فحص ملف اللوغ للجدار الناري:
tail -f /var/log/apf_log
Example output:
Aug 23 01:25:55 ocean apf(31448): (insert) deny all to/from 185.14.157.123
Aug 23 01:39:43 ocean apf(32172): (insert) allow all to/from 185.14.157.123

17- تشغيل جدار الناري عند كل إعادة تشغيل للسيرفر:
chkconfig --level 2345 apf on
لمنع الجدار الناري من العمل اتوماتيكيا عند تشغيل السيرفر:
chkconfig --del apf
18- عمل بلوك لاي بي معين:
هناك طريقتين:
الطريقة الاولى

/etc/apf/apf -d IPHERE COMMENTHERENOSPACES
السويتش او اللاحقة d- تعني عمل بلوك لأي بي محدد
IPHERE ضع بدلا عنها عنوان الاي بي الذي تريد حذفه
COMMENTHERENOSPACES يمكنك الكتابة بدلا عنها سبب المنع لكن أكتب كلمات بدون فراغ بينها
مثال:
./apf -d 185.14.157.123 TESTING
افتح بعدها الملف:
pico /etc/apf/deny_hosts.rules
ستجد:
# added 185.14.157.123 on 08/23/05 01:25:55
# TESTING
185.14.157.123

الطريق الثانية لمنع اي بي:
افتح الملف
pico /etc/apf/deny_hosts.rules
ضع في كل سطر اي بي واحد من الايبيات التي تريد عمل بلوك لها وعليك بعد حفظ الملف غعادة تشغيل الجدار الناري:
/etc/apf/apf -r
السماح لاي بي محجوب بإمكانية وإلغاء البلوك عليه:
عن طريق التعليمة:
/etc/apf/apf -a IPHERE COMMENTHERENOSPACESالخيار او اللاحقة a- تعني إلغاء الحجب عن اي بي معين
IPHERE ضع بدلا عنها عنوان الاي بي الذي تريد إلغاء حجبه
COMMENTHERENOSPACES يمكنك الكتابة بدلا عنها سبب إلغاء الحجب لكن أكتب كلمات بدون فراغ بينها

مثال:
./apf -a 185.14.157.123 UNBLOCKING

pico /etc/apf/allow_hosts.rules

# added 185.14.157.123 on 08/23/05 01:39:43
# UNBLOCKING
185.14.157.123

IT4ARB
10-09-2005, 12:28 AM
دروس مفيدة جدا جدا جدا جدا جدا
الف الف شكر يالغالى

Dooem
10-09-2005, 01:18 AM
مشكووووووور اخووي arabkit جهد رائع

arabkit
13-09-2005, 11:01 PM
الفكرة الثامنة
================================================== ========================
تغيير الرسالة الترحيبية عند دخول المستخدمين إلى السيرفر
================================================== ========================

يمكن وضع رسالة ترحيبية تظهر عند دخول أي مستخدم إلى السيرفر عن طريق الـ SSh

ويكون ذلك بتعديل ملف motd

والطريقة:
1- ادخل غلى السيرفر كرووت عن طريق الـ SSh
2- افتح الملف التالي:
pico /etc/motd
3- اكتب الرسالة الترحيبية التي تريدها ان تظهر
4-أحفظ الملف Crtl + X then Y
انتهت الفكرة

Nero
16-09-2005, 03:14 PM
مشكور يا غالى دروس روعة
وجعلها الله فى ميزان حسناتك

Jolly
29-09-2005, 12:56 PM
السلام عليكم
وفقط الله
وشرحك جميل جدا

الحاج متولى
29-09-2005, 03:23 PM
العزيز arabkit
حقيقة دروس حلوة ومفيدة لنا
نتمنى ان تعطينا منها اكثر حتى نستفيد منها اكثر
الف شكر لك ونرفع ايادينا لله عز وجل ان يبارك لك فى عملك ويعطيك العافية
شكرى العميق اخى

alamal
09-10-2005, 12:26 AM
الحقيقة موضوع مفيد جدا ونتمنى ان تستمر ولك منا الدعاء بالتوفيق
استفدنا كثيرا من هذه الأفكار ونتمنى ان تزيد

arabkit
17-10-2005, 08:35 PM
السلام عليكم ورحمة الله وبركاته

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

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

بين الحين والآخر قد تتعطل قواعد البيانات نتيجة لانخفاض مساحة القرص أو نتيجة فشل في التغذية الكهربائية او نتيجة لأي خطأ آخر

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

1- اصلاح MyISAM mySQL Tables/Databases

cd /var/lib/mysql/DBNAME

myisamchk *.MYI

2- اصلاح mySQL Tables/Databases

cd /var/lib/mysql/DBNAME

isamchk *.MYI

arabkit
17-10-2005, 08:47 PM
الفكرة العاشرة

-----------------------------------------------------------------------------------
Securing Your /tmp Partition with Cpanel/WHM
-------------------------------------------------------------------------

السلام عليكم
لقد وجدت هذه الطريقة من اجل حماية tmp حيث بهذه الطريقة تجعل قسما أو بارتشن محمي وخاص بالـ tmp وذلك عن طريق عمل ماونت mount له باستخدام noexec- وإليكم الطريقة

1- أدخل إلى السيرفر كرووت عن طريق الـSSh
2-أدخل إلى مجلد dev على سيرفرك :

cd /dev

3- نقوم بانشاء مساحة 100 ميغا عن طريق انشاء ملف tmpMnt عبر التعليمة التالية:

dd if=/dev/zero of=tmpMnt bs=1024 count=100000

ويمكنك زيادة الحجم بالقدر الذي تريد

4- انشاء نمط نظام الملفات للملف tmpMnt عبر التعليمة:

/sbin/mke2fs /dev/tmpMnt

5- نقوم بعمل باك اب لمجلد التيمب tmp الأساسي عبر تنفيذ السطر:

cd /
cp -R /tmp /tmp_backup

6- عمل ماونت mount لقسم التيمب الجديد عبر noexec :

mount -o loop,noexec,nosuid,rw /dev/tmpMnt /tmp

7- نقوم بتغيير السماحيات:

chmod 1777 /tmp

8- نقوم الآن بنسخ كافة محتويات قسم التيمب القديم إلى الجديد:

cp -R /tmp_backup/* /tmp/

9 - نقوم بحذف مجلد التيمب القديم:

rm -rf /tmp_backup

10-نقوم بعمل ماونت أوتوما تيكي عند إعادة اقلاع السيرفر في كل مرة حيث نقوم بفتح الملف fstab عبر التعليمة:

pico -w /etc/fstab

وعندما تقوم بفتح هذا الملف ستجد مكتوبا فيه شيئأ كهذا:


/dev/hda3 / ext3 defaults,usrquota 1 1
/dev/hda1 /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/hda2 swap swap defaults 0 0

في نهاية هذا الملف أضف الكود التالي:

/dev/tmpMnt /tmp ext2 loop,noexec,nosuid,rw 0 0

حيث أن كل فراغ موجود في السطر السابق نقوم بتوليده عن طريق زر Tap في لوحة المفاتيح

11- قم بحفظ الملف:

Ctrl + X and Y

وهذا كل شيئ

والله ولي التوفيق

تمت ترجمة هذه الفكرة من الموقع الأجنبي:
http://www.webhostgear.com/34.html
-------------------------------------------------

tarabi
17-10-2005, 09:56 PM
الف شكر ليك على الموضوع أخوي وجزاك الله خير

snooopy
05-11-2005, 03:27 AM
موضوع وافي وكافي

تسلم والله يجزاك عنا كل خير اخوي

arabkit
07-11-2005, 08:35 PM
الفكرة الحادية عشر
--------------------------------------------------------
كيف استفيد من ملف .htaccess
------------------------------------------------------

مقدمة
سنتعرف في هذا الموضوع على ما يمكننا الوصول و كيف يمكن تطوير موقعنا بواسطة ملف htaccess . و بالرغم من كونه ملف صغير فعدة أسطر فيه يمكن أن تطور موقعك بشكل كبير.

هل يدعمه مستضيف موقعي؟
لا يمكن الإجابة على هذا السؤال . لكن يمكنك تجربة إنشاء ملف و إرساله إلى مستضيفك و تأكد إن كان يعمل أولا أو أسأل مستضيف موقعك .

إنشاء الملف
افتح محرر النصوص المفضل لديك مثلا برنامج notepad المرفق مع الويندوز (programs>accessories>notepad) و احفظ الملف باسم

.htaccess
ليس هناك اسم للملف فقط امتداد مكون من 8 أحرف ولذلك قد لا تقبل بعض الأنظمة حفظ الملف لذلك يمكنك عند الحفظ وضع علامتي تنصيص حول الملف

".htaccess"

ملاحظة أخيرة
هذا الملف لا يمكن أن يضرك كل ما هناك قد تكون صفحات خطأ 500 و بمجرد حذف الملف يعود موقعك إلى ما كان عليه لكن لو كنت تستعمل امتدادات فرونت بيج Microsoft FrontPage Extensions فهو بالفعل يستخدم هذا الملف . كما قد يكون مستضيف موقعك يستخدمه و عدلت انت عليه من خلال cpanel مثلا .. لو وجد هذا الملف في سيرفرك قم بتحميله إلى جهازك و التعديل عليه و إعادة تحميله .

لو جربت الطريقة السابقة و لم تعمل.. أعط أي اسم للملف و ارفعه لمستضيفك و بعد ذلك غير اسمه .

أولا : صفحات خطأ خاصة بموقعك
انشأ صفحات الخطأ التي تريد مثلا صفحة الخطأ رقم 404 و الذي يعني ان الصفحة غير موجودة سننشأ ملف و نسميه 404error.htm و هكذا و نكتب الكود التالي في الملف


ErrorDocument 403 http://yoursite/403error.htm

ErrorDocument 404 http://yoursite/404error.htm

نحمل الملف مع الصفحات التي انشأناها إلى السيرفر . و انتهينا ..:) هناك عدد كبير من الاخطاء يمكنك التعرف عليها هنا :

400, bad request المستضيف غير مهيئ أو قادر على الوصول لهذا العنوان .
403, access forbidden دخول غير مسموح أو منطقة محظورة .
404, document not found الصفحةالتي طلبتها غير موجودة في الموقع ( الأكثر شيوعا)
500, internal server error خلل في السيرفر ناتج عن ملف أو برنامج .
يوجد مرفق لنموذج الملف إذا أردت تحميله



ثانيا : وقف صفحة الفهرس
لو أردت وقف استعراض محتويات مجلد معين بدل من إنشاء فهرس وهمي في كل مجلد تملكه فقط ضع الأمر

Options -Indexes

و أي مجلد لا يحتوي على فهرس يحاول أي شخص دخوله سيظهر له دخول غير مسموح ..

ثالثا : منع أصحاب رقم الأي بي المعين من الدخول
أحيانا قد تريد منع أصحاب رقم أي بي معين من الدخول لموقعك أو السماح فقط لمستخدمي مزود خدمة معين من الدخول لموقعك .بالطبع أن تحتاج لمعرفة رقم الابي بي .

للمنع

deny from 000.000.000.000

للسماح

allow from 000.000.000.000

رابعا : منع الجميع من الدخول لمجلد معين .

deny from all
هذا لا يمسح بالدخول للمجلد لكن يسمح السكريبت او للبرنامج من استدعاء الملفات .

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

Redirect /oldfolder/test.html http://site.com/newfile.htm

الصفحة التي سيطلبها الزائر هي olderfolder/test.html إلى العنوان التالي newfile.htm

كما يمكنك التحويل لمجلد كامل مثلا في التصميم القديم لموقعنا كان هناك مجلد اسمه psp يحتوي على دروس بينت شوب برو وبعد إعادة تصميم موقعنا اصبح العنوان
http://arabkit.com/cat/9

لكن هناك الكثير من المواقع أو الموضوعات الخارجية التي مازالت تشير للمجلد القديم و لا يمكننا حصر جميع أسماء الملفات القديمة فيمكننا تحويل المجلد كاملا إلى العنوان الجديد

Redirect /psp http://arabkit.com/cat/9

انتهت الفكرة

تم أخذ هذه الفكرة من شبكة الدكتور نت

أمير الجزيره
24-01-2006, 12:53 AM
الله يعطيك العافيه عزيزي موضوع مفيد جداً

لاخلا ولاعدم منك..

tawashuae
05-02-2006, 01:32 AM
بارك الله فيك وجزاك الله خير على هذه الدروس

انـتـهـيـنـا
02-04-2006, 08:03 PM
ماشاء الله ..

شرح مميز أخوي

جزاك الله اللف خير على الشرح الوافي ..

AbdulAziz Nasser
08-04-2006, 12:29 PM
مشاء الله عمل جميل ويستحق الاشادة

ارجو عدم التوقف وافادتنا بما لديك

دعواتي لك بالتوفيق

الجيل العربى
08-04-2006, 03:26 PM
شرح مفيش اروح من كدة دمت لنا ودامت شرحاتك

Arabiahoster.Com
11-04-2006, 01:53 PM
مشكور كتير يا اراب كيت دروس جميلة ومفيدة كتيير

كرسي
26-04-2006, 06:49 PM
والآن وبعد مرور عدة أشهر على طرح هذا الموضوع لأول مرة ، هل هناك المزيد من الاحتياطات الجديدة المطلوب توفرها في السيرفر؟

crock
27-04-2006, 03:02 PM
بصراحة درس رائع .. مشكوووور وما قصرت
وبالتوفيق اخوي

كرك

ناصر مهدى
11-05-2006, 02:04 PM
بارك الله فيك اخى الغالى

Elshreef.com
14-05-2006, 06:39 AM
جزاك الله خير على هذه الدروس المفيده

brokensoft
09-06-2006, 12:10 AM
مشكور أخى على الشرح الأكثر من رائع

Egyp6.com
10-08-2006, 04:14 AM
جزاك الله كل الخير اخى الحبيب

طفشان
17-10-2006, 08:56 PM
بارك الله فيك والى الامام
صدقا ان شرحك مفيد للغاية

sadco
19-10-2006, 02:15 PM
رمضان كريم



بارك الله فيكم واثابكم فى هذا الشهر الكريم

proginfo
10-12-2006, 01:20 AM
السلام عليكم
و الله موضوع جيد و شيق
بارك الله فيك اخى ننتضر جديدك

serag777
03-06-2007, 11:28 PM
http://www.serag77.com/vb/imgcache/818.imgcache

http://www.serag77.com/vb/imgcache/819.imgcache

http://www.serag77.com/vb/imgcache/820.imgcache

ArSup
05-06-2007, 11:12 PM
بسم الله الرحمن الرحيم


الوقت :
10 دقايق

المتطلبات :
تكون لديك صلاحيات روت على السيرفر

الخطوه الأولى :
إدخل على سيرفر باليوزر روت أو إكتب su عشان تدخل بالروت

الخطوه الثانية :
أغلق برنامج exim كاتالي ..
/etc/init.d/exim stop

الخطوة الثالثة :
إحفظ نسخه من ملف sendmail
mv /usr/sbin/sendmail /usr/sbin/sendmail.backup

الخطوة الرابعه :
أنشئ ملف جديد sendmail يحتوي على سكربت متابعة السبام
pico /usr/sbin/sendmail

إلصق الكود التالي في الملف ...


#!/usr/local/bin/perl

# use strict;
use Env;
my $date = `date`;
chomp $date;
open (INFO, ">>/var/log/spam_log") || die "Failed to open file ::$!";
my $uid = $>;
my @info = getpwuid($uid);
if($REMOTE_ADDR) {
print INFO "$date - $REMOTE_ADDR ran $SCRIPT_NAME at $SERVER_NAME n";
}
else {

print INFO "$date - $PWD - @infon";

}
my $mailprog = '/usr/sbin/sendmail.hidden';
foreach (@ARGV) {
$arg="$arg" . " $_";
}

open (MAIL,"|$mailprog $arg") || die "cannot open $mailprog: $!n";
while (<STDIN> ) {
print MAIL;
}
close (INFO);
close (MAIL);

الخطوه الخامسة :
غير صلاحيات ملف sendmail الجديد
chmod +x /usr/sbin/sendmail

الخطوة السادسة :
أنشئ ملف وق جديد لحفظ كل الرسائل المرسلة من سيرفرك بإستخدام سكربتات php
touch /var/log/spam_log

أعطية الترخيص 777
chmod 0777 /var/log/spam_log

الخطوة السابعة :
شغل برنامج exim ..
/etc/init.d/exim start


الخطوة الثامنة :
إرسل رسالة من اي سكربت او فورم للإرسال
إكتب الامر هذا لعرض محتويات ملف اللوق لتأكد بأن الخطوات السابقة صحيحة ..
tail - f /var/log/spam_log

مثال للخرج ...

Mon Apr 11 07:12:21 EDT 2005 - /home/alqursan/public_html/maillist - nobody x 99 99 Nobody / /sbin

/nologin


الخطوة التاسعة :
لأن ملف اللوق سوف يوقم بتخزين سطووور كثير لكل عملية إرسال .. بعد فترة بيكون حجمه كبير مره إذاً ! .... لازم نسوي هذه الخطوة


نقوم بالتعديل التالي لملف rotate إكتب الامر هذا لتحرير الملف

pico /etc/logrotate.conf

أبحث عن الكود :
# no packages own wtmp -- we'll rotate them here
/var/log/wtmp {
monthly
create 0664 root utmp
rotate 1
}

أضيف أسفله مباشرة :


# SPAM LOG rotation
/var/log/spam_log {
monthly
create 0777 root root
rotate 1
}


ملاحظة :
* إذا رقيت برنامج exim سوف يتغير ملف sendmail لذا إكتب الامر هذا عشان يحافظ على الملف من التغيير
chattr + i /usr/sbin/sendmail

* الآن يمكنك معرفة الي ارسل حتى لو كان في وضع nobady
منقول للفائدة

ArSup
05-06-2007, 11:14 PM
[درس] تركيب Mytop لمعرفه من مسبب الضغط على سرفرك

السلام عليكم ورحمة الله وبركاته

هذا السكريبت البسيط تستخدمه لما يكون عندك مواقع كثيره وهناك ضغط كبير على السرفر من قواعد البيانات ولا تتدرى اى موقع يستهلك موارد سرفرك هذا السكريب يكشف لك اسم قاعده البيانات ومدى تأثيرها على سرفر

Mytop مزيد من المعلومات حول السكريبت اضغط هنا

طريقه التركيب

wget http://jeremy.zawodny.com/mysql/mytop/mytop-1.4.tar.gz
tar -zxf mytop-1.4.tar.gz
cd mytop-1.4
perl Makefile.PL
make
make test
make install

تم التركيب

لتشغيل السكريبت

/usr/bin/mytop

بعدها بتشوف كل قواعد البيانات وانتظر دقيقه وشوف اكبر قاعده بيانات استهلاكاُ

وللخروج من السكريبت اضغط q

بعد ما تشوف قاعده البيانات اتصل بصاحب الحساب وابلغه باسم القاعده وقوله يصلحها

وهناك بعض الهاكات تسبب هذا الضغط خاصه ان كان رواد المنتدى كثير


سلام عليكم
www.arsup.net

الصريح جداً
21-07-2007, 05:56 PM
جزاكم الله خير ابدعتم يالطيبين وان شاء الله لي عوده مع دروس أخرى حتى تمتلئ هذه المكتبة بالمفيد

تشآآآآآآآو :)

can4s
26-09-2007, 05:24 AM
بالفعل إبداع
ما قصرتم يا الطيبين
و بالتوفيق ان شاء الله
سلام عليكم

شبكة دمعة العشاق
16-11-2007, 06:46 PM
يعطيك العافيه على المجهود المتعوب عليه

dr.hsn
13-01-2008, 10:28 PM
مشكوووووووووووووور

kenawy
27-02-2008, 09:17 PM
موضوع جميل
الف شكر اخى

9ada4host.com
12-06-2008, 06:34 PM
دروس ,, مهمه فعلا لآصحاب الشركات ,,

محب الويب العربي
30-08-2008, 03:53 PM
تحياتي لك تقبل مروري

Algerianhost.com
26-01-2009, 12:58 PM
جزاكم الله خيرا

abdulaziz999
11-02-2009, 12:07 PM
تسلم اخي الفاضل

saad-net
18-08-2009, 04:48 PM
بارك الله فيك يا اخي

brg7.com
02-10-2009, 10:40 PM
كفيت ووفيت اخي الفاضل

تحياتي

معلومات هوست
01-12-2009, 12:07 AM
شرح وافي اللة يجزيك
بالف خير اخوي

wisamnet101
05-02-2010, 08:29 AM
يعطيك العافية

بارك الله فيك



شبكة سندس الأدبية (http://www.sndos.com/)
دليل المواقع (http://www.sndos.com/dir/)

7elmk.com
18-03-2010, 09:08 AM
مشكوووووووووور ونرجى المزيد

الحبيب الباكي
19-05-2010, 07:11 PM
مشكوووووووور لك على المعلومات القيمة

mr.7abeb
04-07-2010, 08:12 PM
مشكوووووووووووووووووووووو ووووووووووووور

gulfprovider.com
22-08-2010, 07:49 AM
يعطيك العافيه على الشرح الرائع اخي العزيز ..

موضوع مميز ويستحق التثبيت

progs4u
11-10-2010, 10:25 AM
جزاك الله خيــرا أخى الكريم ،،

Hamada Bader
11-02-2011, 10:25 AM
ربنا يبارك فيك اخى
سيتم التطبيق على موقعى
بوابة بدر (http://www.badrgate.com/) منتديات بوابة بدر (http://www.badrgate.com/vb)

tech-webs.com
28-11-2011, 11:18 PM
بارك الله فيك عزيزي ...

isevenit.com
11-12-2011, 10:25 PM
يا اخوان الموضوع قديم جداً

wget http://www.ossec.net/rootcheck/files/rootcheck-1.5.tar.gz
tar -zxvf rootcheck-1.5.tar.gz
cd rootcheck-1.5
make all
./ossec-rootcheck

لا حظ هذه طريقة جديدة لتثبيه والاصدار احدث