السـلام عليكم ورحمة الله وبركاتــه
درس مفصلنا اليـوم مهم ويعتبر من دروس حماية السيرفر SERVERات
وهي خطوه لاعداد ملف PHP.INI وتأمينه وعمل حماية من الشلات وماشابـه ..
أيضاً حماية السيرفر SERVER من الشيل وتخطي السيف مود وهذه الأمور
في بادئ الأمر ينصح وبشدة تركيب install هذه البرامج
Mod SuPHP
Mod Security
Suhosin for PHP
ويتم تركيب installها من خلال لوحة التحكم WHM من الخيار
EasyApache (Apache Update)
إعادة بناء الأباتشي
وعند تحديث update الآباتشي و البي اتش بي يتم تحديث updateها الى آخر اصداره متوفره لآغلاق الثغرات
عند تركيب install برنامج Suphp يجب عليك ان تقوم بالتالي لكي لا تحدث لديك مشاكل :
نذهب الى ملف الآعدادات البرنامج suphp
pico /home/cpeasyapache/src/suphp.conf
وعدل القيم التالية
; Security options
allow_file_group_writeable=true
allow_file_others_writeable=false
allow_directory_group_writeable=true
allow_directory_others_writeable=false
check_vhost_docroot=true
userdir_overrides_usergroup=false
full_php_process_display=true
[handlers]
;Handler for php-scripts
application/x-httpd-php="php:/usr/bin/php"
application/x-httpd-php4="php:/usr/php4/bin/php"
application/x-httpd-php5="php:/usr/bin/php"
;Handler for CGI-scripts
;x-suphp-cgi="execute:!self"
[phprc_paths]
;Uncommenting these will force all requests to that handler to use the php.ini
;in the specified directory regardless of suPHP_ConfigPath settings.
;application/x-httpd-php=/usr/local/lib/
;application/x-httpd-php4=/usr/local/php4/lib/
application/x-httpd-php5=/usr/local/lib/
حذفت علامة
;
بعد ذلك
pico /usr/local/apache/conf/httpd.conf
أبحث عن
AddHandler cgi-script .cgi .pl
ضع أمامها # لتصبح
#AddHandler cgi-script .cgi .pl
وإبحث عن
<Directory "/">
وتأكد من أنه على النحو الآتي
<Directory "/">
Options -ExecCGI -FollowSymLinks -Includes IncludesNOEXEC Indexes -MultiViews SymLinksIfOwnerMatch
AllowOverride AuthConfig Indexes Limit FileInfo Options=IncludesNOEXEC,Indexes,Includes,MultiViews ,SymLinksIfOwnerMatch,FollowSymLinks
</Directory>
بعد ذلك تركيب install رولز للمود سكيورتي
وينصح بعمل رولز خاصة بسيرفر SERVERك لما يناسب إحتياجاتك
ومن ثم غير تصاريح الملفات
cd /bin
chmod 700 pwd
chmod 700 ls
chmod 700 uname
chmod 700 ln
chmod 700 cat
chmod 700 domainname
chmod 700 more
chmod 700 netstat
chmod 700 passwd
chmod 700 sh
chmod 700 su
chmod 700 touch
chmod 700 kill
chmod 700 ls
chmod 700 vi
chmod 750 /usr/bin/wget
chmod 750 /usr/bin/scp
cd
chmod 700 /usr/bin/perl
chmod 700 /usr/local/bin/perl
chown root:root /usr/local/bin/perl
chown root:root /usr/bin/perl
chmod 4755 /etc/passwd
chmod 400 /etc/shadow-
chmod 400 /etc/shadow
ومن ثم
/scripts/compilers off
تعطيل التلنت بطريقة يدوية :
pico /etc/xinetd.d/krb5-telnet
أو
pico /etc/xinetd.d/telnet
أبحث عن
disable=no
أجعله
disable=yes
ولا تنسى تفعيل
cPHulk Brute Force Protection
PHP open_basedir Tweak
Apache mod_userdir Tweak
Shell Fork Bomb Protection
وتعطيل
Compilers Tweak
ويتم تفعيلها وتعطيلها من الخيار داخل WHM اسمه Security Center
ENABLE تعني تفعيل
Disable يعني تعطيل
الآن
أكتب هالأمر
pico /usr/local/lib/php.ini
أبحث عن
safe_mode
وغير قيمتها من off الى on
ثم ابحث عن
open_basedir
وضع القيمه on
ابحث عن
safe_mode_gid
وضع القيمه off
ابحث عن
allow_url_fopen
وضع القيمه off
ابحث عن
expose_php
القيمه off
أبحث عن
register_globals
وضع القيمه off
الان حماية بعض الدوال
ابحث عن
disable_functions
واضف الدوال التاليه بعد علامة = وبين علامتي الاقتباس " "
رمز PHP:
<code style="white-space:nowrap"> <code> symlink,shell_exec,exec,proc_close,proc_open,popen,system,dl,passthru,escapeshellarg,escapeshellcmd,posix_getgid,posix_getgrgid,dl,exec,pclose,proc_nice,proc_terminate,proc_get_status,pfsockopen,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,hypot,pg_host,pos,posix_access,posix_getcwd,posix_getservbyname,myshellexec,getpid,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mknod,posix_setgid,posix_setsid,posix_setuid,posix_times,posix_uname,ps_fill,posix_getpwuid,global,ini_restore,zip_open,zip_read,rar_open,bzopen,bzread,bzwrite,apache_get_modules,apache_get_version,phpversionphpinfo,php_ini_scanned_files,get_current_user,error_log,disk_total_space,diskfreespace,leak,imap_list,hypo,filedump,gethostbyname,safe_mode,ob_clean,getmygid,php_uname,apache_getenv,apache_setenv,bzread,bzwrite,posix_access,bzopen,phpini,highlight_file,show_source,sscanf,dos_conv,get_current_user,get_cwd,error_log,dir,cmd,e_name,vdir,get_dir,only_read,copy,ini_set,getmicrotime,float,shver,c99sh_surl,timelimit,surl_autofill_include,base64_decode,gzinflate,encode64,ln
</code> </code>
اعمل Ctrl+x اضغط y وانتر لحفظ الاعدادات
قم بتنفيذ الامر
pico /etc/httpd/conf/php.conf
أبحث عن
suPHP_Engine on
وضع تحته
SuPHP_ConfigPath /usr/local/lib/php.ini
اعمل Ctrl+x اضغط y وانتر لحفظ الاعدادات
الآن قمنا بحماية السيرفر SERVER حماية جيده من خطر الشلات والبيرل وتخطي السيف مود وما إلى ذلك من خطوات مهمة
طبعا ولايعتبر حماية كامله للسيرفر SERVER انما جزأ بسيط
إنتضروا الدروس القادمه إن شاء الله
رابط الموضوع الأصلي :
http://3eyon.net/vb/showthread.php?p=1166#post1166
في حال حدوث أي مشاكل معكم
فنحن هنا والموضوع مفتوح لجميع الأسئلة والإستفسارات
تحياتي وإحترامي لكم
صهيب الفهداوي
شبكة عيون الحبايب العراقيه
http://www.3eyon.net
http://www.3eyon-host.com
