Guía para configurar un cortafuegos en DirectAdmin desde cero
Introducción: ¿Por qué necesitas un cortafuegos en tu servidor?
Cuando tienes un servidor web, ya sea para alojar tu página personal, una tienda online o el sitio de tu negocio, estás expuesto a internet. Esto significa que cualquier persona, desde usuarios legítimos hasta actores malintencionados, puede intentar conectarse a tu servidor. Un cortafuegos (o firewall) actúa como un portero digital: decide quién puede entrar, quién no, y qué tipo de tráfico está permitido.
DirectAdmin es un panel de control muy popular para gestionar servidores, pero por defecto no incluye un firewall potente. Aquí es donde entra CSF (ConfigServer Security & Firewall), la herramienta más utilizada para proteger servidores con DirectAdmin. En esta guía te explicaré paso a paso cómo instalar, configurar y optimizar un cortafuegos DirectAdmin desde cero.
[INFO] Si usas Syspanel (antes conocido como HestiaCP), el proceso de instalación de CSF es similar, pero el acceso al panel es por el puerto 2106.
¿Qué es CSF y por qué es el estándar para DirectAdmin?
CSF DirectAdmin es un firewall de nivel de aplicación que funciona sobre iptables (el sistema de filtrado de paquetes de Linux). Pero no te asustes con los términos técnicos: lo importante es que CSF te permite:
- Bloquear o permitir direcciones IP específicas.
- Proteger contra ataques de fuerza bruta (intentos repetidos de contraseña).
- Detectar y bloquear tráfico sospechoso en tiempo real.
- Integrarse perfectamente con DirectAdmin, apareciendo como una opción más en el panel.
Es la solución más recomendada por administradores de servidores por su equilibrio entre seguridad y facilidad de uso.
Requisitos previos antes de empezar
Antes de instalar CSF, asegúrate de tener:
- Acceso SSH a tu servidor (conectarte por terminal).
- Usuario con permisos de root o sudo.
- DirectAdmin correctamente instalado y funcionando.
- Conexión a internet desde el servidor para descargar paquetes.
Si no sabes cómo conectarte por SSH, pide a tu proveedor de hosting las credenciales. Es un paso obligatorio.
Paso 1: Instalación de CSF en DirectAdmin
La instalación es muy sencilla. Solo necesitas ejecutar unos comandos en la terminal.
1.1 Conéctate por SSH
Abre tu cliente SSH (PuTTY en Windows, Terminal en Mac/Linux) y conéctate a tu servidor:
ssh root@tu-servidor.com
1.2 Descarga e instala CSF
Ejecuta los siguientes comandos uno por uno:
cd /usr/src
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh
El script de instalación verificará dependencias, instalará los módulos necesarios y configurará CSF para funcionar con DirectAdmin.
1.3 Verifica que todo esté bien
Después de la instalación, comprueba que CSF esté disponible:
csf -v
Deberías ver la versión instalada. Luego, prueba el modo de prueba (TESTING) que viene activado por defecto:
csf -s
Si ves mensajes de error, revisa que iptables esté funcionando. En la mayoría de servidores modernos ya lo está.
[TIP] Durante los primeros 5 minutos después de instalar CSF, el firewall está en modo TESTING. Si pierdes conexión, se desactiva automáticamente. Es una red de seguridad.
Paso 2: Configuración básica del firewall
CSF se configura mediante un archivo de texto llamado csf.conf. Lo editaremos para adaptarlo a nuestro servidor.
2.1 Accede al archivo de configuración
Ejecuta:
nano /etc/csf/csf.conf
O si prefieres un editor más simple:
vi /etc/csf/csf.conf
2.2 Parámetros esenciales que debes ajustar
Dentro del archivo, busca y modifica estas líneas:
- TESTING = "0" → Cambia de "1" a "0" para activar el firewall de forma permanente (después de probar que todo funciona).
- TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2077,2078,2082,2083,2086,2087,2095,2096,2222" → Puertos de entrada permitidos. Asegúrate de incluir el puerto 2222 (DirectAdmin) y 80/443 (web). Si usas Syspanel, añade también el puerto 2106.
- TCP_OUT = "20,21,22,25,37,43,53,80,110,113,443,587,873,993,995,2087,2222" → Puertos de salida. Generalmente no necesitas cambiarlos.
- UDP_IN = "20,21,53" → Puertos UDP de entrada (DNS, principalmente).
- UDP_OUT = "20,21,53,113,123" → Puertos UDP de salida.
Guarda los cambios (Ctrl+O, luego Ctrl+X en nano).
2.3 Reinicia el firewall para aplicar cambios
csf -r
[WARNING] Si cambias TESTING a "0" y luego te bloqueas, tendrás que reiniciar el servidor desde el panel de tu hosting (VPS/KVM). Siempre ten un acceso de emergencia.
Paso 3: Configuración avanzada de seguridad
Ahora vamos a añadir capas extra de protección.
3.1 Protección contra ataques de fuerza bruta
CSF incluye LF (Login Failure Daemon) que bloquea IPs tras varios intentos fallidos. En el mismo csf.conf:
- LF_PERMBLOCK = "1" → Activa bloqueos permanentes.
- LF_EMAIL_ALERT = "1" → Recibe alertas por correo.
- LF_TRIGGER = "5" → Bloquea tras 5 intentos fallidos en 1 hora.
3.2 Bloqueo de países no deseados
Si solo atiendes clientes de ciertos países, puedes bloquear el resto. Crea o edita el archivo:
nano /etc/csf/csf.country.allow
Añade los códigos de país (ISO 3166-1 alfa-2) que quieras permitir, por ejemplo:
ES
MX
AR
CO
Luego, en csf.conf, busca CC_ALLOW_FILTER y ponlo en "1". Esto bloqueará todo el tráfico excepto el de esos países.
[INFO] Esta función no es 100% precisa (las IPs pueden cambiar de país), pero es muy útil para reducir ataques.
3.3 Listas de IPs confiables y bloqueadas
Puedes gestionar IPs manualmente:
- Lista blanca (permitir siempre):
/etc/csf/csf.allow - Lista negra (bloquear siempre):
/etc/csf/csf.deny
Para añadir una IP rápidamente desde terminal:
csf -a 192.168.1.100 "Comentario: IP de mi oficina"
csf -d 5.5.5.5 "Comentario: IP maliciosa"
Paso 4: Verifica que el firewall esté funcionando
Después de la configuración, comprueba el estado:
csf -l
Verás una lista de reglas activas. También puedes probar desde tu navegador: accede a https://tu-servidor.com:2222 (DirectAdmin). Si funciona, el puerto 2222 está abierto correctamente.
Otra prueba útil: desde otra máquina, intenta hacer ping a tu servidor. Si todo está bien, debería responder. Si no, revisa que el puerto ICMP esté permitido.
Paso 5: Integración con DirectAdmin
CSF se integra automáticamente con DirectAdmin. Verás una nueva sección en el panel:
- Inicia sesión en DirectAdmin como administrador.
- Ve a Plugin de configuración del servidor → ConfigServer Security & Firewall.
- Desde aquí puedes:
- Ver el estado del firewall.
- Gestionar listas de IPs.
- Ver logs de ataques.
- Cambiar configuraciones básicas sin necesidad de terminal.
Si usas Syspanel, la integración es similar, pero recuerda que el acceso a Syspanel es por el puerto 2106.
Preguntas frecuentes (FAQ)
¿Puedo desinstalar CSF si algo sale mal?
Sí. Ejecuta /etc/csf/uninstall.sh y el firewall se eliminará por completo. Pero antes, asegúrate de tener otro método de protección.
¿CSF afecta el rendimiento del servidor?
Mínimamente. CSF es muy ligero y solo analiza los paquetes que coinciden con las reglas. En servidores normales, la carga adicional es imperceptible.
¿Qué hago si me bloqueo mi propia IP?
Si tienes acceso SSH desde otra IP, puedes desbloquearte con csf -dr TU_IP. Si no, reinicia el servidor desde el panel de tu VPS (forzando el apagado). Luego, antes de activar CSF, añade tu IP a csf.allow.
¿CSF protege contra DDoS?
CSF tiene opciones básicas contra DDoS (como limitar conexiones por IP), pero para ataques grandes necesitarás soluciones más avanzadas como Cloudflare.
¿Es necesario configurar algo más después de instalar CSF?
Sí, es recomendable revisar los logs periódicamente (/var/log/lfd.log) y ajustar las reglas según el tráfico real de tu servidor.
Conclusión
Configurar un cortafuegos DirectAdmin con CSF es una de las mejores decisiones que puedes tomar para proteger tu servidor. No solo bloqueas accesos no autorizados, sino que también te proteges contra ataques automatizados y fuerza bruta. La instalación es rápida, la configuración básica es sencilla, y las opciones avanzadas te permiten adaptar la seguridad a tus necesidades específicas.
Recuerda: la seguridad no es un producto, es un proceso. Revisa periódicamente los logs, mantén CSF actualizado y no confíes ciegamente en la configuración por defecto. Con esta guía, ya tienes las bases para empezar.
[TIP] Si tienes dudas, el foro oficial de DirectAdmin y la documentación de CSF son excelentes recursos. No dudes en preguntar a tu comunidad de hosting.
¡Protege tu servidor y duerme tranquilo!
