Apache 2.4 y el modulo mod_evasive en CentOS 7 – Protección contra ataques DoS y DDoS

La verdad es que en muchas ocasiones me entero de pura casualidad de cosas interesantes. Estaba actualizando un servidor CentOS 6 a CentOS 7 y una de las partes más complicadas ha sido la actualización de la configuración del servidor Web porque en la versión 2.4 han cambiado muchas cosas en comparación con la versión anterior. Mientras estaba realizado una búsqueda para solucionar un error que me arrojaba Apache, me he chocado con este modulo que parece de verdad muy interesante.

El modulo mod_evasive se utiliza para mitigar ataques DoS y DDoS (Ataque de denegación de servicio distribuidos) que normalmente logran volver inaccesible nuestro servidor Web y de esta forma afectar nuestra actividad/negocio. Realmente no se que nivel de protección brinda este modulo pero es seguramente una buena opción para cuidarse más. Su instalación en CentOS 7 es bastante sencilla:

yum install mod_evasive -y

Una vez instalado, se revisa si se ha configurado correctamente para ser activado a cada inicio del servidor Web; esto abriendo el archivo de configuración que viene con el modulo:

nano /etc/httpd/conf.d/mod_evasive.conf

la segunda linea tiene que contener esta sentencia:

LoadModule evasive20_module modules/mod_evasive24.so

sino hay que añadirla. En el mismo archivo se realiza toda la configuración del modulo. Los parámetros más importantes:

  • DOSPageCount el numero máximo de solicitudes procedentes desde la misma IP que se pueden realizar para una misma pagina en el intervalo de tiempo definido en el parámetro DOSPageInterval. El valor predefinido, 2, es muy bajo. Cambiar con 5 o más

  • DOSSiteCount el numero máximo de solicitudes procedentes desde la misma IP que se pueden realizar en todo el servidor Web en el intervalo definido en el parámetro DOSSiteInterval

  • DOSPageInterval valor, en segundos, de duración del intervalo para el parámetro DOSPageCount

  • DOSSiteInterval valor, en segundos, de duración del intervalo para el parámetro DOSSiteCount

  • DOSBlockingPeriod el tiempo, en segundos, que quedará bloqueado un cliente/IP si ha superado los limites definidos en DOSPageCount o DOSSiteCount. El valor presente es muy bajo, cambiar con 300 o mas; personalmente he puesto 1800 (media hora)

  • DOSEmailNotify dirección de correo electrónico donde recibir las notificaciones cada vez que se bloquee una IP

  • DOSWhitelist IP que se quiere añadir a la lista blanca, por ejemplo, la IP que nos asigna de manera estática nuestro proveedor de fibra/banda ancha. Se indican una por linea repitiendo el mismo patrón: DOSWhitelist 127.0.0.1

Una vez terminada la configuración se guardan los cambios y se reinicia el servidor Web:

systemctl restart httpd

Se averigua que el modulo se haya cargado correctamente:

httpd -M | grep evasive

evasive20_module (shared)

Cada vez que el modulo bloquea una IP, recibiremos un correo electrónico a la dirección configurada. Un ejemplo:

Con ese dato podremos realizar una Whois sobre la IP y si es el caso, bloquearla indefinidamente a través del cortafuegos.

Me comentan.

 

 

Vota el Articulo: 

Sin votos (todavía)
Evalúa la calidad del articulo
Suscribirse a Comentarios de "Apache 2.4 y el modulo mod_evasive en CentOS 7 – Protección contra ataques DoS y DDoS" Suscribirse a VozToVoice - Todos los comentarios