Clicky

Cómo intentar prevenir un ataque DDoS con el firewall CSF

Prevenir un ataque DDoS con el firewall CSF

CSF es uno de los más conocidos servidores de seguridad disponibles gratuitamente

En este artículo vamos compartir un tutorial sobre cómo intentar prevenir un ataque de DDoS con el firewall CSF. Denegación de servicio (DoS) es un intento de hacer que no esté disponible un recurso de la máquina o la red para sus usuarios previstos, como interrumpir o suspender los servicios de un host conectado a Internet de forma temporal o indefinidamente. Una denegación de servicio distribuido (DDoS) es cuando la fuente del ataque es más de una, y a menudo miles de direcciones IP únicas.

CSF firewall es uno de los más conocidos servidores de seguridad disponibles gratuitamente y muy eficaz para los servidores web. La mayoría de los gurús de servidores señalan a CSF cuando se debe tener un servidor de seguridad para el servidor web. CSF ha incorporado protección contra ataques DDoS de nivel básico hasta nivel medio. Synflood está desactivado por defecto. Si no estás recibiendo ningún tipo de ataque, no hay necesidad de realizar estos ajustes.

Si estás esperando un ataque, habilítalo y establece unas reglas un poco estrictas, como:

Paso 1: abrir el archivo config y editar CSF

# vi /etc/csf/csf.conf

SYNFLOOD

SYNFLOOD = "1"

SYNFLOOD_RATE = "40/s"

SYNFLOOD_BURST = "20"

Es decir, si desde una IP se reciben 40 conexiones por segundo 20 veces, bloquearla. Asegúrate de que no lo mantengas demasiado estricto si no estás recibiendo un ataque, de lo contrario CSF va a generar falsos positivos y bloqueará conexiones de fiar.

PORTFLOOD

PORTFLOOD = 80;tcp;100;5,22;tcp;5;300

Es decir, si una IP hace 100 conexiones en 5 segundos al puerto 80 (TCP), entonces será bloqueado desde el servidor y si llegan 5 conexiones en 300 seg a 22 puertos.

Más ajustes posibles

Habilitar el seguimiento de conexiones.

CT_LIMIT es el número máximo permitido de conexión desde una IP, se puede establecer este valor como por defecto en el servidor.

CT_LIMIT =100

Establecer el intervalo de seguimiento de conexiones.

CT_INTERVAL =30

Si deseas recibir notificciones por correo electrónico de un posible ataque DDoS, habilitarlo.

CT_EMAIL_ALERT =1

Si deseas bloquear una IP permanentemente, establece este valor a 1, de lo contrario los bloqueos serán temporales y serán revisados después de los segundos asignados en CT_BLOCK_TIME

CT_PERMANENT = 1

Si se opta por bloquear temporalmente una IP en CT, el siguiente es el intervalo en segundos que la IP será bloqueada (por ejemplo, 1800 = 30 minutos)

CT_BLOCK_TIME = 1800

Si sólo deseas bloquear puertos específicos (por ejemplo, 80, 443), añadir los puertos a la siguiente como una lista separada por comas. Por ejemplo, "80,443"

CT_PORTS = 80,23,443

Estos ajustes serán suficientes para los ataques DDoS, pero si estás recibiendo más ataques, incluso por encima de los que tienes en la opción configurada, podemos configurar algunas opciones más.

Paso 2: Habilitar ataques distribuidos

LF_DISTATTACK = 1

Establecer lo siguiente para el número mínimo de direcciones IP únicas que desencadenan LF_DISTATTACK

LF_DISTATTACK_UNIQ = 2

Paso 3: Habilitar ataques distribuidos contra FTP

LF_DISTFTP = 1

Establecer lo siguiente para el número mínimo de direcciones IP únicas que desencadenan LF_DISTFTP. Para que esto funcione LF_DISTFTP_UNIQ debe ser <= LF_DISTFTP

LF_DISTFTP_UNIQ = 3

Si esta opción se establece en 1 los bloqueos serán permanentes, si esta opción es > 1, los bloqueos serán temporales durante el número de segundos

LF_DISTFTP_PERM =1

Paso 4: habilitar ataques distribuidos contra SMTP.

LF_DISTSMTP =1

Establecer lo siguiente para el número mínimo de direcciones IP únicas que desencadenan LF_DISTSMTP. Para que esto funcione LF_DISTSMTP_UNIQ debe ser <= LF_DISTSMTP

LF_DISTSMTP_UNIQ =4

Si esta opción se establece en 1 los bloqueos serán permanentes si esta opción es > 1, los bloqueos serán temporales durante el número de segundos

LF_DISTSMTP_PERM =1

Este es el intervalo durante el cual es medido un ataque distribuido FTP o SMTP

LF_DIST_INTERVAL = 300

Jesus_Caceres