در دانشنامه پیشین در رابطه با نصب CSF بر روی لینوکس و دایرکت ادمین صحبت نمودیم.در این مقاله به قسمت دوم دانشنامه امنیت در Directadmin و نصب mod_security خواهیم پرداخت. پس با ما همراه باشید :
ایمن سازی دایرکت ادمین (قسمت دوم ) :
Mod_security یکی از ماژول های وب سرور اپاچی میباشد که از اجرای اسکریپت های تحت وب خطرناک جلوگری به عمل می اورد. Mod_security مانند سپری در برابر برنامه های تحت وب که قصد حمله به سرور را دارند عمل میکند و انها را خنثی میسازد.از این برنامه ها میتوان از cross-site scripting، SQL injection و .. نام برد.این ماژول یک لایه امنیتی مقاوم به وب سرور اضافه می کند و به دلیل استفاده از نرم افزار های تحت وب گوناگون در سرور، میتواند بسیار موثر واقع گردد.در زیر به نحوه نصب Mod_security خواهیم پرداخت :
نصب Mod_security :
به سرور دایرکت ادمین با یوزر روت از طریق SSH لاگین نمایید و تنظیمات اپاچی برای مد سکیوریتی را انجام دهید :
sed -i 's/ServerTokens Major/ServerTokens Full/' /etc/httpd/conf/extra/httpd-default.conf sed -i 's/ServerSignature Off/ServerSignature On/' /etc/httpd/conf/extra/httpd-default.conf sed -i 's/ServerSignature EMail/ServerTokens On/' /etc/httpd/conf/extra/httpd-default.conf
بعد از انجام تنظیمات از کامند های زیر برای دانلود و نصب mod_security میتوانید استفاده نمایید :
cd /usr/local/src mkdir modsecurity2 cd !$ wget https://www.modsecurity.org/tarball/2.7.4/modsecurity-apache_2.7.4.tar.gz tar xzf modsecurity-apache* cd modsecurity-apache* ./configure make make install
قوانین Mod_security :
Mod_security2 در حال حاضر بر روی سرور نصب گردیده است اما دارای قانون یا ruleset برای انجام فرایندی نمی باشد.در مرحله بعد ruleset پیش فرض را نصب خواهیم نمود :
mkdir /etc/modsecurity2 cd !$ wget https://github.com/SpiderLabs/owasp-modsecurity-crs/archive/master.zip unzip master mv owasp-modsecurity-crs-master/* . rm -rf master owasp-modsecurity-crs-master mv modsecurity_crs_10_setup.conf.example modsecurity_crs_10_setup.conf ln -s /etc/modsecurity2test/modsecurity_crs_10_setup.conf /etc/modsecurity2test/activated_rules/modsecurity_crs_10_setup.conf for f in `ls base_rules/` ; do sudo ln -s /etc/modsecurity2test/base_rules/$f activated_rules/$f ; done for f in `ls optional_rules/ | grep comment_spam` ; do sudo ln -s /etc/modsecurity2test/optional_rules/$f activated_rules/$f ; done
حال تمام قواین فعال را در actived_rules باید لیست نمایید :
ls -l /etc/modsecurity2/activated_rules/
سپس فایل /etc/httpd/conf/httpd.conf را باز نمایید و کد ها را زیر خط های LoadModule وارد نمایید :
LoadFile /usr/local/lib/libxml2.so LoadModule security2_module /usr/lib/apache/mod_security2.so
پیش از بستن فایل httpd.conf عبارت زیر را نیز در انتهای فایل اضافه نمایید :
Include /etc/modsecurity2/activated_rules/*.conf
توجه :ویرایش فایل ها را با استفاده از قرار دادن ویرایشگر Vi یا Nano در ابتدای ادرس فایل مدنظر میتوانید انجام دهید.در Vi برای ذخیره تغییرات از wq: و در Nano از Crtl+O برای ذخیره تغییرات اسفاده نمایید .
نکته : در صورتی که ب روی Centos در حال نصب Mod_security میباشید ممکن است با اروری مانند ارور زیر مواجه شوید :
/usr/bin/ld: cannot find -lexpat
collect2: ld returned 1 exit status
make[1]: *** [mod_security2.la] Error 1
make[1]: Leaving directory `/usr/local/src/modsecurity2/modsecurity-apache_2.7.4/apache2′
make: *** [install-recursive] Error 1
برای رفع این مشکل expat باید بر روی سرور نصب گردد :
yum install expat expat-devel
در مقاله های بعدی در رابطه با افزایش امنیت دایرکت ادمین با تغییر فایل های تنظیماتی و محدودسازی انجام بعضی در پردازش ها، بیشتر صحبت خواهیم نمود.