Como instalar Mod_Security en servidores cPanel
Mod_Security es comunmente llamado un “Firewall de aplicaciones”, porque actúa como tal, pero solo a nivel web. Funciona analizando el tráfico del servidor y aplicando las reglas a dicho tráfico, si las mismas no se cumplen, la petición es denegada, igual caso que sucede con cualquier firewall de sistemas. Este tutorial funcionará bajo Apache 1.3.3.9 y/o Apache 2.0.6.1 (o superiores) compilado desde EasyApache, RHE 3, 4, 5 o Centos en sus mismas versiones.
Cada usuario que siga este tutorial lo hace bajo su propia responsabilidad.
Descargamos las fuentes y descomprimimos
Código:
mkdir /usr/local/src/modsecurity/
cd /usr/local/src/modsecurity/
wget Download ModSecurity from SourceForge.net
tar -xvpzf modsecurity-apache_1.9.5.tar.gz
cd modsecurity-apache_1.9.5/apache2/
O bien cd modsecurity-apache_1.9.5/apache1/ si usamos Apache 1.3.3.9
Respaldamos el archivo de configuración de Apache
Código:
cp /usr/local/apache/conf/httpd.conf /usr/local/apache/conf/httpd.conf.bak -fv
Compilamos el móduo usando apxs
Código:
/usr/local/apache/bin/apxs -cia mod_security.c
Bien, ya tenemos mod_security compilado, ahora solo resta configurar el módulo y llamarlo desde el archivo de configuración de Apache.
Descargamos la configuración del módulo con algunas reglas básicas
Código:
wget http://www.encuentroalternativo.com/…odsecrules.txt
mv modsecrules.txt /usr/aux/modsecrules.conf ; chmod 644 /usr/aux/modsecrules.conf
Recuerda que el archivo /usr/aux/modsecrules.conf contiene la configuración básica del módulo para que funcione, además de algunas reglas para detener ciertos tipos de ataques y descargas de archivos que se usan en los mismos. Deberás ahora buscar nuevas reglas extras que se ajusten a tu servidor, desde el siguiente link podrás encontrar más reglas: http://www.gotroot.com/tiki-index.ph…security+rules
Ahora, edita el archivo /usr/local/apache/conf/httpd.conf
Código:
pico /usr/local/apache/conf/httpd.conf
Busca la línea «mod_setenvif.c» (para buscar presiona CTRL + W)
Seguro verás algo así:
Código:
<IfModule mod_setenvif.c>
BrowserMatch «Mozilla/2» nokeepalive
BrowserMatch «MSIE 4\.0b2;» nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch «RealPlayer 4\.0» force-response-1.0
BrowserMatch «Java/1\.0» force-response-1.0
BrowserMatch «JDK/1\.0» force-response-1.0
</IfModule>
Lo que debes hacer ahora, es al final de esa configuración agregar esta línea:
Código:
Include «/usr/aux/modsecrules.conf»
De modo que quedaria así:
Código:
<IfModule mod_setenvif.c>
BrowserMatch «Mozilla/2» nokeepalive
BrowserMatch «MSIE 4\.0b2;» nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch «RealPlayer 4\.0» force-response-1.0
BrowserMatch «Java/1\.0» force-response-1.0
BrowserMatch «JDK/1\.0» force-response-1.0
</IfModule>
Include «/usr/aux/modsecrules.conf»
Guarda los cambios presionando CTRL + X, luego «Y» o «S», reincia apache y guarda cambios en los templates de apache:
Código:
/etc/init.d/httpd restart
/usr/local/cpanel/bin/apache_conf_distiller –update
Monitoriza los logs desde /usr/local/apache/logs/audit_log
Notas:
* He usado la versión 1.9.5 pues es la que mejor se adapta a Apache 1 y 2, además de que la versión 2 ha presentado algunas incompatibilidades en varias ocasiones, si prefieres puedes usar dicha versión bajo tu propio riesgo.
* Sobre el modulo setenvif.c y su configuración, puede variar dependiendo del servidor, en algunos encontrarás más o menos directivas dentro de la configuración del mismo. Sólo asegurate de que incluyas el archivo de reglas de mod_security luego de dicha configuración.