Config Server Firewall (CSF) es una herramienta avanzada de seguridad que proporciona un firewall de alto rendimiento, detección de intrusiones y bloqueo de IPs para proteger tu servidor. En este artículo, te mostraremos cómo instalar y configurar CSF en Debian 12 para mejorar la seguridad de tu sistema. Este tutorial está diseñado para ser técnico pero accesible para los recién llegados.

Requisitos Previos

Antes de comenzar, asegúrate de tener lo siguiente:

  • Un sistema Debian 12 instalado.
  • Acceso a una cuenta con privilegios de superusuario (root) o acceso a sudo.

Paso 1: Actualizar el Sistema

Es fundamental asegurarse de que tu sistema esté actualizado. Abre una terminal y ejecuta los siguientes comandos:

sudo apt update
sudo apt upgrade -y

Paso 2: Instalar Dependencias Requeridas

CSF requiere algunas herramientas y dependencias para funcionar correctamente. Instálalas con el siguiente comando:

sudo apt install -y wget vim perl libwww-perl liblwp-protocol-https-perl

Paso 3: Descargar e Instalar CSF

Descarga la última versión de CSF desde el sitio oficial y extrae los archivos:

cd /tmp
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf

Instala CSF ejecutando el script de instalación:

sudo sh install.sh

Paso 4: Verificar la Instalación

Después de la instalación, CSF proporciona un script de verificación para asegurarse de que el servidor cumple con los requisitos mínimos:

sudo perl /usr/local/csf/bin/csftest.pl

Si todo está configurado correctamente, deberías ver un mensaje indicando que CSF está listo para ser configurado.

Paso 5: Configurar CSF

Editar el Archivo de Configuración

El archivo de configuración principal de CSF se encuentra en /etc/csf/csf.conf. Ábrelo con tu editor de texto preferido:

sudo nano /etc/csf/csf.conf

Configuraciones Básicas

  1. Habilitar CSF: Cambia TESTING de 1 a 0 para activar CSF: TESTING = "0"
  2. Configuración de Puertos: Asegúrate de que los puertos necesarios para tu servidor estén abiertos. Por ejemplo, si estás ejecutando un servidor web, asegúrate de que los puertos 80 y 443 estén en la lista TCP_IN y TCP_OUT: TCP_IN = "22,80,443" TCP_OUT = "22,80,443"
  3. Bloqueo de IPs: Puedes agregar IPs específicas para bloquear o permitir en los archivos /etc/csf/csf.allow y /etc/csf/csf.deny.

Guarda el archivo y cierra el editor.

Paso 6: Reiniciar CSF y LFD

Después de realizar los cambios en la configuración, reinicia CSF y LFD (Login Failure Daemon):

sudo csf -r
sudo systemctl restart lfd

Paso 7: Comandos Útiles de CSF

Aquí hay algunos comandos útiles para gestionar CSF:

  • Agregar una IP a la lista blanca: sudo csf -a IP_ADDRESS
  • Agregar una IP a la lista negra: sudo csf -d IP_ADDRESS
  • Ver el estado de CSF: sudo csf -l
  • Desbloquear una IP: sudo csf -dr IP_ADDRESS

Configuraciones Avanzadas

Protección contra Ataques de Fuerza Bruta

CSF incluye LFD, que ayuda a proteger contra ataques de fuerza bruta. Puedes configurar LFD editando el archivo /etc/csf/csf.conf:

sudo nano /etc/csf/csf.conf

Ajusta las siguientes configuraciones según tus necesidades:

  • Configuración de detección de inicio de sesión fallido: LF_TRIGGER = "5" LF_TRIGGER_PERM = "1"

Esto bloqueará la IP después de 5 intentos fallidos de inicio de sesión.

Configuración de Alertas por Correo Electrónico

Para recibir alertas por correo electrónico, asegúrate de configurar las siguientes opciones en el archivo de configuración:

LF_ALERT_TO = "tu_correo@dominio.com"
LF_EMAIL_ALERT = "1"

Reemplaza tu_correo@dominio.com con tu dirección de correo electrónico.

Limitar el Número de Conexiones

Para limitar el número de conexiones desde una IP específica, configura los siguientes parámetros:

CONNLIMIT = "80;20,443;20"

Esto limitará a 20 el número de conexiones simultáneas permitidas en los puertos 80 y 443.

Configuración de Tiempos de Bloqueo

Puedes configurar el tiempo de bloqueo para IPs infractoras:

LF_BAN_INTERVAL = "300"
LF_BAN_DURATION = "3600"

Estas configuraciones especifican que una IP será bloqueada durante 1 hora (3600 segundos) después de 5 intentos fallidos de inicio de sesión en 5 minutos (300 segundos).

Para mejorar el rendimiento y la gestión de tu infraestructura de red con CSF, considera utilizar los servicios de Shape.host. Ofrecen soluciones de Linux SSD VPS que proporcionan escalabilidad, alta disponibilidad y un rendimiento superior para tus aplicaciones y servicios de red. Con Shape.host, puedes asegurarte de que tu infraestructura esté siempre disponible y funcionando de manera óptima.