La instalación de mod_security puede variar según el sistema operativo. A continuación se muestra el procedimiento para una instalación en un sistema Ubuntu/Debian.
Paso 1: Instalación de mod_security
ModSecurity está disponible en los repositorios oficiales de la mayoría de las distribuciones de Linux. Primero, necesitarás actualizar el sistema y luego instalar ModSecurity con el siguiente comando:
```bash
sudo apt-get update
sudo apt-get install libapache2-mod-security2
```
Paso 2: Configuración de mod_security
Después de la instalación, necesitas moverte al directorio de mod_security y copiar el archivo de configuración recomendado a la configuración principal de mod_security con los siguientes comandos:
```bash
cd /etc/modsecurity/
sudo mv modsecurity.conf-recommended modsecurity.conf
```
Para habilitar el módulo ModSecurity, necesitas abrir el archivo de configuración de ModSecurity, encontrar la siguiente línea:
```bash
SecRuleEngine DetectionOnly
```
Y luego reemplazalo con:
```bash
SecRuleEngine On
```
Para guardar y cerrar el archivo, debes presionar CTRL+X, luego Y y finalmente ENTER.
Para que los cambios surtan efecto, necesitas reiniciar el servicio de Apache con el siguiente comando:
```bash
sudo systemctl restart apache2
```
Paso 3: Configuración de las reglas de mod_security
Por defecto, ModSecurity no viene con ninguna regla habilitada, por lo que necesitas descargar e implementar las reglas del Núcleo de Reglas de Seguridad de OWASP (CRS).
Hay varias maneras de implementar las reglas del CRS. Una forma sencilla de instalar estas reglas es a través del paquete git. Para instalar git, puedes usar el siguiente comando:
```bash
sudo apt-get install git
```
Ahora puedes clonar el CRS desde el repositorio de GitHub con el siguiente comando:
```bash
cd /etc/apache2
sudo git clone https://github.com/coreruleset/coreruleset.git
sudo mv coreruleset/rules/ /etc/modsecurity/
```
Después de conseguir las reglas del CRS, ahora debes editar el archivo de configuración de mod_security para incluir estas reglas. Para hacer esto, puedes utilizar el editor de texto nano con el siguiente comando:
```bash
sudo nano /etc/modsecurity/modsecurity.conf
```
Y añade esta línea al final del archivo:
```bash
Include “/etc/modsecurity/rules/*.conf“
```
Finalmente, reinicia el servicio de Apache para implementar las reglas del CRS.
```bash
sudo systemctl restart apache2
```
¡Y eso es todo! Ahora mod_security debería estar funcionando en tu servidor Apache, protegiendo tu sitio web contra varias amenazas.
Para confirmar que ModSecurity está funcionando, puedes comprobar los registros de ModSecurity con el siguiente comando:
```bash
sudo tail -f /var/log/apache2/modsec_audit.log
```