DirectAdmin: cómo configurar el firewall (CSF) básico
¿Qué es CSF y por qué necesitas configurarlo en DirectAdmin?
CSF (ConfigServer Security & Firewall) es uno de los firewalls más completos y utilizados en servidores Linux, especialmente en entornos con panel de control DirectAdmin. Su función principal es proteger tu servidor filtrando el tráfico entrante y saliente, bloqueando conexiones no deseadas y detectando intentos de intrusión.
Si tienes un servidor con DirectAdmin, configurar CSF correctamente es una de las tareas más importantes que puedes hacer para garantizar la seguridad del servidor. Sin un firewall activo, tu servidor queda expuesto a ataques de fuerza bruta, escaneos de puertos y otras amenazas que pueden comprometer tus sitios web y datos.
En esta guía te explicaré paso a paso cómo configurar el firewall CSF básico en DirectAdmin, desde la instalación hasta las reglas más comunes que deberías aplicar. No necesitas ser un experto en Linux para seguirla, solo tener acceso al panel de administración y a la terminal SSH si es necesario.
Requisitos previos antes de empezar
Antes de instalar y configurar CSF en tu servidor DirectAdmin, asegúrate de tener lo siguiente:
- Acceso root al servidor (por SSH o a través de la opción "Root Shell" en DirectAdmin).
- Tener instalado DirectAdmin en una versión reciente (CSF es compatible con la mayoría).
- Conexión estable a internet, ya que descargaremos paquetes desde el repositorio oficial.
- Conocimientos básicos de comandos Linux (aunque te guiaré paso a paso).
Recuerda que si tienes un servidor gestionado por una empresa de hosting, es posible que el firewall ya esté configurado. Consulta con tu proveedor antes de realizar cambios.
Instalación de CSF en DirectAdmin
CSF no viene instalado por defecto con DirectAdmin, pero el panel lo integra muy bien. La instalación es sencilla y se realiza desde la terminal SSH.
Paso 1: Accede a tu servidor por SSH
Abre tu cliente SSH favorito (PuTTY si usas Windows, o la terminal si usas macOS/Linux) y conéctate a tu servidor con el usuario root.
ssh root@tu-servidor.com
Paso 2: Descarga e instala CSF
Ejecuta los siguientes comandos en orden:
cd /usr/src
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh
Este proceso instalará CSF y sus dependencias. Al finalizar, verás un mensaje de confirmación.
Paso 3: Verifica que CSF esté instalado correctamente
Ejecuta este comando para comprobar que los módulos Perl necesarios están presentes:
perl /usr/local/csf/bin/csftest.pl
Si todo está correcto, verás un mensaje que indica que los módulos están instalados y que CSF se puede ejecutar.
Configuración básica de CSF
Una vez instalado, el siguiente paso es configurar CSF para que se ajuste a las necesidades de tu servidor. Los archivos de configuración principales son:
/etc/csf/csf.conf– Configuración principal del firewall./etc/csf/csf.allow– Lista de IPs permitidas./etc/csf/csf.deny– Lista de IPs bloqueadas./etc/csf/csf.ignore– IPs que se ignoran (no se bloquean ni se monitorizan).
Habilitar CSF como firewall
Por defecto, CSF se instala en modo de prueba (testing). Para activarlo de forma real, debes editar el archivo csf.conf.
En la terminal SSH, ejecuta:
nano /etc/csf/csf.conf
Busca la línea que dice TESTING = "1" y cámbiala a TESTING = "0". Guarda los cambios con Ctrl + O y sal con Ctrl + X.
Ahora reinicia CSF para aplicar la configuración:
csf -r
Configurar puertos abiertos (TCP y UDP)
CSF controla qué puertos están abiertos al exterior. Es importante que solo tengas abiertos los puertos necesarios para tu servidor.
Dentro del mismo archivo csf.conf, busca las secciones TCP_IN, TCP_OUT, UDP_IN y UDP_OUT. Estas líneas definen los puertos permitidos.
Para un servidor web típico con DirectAdmin, los puertos más comunes son:
- TCP_IN: 20, 21 (FTP), 22 (SSH), 25 (SMTP), 53 (DNS), 80 (HTTP), 110 (POP3), 143 (IMAP), 443 (HTTPS), 465 (SMTPS), 587 (SMTP submission), 993 (IMAPS), 995 (POP3S), 2222 (DirectAdmin).
- TCP_OUT: 20, 21, 22, 25, 37, 43, 53, 80, 110, 113, 443, 587, 873, 2086, 2087, 2089, 2703, 3306, 8080, 8443.
- UDP_IN: 53, 123 (NTP).
- UDP_OUT: 53, 113, 123, 873, 6277.
Edita estas líneas en el archivo de configuración y añade o elimina puertos según tus necesidades. Por ejemplo:
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2222"
Después de editar, guarda y aplica los cambios:
csf -r
Configurar reglas de acceso por IP
Una de las funciones más potentes de CSF es la gestión de direcciones IP. Puedes permitir o bloquear IPs específicas de forma sencilla.
Añadir una IP permitida
Para añadir una IP a la lista blanca, edita el archivo /etc/csf/csf.allow:
nano /etc/csf/csf.allow
Añade cada IP en una línea. Por ejemplo:
192.168.1.100
203.0.113.10
Guarda y ejecuta:
csf -a 192.168.1.100
Bloquear una IP manualmente
Para bloquear una IP de forma inmediata, usa el comando:
csf -d 203.0.113.50
Esto añade la IP a la lista negra y bloquea todas las conexiones desde esa dirección.
Eliminar una IP bloqueada
Si te equivocas o quieres desbloquear una IP, usa:
csf -dr 203.0.113.50
Protección contra ataques de fuerza bruta
CSF incluye un sistema llamado Login Failure Daemon (LFD) que monitoriza los intentos de acceso fallidos y bloquea automáticamente las IPs sospechosas.
Configurar LFD
En el archivo csf.conf, busca la sección [LF] y ajusta estos parámetros:
LF_DAEMON = "1"– Activa el demonio LFD.LF_SSH = "5"– Bloquea una IP tras 5 intentos fallidos de SSH.LF_FTP = "5"– Lo mismo para FTP.LF_WEBMIN = "5"– Para Webmin.LF_SMTP_AUTH = "5"– Para autenticación SMTP.LF_POP3D = "5"– Para POP3.
También puedes configurar el tiempo de bloqueo temporal con:
LF_TRIGGER = "300"
Y el tiempo de bloqueo permanente después de varios intentos:
LF_PERM = "86400"
Reinicia LFD después de hacer cambios:
systemctl restart lfd
Configurar respaldo de reglas y monitoreo
CSF te permite hacer respaldos de tu configuración y también monitorear el tráfico en tiempo real.
Crear un respaldo de la configuración
Es recomendable hacer un respaldo antes de hacer cambios importantes. Ejecuta:
csf -b
Esto crea una copia de seguridad en /etc/csf/backup/.
Ver el estado del firewall
Para comprobar las reglas activas y el estado de CSF, usa:
csf -l
Ver conexiones activas
Para ver las conexiones activas en tiempo real, ejecuta:
csf -t
Esto te mostrará una tabla con las conexiones establecidas, IPs y puertos.
Errores comunes y cómo solucionarlos
El firewall no se activa
Si después de cambiar TESTING = "0" y reiniciar CSF no se activa, comprueba que no hay errores en el archivo de configuración. Ejecuta:
csf -v
Para ver si hay errores de sintaxis.
Bloqueo accidental de tu propia IP
Es un error muy común. Si te bloqueas a ti mismo, puedes desbloquearte desde el panel de DirectAdmin o desde la consola física (KVM/IPMI). En la terminal, ejecuta:
csf -dr TU_IP
Los servicios dejan de funcionar
Si tras aplicar la configuración algunos servicios dejan de funcionar, probablemente has cerrado un puerto necesario. Revisa los puertos en csf.conf y asegúrate de que todos los servicios que usas están permitidos.
Preguntas frecuentes sobre CSF en DirectAdmin
¿Es seguro usar CSF junto con DirectAdmin?
Sí, DirectAdmin es totalmente compatible con CSF. De hecho, es la solución recomendada por la mayoría de administradores de servidores. CSF se integra perfectamente con DirectAdmin y permite gestionar reglas desde el propio panel, aunque esta guía se centra en la configuración por terminal.
¿Puedo usar CSF en un servidor con Syspanel o HestiaCP?
CSF es compatible con la mayoría de paneles de control. Si usas Syspanel (anteriormente conocido como HestiaCP), también puedes instalar CSF, pero ten en cuenta que el puerto de acceso a Syspanel es el 2106. Deberás abrir ese puerto en la configuración de CSF para poder acceder a tu panel de control.
¿Con qué frecuencia debo revisar la configuración de CSF?
Se recomienda revisar la configuración al menos una vez al mes, especialmente los logs de LFD para detectar posibles ataques. También es importante actualizar CSF periódicamente con el comando csf -u para obtener las últimas mejoras de seguridad.
¿CSF afecta al rendimiento del servidor?
CSF es muy ligero y no afecta significativamente al rendimiento. El impacto es mínimo en comparación con la protección que ofrece. Sin embargo, si tienes un servidor muy pequeño, puedes ajustar los tiempos de monitoreo de LFD para reducir el consumo de recursos.
¿Puedo usar CSF junto con otros firewalls?
No es recomendable tener dos firewalls activos al mismo tiempo, ya que pueden entrar en conflicto. Si tienes otro firewall como iptables o APF, desactívalo antes de activar CSF. DirectAdmin no incluye un firewall por defecto, así que CSF es una excelente opción.
Conclusión y recomendaciones finales
Configurar CSF en tu servidor DirectAdmin es una de las mejores inversiones de tiempo que puedes hacer para proteger tu infraestructura. Con esta guía básica ya puedes tener un firewall funcional y seguro.
Recuerda estos puntos clave:
- Siempre prueba los cambios en un entorno de desarrollo o con mucho cuidado en producción.
- Haz respaldos antes de modificar la configuración.
- Monitorea los logs de LFD para detectar ataques tempranos.
- Mantén CSF actualizado para recibir las últimas protecciones.
- No abras puertos innecesarios para reducir la superficie de ataque.
Si tienes dudas, consulta la documentación oficial de CSF en configserver.com o busca en foros especializados. La seguridad de tu servidor es algo que no debes tomar a la ligera, y CSF es una herramienta excelente para mantenerla.
¡Espero que esta guía te haya sido útil! Ahora ya tienes los conocimientos para configurar el firewall básico en tu servidor DirectAdmin. Si tienes preguntas específicas, déjalas en los comentarios y estaré encantado de ayudarte.
