در دانشنامه پیشین در رابطه با mod-security و تنظیمات ان صحبت نمودیم.متاسفانه mod_security به تنهایی نمی تواند تمام کارها را انجام دهد و برای ایمن سازی سرور باید ترفند ها و کانفیگ های دیگری را به کار برد.
امنیت در دایرکت ادمین (قسمت سوم ) :
برای شروع میخواهیم تنظیمات PHP را ایمن سازی کنیم و برخی از PHP function های خطرناک مانند shell_exec را غیر فعال نماییم.دایرکت ادمین با custombuild این کار را راحت نموده است.به سرور از طریق SSH وارد شوید و برای ایمن سازی PHP از custombuild استفاده نمایید.
cd /usr/local/directadmin/custombuild ./build update ./build secure_php
در حال حاضر میخواهیم Permission بعضی از فایل های باینری را تغییر داده و انها را ایمن نماییم تا از ورود غیر مجاز جلوگیری شود.کد های زیر در هاست های اشتراکی بسیار کارامد هستند و حتما سعی نمایید تا انها را پیاده سازی نمایید .برای این کار :
chmod 700 /usr/bin/c++ chmod 700 /usr/bin/g++ chmod 700 /usr/bin/gcc chgrp apache /usr/bin/lynx; chmod 705 /usr/bin/lynx chgrp apache /usr/local/bin/curl; chmod 705 /usr/local/bin/curl chgrp apache /usr/bin/curl; chmod 705 /usr/bin/curl chgrp apache /usr/bin/wget; chmod 705 /usr/bin/wget chmod 700 /bin/uname chmod 700 /usr/bin/python
از دیگر کارهایی که باید انجام دهید mount کردن فایل tmp/ به عنوان noexec میباشد که از اجرای اسکریپت ها از طریق ان جلوگیری شود :
mount -t tmpfs -o noexec,nosuid tmpfs /tmp/ cp /etc/fstab /etc/fstab.backup echo "tmpfs /tmp tmpfs noexec,nosuid 0 0" >> /etc/fstab rm -rf /var/tmp ln -s /tmp /var/tmp
مرحله بعدی تغییر فایل directadmin.conf برای افزودن چندین کد امنیتی میباشد. بدین منظور ابتدا به ادرس زیر مراجه نمایید :
/usr/local/directadmin/conf/directadmin.conf
سپس پارامتر های زیر را برابر با 1 قرار دهید :
enforce_difficult_passwords=1 check_subdomain_owner=1
اگر PHP سرور در حالت CLI در حال اجرا است، پیشنهاد میکنیم که safemode و open_basedir را فعال نمایید .شما از طریق کنترل پنل دایرکت ادمین خود به راحتی این کار را میتوانید انجام دهید .تنها کافیست با دسترسی ادمین به دایرکت ادمین لاگین کنید و گزینه Php Safemode Config option را بیابید.
در حال حاضر به جرات میتوان گفت که کنترل پنل شما تا حد زیادی ایمن گردیده است.اما این را به خاطر داشته باشید که هیچ وقت نمی توان سرور را به طور کامل ایمن ساخت و از این بابت اطمینان داشت.
در دانشنامه بعدی به چگونگی تنظیمات ایمیل در دایرکت ادمین خواهیم پرداخت پس با ما همراه باشید.