× 25 درصد تخفیف سرور مجازی ایران کد تخفیف : irani
مشاهده

امن کردن لینوکس چاپ


درود
اقدامات زیر تا حد زیادی جلوی اجرای اسکریپت های مخرب Shell را میگیرد
مرحله اول کانفیگ PHP.ini
بعضی از فانکشن ها بر روی سرور باید Disable شوند, این کار جلوی شل هایی که از این فانکشن ها استفاده میکنند را میگیرد
برای این کار دستور زیر را در SSH وارد کنید
nano /usr/local/lib/php.ini
سپس کلید های ترکیبی CTRL+W را فشار دهید(مثل همان CTRL+F یا find در Notepad) و عبارت مقابل را در صفحه جستجو کنید disable_functions
کد:
disable_functions = ""

در میان دو کوتیشن عبارت های زیر را وارد کنید

کد:
fpassthru,show_source,crack_check,crack_closedict,crack_getlastmessage,crack_opendict,psockopen,proc_open,proc_nice,proc_terminate,proc_get_status,proc_close,system,dl,ctrl_dir,tmp,systemroot,server_software,get_current_user,HTTP_HOST,php_uname,ini_restore,popen,pclose,exec,shell_exec,suExec,passthru,apache_child_terminate,pfsockopen,leak,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,escapeshellcmd,escapeshellarg,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_times,posix_ttyname,posix_uname,posix_access,posix_get_last_error,posix_getppid,posix_mknod,posix_strerror,posix_access,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,php_ini_scanned_files,posix_getpgrp,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_initgroups,posix_isatty,posix_kill,posix_mkfifo,posix_mknod,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname,symlink,allow_url_fopen

دقت کنید تا فانکشن ها دقیقا مثل تصویر زیر وارد شوند
امنیت لینوکس
ممکن است این فانکشن ها در برخی از CMS ها مشکلاتی ایجاد کند ! در صورت بروز هر گونه ممکن میتوانید فانکشن مورد نظر را از این لیست حذف کنید
طبق توصیه CSF بستن فانکشن های زیر نیز کفایت میکند

کد:
show_source,system,shell_exec,passthru,exec,phpinfo,popen,proc_open,allow_url_fopen

بعد از کپی کردن فانکشن ها کلید های ترکیبی CTRL+X را فشار دهید و فایل را ذخیره کنید

فانکشن ها در PHP.ini اصلی سرور غیر فعال شدند ولی به صورت پیشفرض هر کاربر میتواند برای خود فایل php.ini بسازد و بدون اینکه هیچ یک از این فانکشن ها برایش غیر فعال باشد از شل خود استفاده کند
پس ما باید کاری کنیم که تنها PHP.ini که در سرور استفاده میشود همینی باشد که ما کانفیگش کردیم

خصوصی کردن PHP.ini

کد:
nano /usr/local/apache/conf/includes/pre_main_global.conf

فایل بالا را ویرایش کرده و دستور های زیر را در آن کپی کنید

کد:
<IfModule mod_suphp.c>
<Location />
suPHP_ConfigPath /usr/local/lib/
</Location>
</IfModule>
کد:
nano /opt/suphp/etc/suphp.conf

فایل بالا را ویرایش کنید و ; های اول خطوط زیر را بردارید

کد:
application/x-httpd-php=/usr/local/lib/
application/x-httpd-php4=/usr/local/php4/lib/
application/x-httpd-php5=/usr/local/lib/

در نهایت هم آپاچی را با دستور زیر ری استارت کنید
service httpd restart

مرحله بعدی نصب آنتی ویروس ClamAV هست
دستور ها

کد:
cd /etc/yum.repos.d
wget http://www.linuxmail.info/files/dag-clamav.repo
yum clean all
yum -y install clamav clamav-devel clamd
/etc/init.d/clamd restart
/scripts/upcp --force

دستور /scripts/upcp –force فقط مربوط به کاربرانی هست که از Cpanel استفاده میکنند
برای اسکن فایل ها توسط ClamAV میتوانید از دستور های زیر استفاده کنید

کد:
cd /home
clamscan -vr

مرحله بعدی روشن کردن SafeMode هست
از دیدگاه خیلی از افراد SafeMode در هاستینگ عمومی مشکلاتی ایجاد میکنه
من منکر این حرف نیستم ! ولی معمولا از هر 50 سایتی که میزبانی میکنی یکی دو مورد مشکل دارن که قطعا! قطعا! امنیت ارزش بیشتر از یکی دوتا کاربر هست
برای روشن کردن SafeMode فایل زیر را ویرایش کنید , عبارت safe_mode را در صفحه پیدا کنید و مقدار آن را به On تغییر دهید
nano /usr/local/lib/php.ini

مرحله بعدی غیر فعال کردن PHP4 هست
یکی از دوستان سرورش رو جهت تست در اختیار بنده قرار داد با php5 هیچکار نتوانستم انجام دهم ولی در PHP4 براحتی توانستم method های امنیتی را bypass کنم
جدیدا php4 اصلا استفاده نمیشه و فقط هاستینگ های قدیمی برای سایت های قدیمیشون از این نسخه در کنار php5 استفاده میکنند

مرحله آخر هم خرید لایسنس و استفاده از LiteSpeed Load Balancer هست
بطور مثال شل اجرا میشه ولی هر کاری میخواد بکنه ارور 403 و.. میگیره
البته LiteSpeed Load Balancer در کارایی سرور هم نقش بسزایی داره و استفاده اصلیش برای اون هست


آیا این پاسخ مفید بود؟

  • 1
« بازگشت