در این دانشنامه قصد داریم یکی از ماژول های کاربردی اپاچی به نام mod_ruid2 را به شما معرفی نماییم.Mod_ruid2 یک ماژول برای نصب PHP-CLI در وب سرور معروف اپاچی میباشد.در این دانشنامه به شما نحوه نصب ان در دایرکت ادمین و چگونگی کانفیگ و کارکرد ان را توضیح خواهیم داد.mod_ruid2 میتواند در Chmod و Permission ها تغییر ایجاد کند و سطح دسترسی به فولدر ها را تا حد مطلوبی کاهش دهد .برای مثال mod_ruid2 به جای استفاده از Permission هایی مانند 666 و 777 که از نظر امنیتی مورد تایید نیستند از پرمیشن هایی مثل 644 یا 755 برای تعیین سطح دسترسی فولدر ها استفاده مینماید. پیش از شروع نصب mod_ruid2 اقدامات زیر را انجام دهید :
- در فایل php.ini گزینه enable_dl بر روی Off ست گردیده باشد
- در ادرس etc/httpd/conf/extra/httpd-vhosts.conf/ عبارت ^/~([^/]+)(/.*)* /home/$1/public_html$2 را پاک نمایید .
- posix را در PHP غیر فعال نمایید (در ادامه اموزش داده خواهد شد )
برای شروع نصب mod_ruid2 در دایرکت ادمین ابتدا posix را غیر فعال مینماییم :
cd /usr/local/directadmin/custombuild mkdir -p custom/ap2/ cp configure/ap2/configure.php5 custom/ap2/ vi custom/ap2/configure.php5
در ادرس custom/ap2/configure.php5 عبارت disable-posix– را اضافه نمایید :
--enable-sockets \ --enable-mbstring \ --disable-posix
سپس PHP را recompile نمایید تا تغییرات اعمال گردند :
./build php n
در مرحله بعدی به نصب پیش نیاز ها خواهیم پرداخت.در CentOS, Redhat, Fedora یا Scientific Linux از کامند زیر استفاده نمایید :
yum install libcap-devel
در Ubuntu و Debian از apt-get میتوانید استفاده نماید :
apt-get install libcap-dev
حال اخرین نسخه mod_ruid2 را دانلود نمایید :
cd /usr/local/src wget http://sourceforge.net/projects/mod-ruid/files/latest/download
فایل را از حات Zip خارج کنید (نسخه را در صورت نیاز تغییر دهید )
tar xvjf mod_ruid2-0.9.7.tar.bz2 cd mod_ruid2-0.9.7 apxs -a -i -l cap -c mod_ruid2.c
حال شما باید دو فایل تنظیماتی را پیکربندی نمایید.اولین فایل httpd.conf. میباشد.از طریق کامند زیر RUidGid را در فایل تنظیماتی مناسب قرار میدهیم :
sed -i 's|\(Group apache\)|\1\n\n# Mod_ruid\nRMode config\nRUidGid apache access|g' /etc/httpd/conf/httpd.conf
حال برای مطمئن شدن از اجرای برنامه های تحت وبی مانند RoundCube/SquirrelMail/phpMyAdmin به ادرس زیر مراجعه نمایید :
vi /etc/httpd/conf/extra/httpd-directories.conf
دایرکتوری var/www/html/ را بیابید و عبارت زیر را اضافه نمایید :
RUidGid webapps webapps
خروجی ساده :
<Directory "/var/www/html"> Options -Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all suPHP_Engine On suPHP_UserGroup webapps webapps SetEnv PHP_INI_SCAN_DIR RUidGid webapps webapps
حال ابتدا صحت تنظیمات را چک نمایید سپس اپاچی را ریست کنید :
/etc/init.d/httpd configtest /etc/init.d/httpd restart
با دانشنامه های بعدی با ما همراه باشید