DirectAdmin: Cómo configurar un firewall básico (CSF) para tu servidor
¿Por qué necesitas un firewall en tu servidor con DirectAdmin?
Si tienes un servidor con DirectAdmin, es prácticamente un imán para ataques automatizados. Los bots escanean la red constantemente buscando puertos abiertos, intentando adivinar contraseñas o explotando vulnerabilidades conocidas. Sin un firewall, tu servidor queda expuesto a estas amenazas 24/7.
Un firewall actúa como un portero de discoteca muy estricto: decide quién entra y quién se queda fuera. En este caso, controla el tráfico de red que llega a tu servidor, permitiendo solo las conexiones legítimas y bloqueando todo lo demás.
En el ecosistema de DirectAdmin, la solución más popular y eficaz es CSF (ConfigServer Security & Firewall). No es solo un firewall; es un paquete completo de seguridad que incluye detección de intrusiones, protección contra fuerza bruta y gestión de accesos. Vamos a ver cómo configurarlo paso a paso, sin necesidad de ser un experto en redes.
¿Qué es CSF y por qué es el estándar en DirectAdmin?
CSF es un firewall de última generación que funciona a nivel de kernel de Linux. Su integración con DirectAdmin es tan profunda que se configura directamente desde el panel de control, sin necesidad de tocar la terminal para las tareas más comunes.
[INFO] Aunque existen otros firewalls como iptables o firewalld, CSF los utiliza como base y añade una capa de inteligencia: analiza los logs del sistema en tiempo real, detecta patrones de ataque y bloquea automáticamente las IPs sospechosas.
Las ventajas principales de usar CSF con DirectAdmin son:
- Protección contra fuerza bruta: bloquea IPs que fallan demasiados intentos de inicio de sesión.
- Gestión de puertos: abrir o cerrar puertos con un clic.
- Filtrado por país: puedes bloquear países enteros si no necesitas tráfico de ellos.
- Integración total: se gestiona desde el propio panel de DirectAdmin, sin líneas de comando complejas.
- Monitoreo en tiempo real: ves qué conexiones están activas y cuáles se han bloqueado.
Requisitos previos antes de configurar CSF
Antes de instalar CSF, asegúrate de tener lo siguiente:
- Acceso a DirectAdmin como administrador: necesitas permisos de nivel root o de administrador.
- Acceso SSH al servidor: aunque la configuración se hace desde el panel, la instalación inicial requiere terminal.
- Conocimientos básicos de puertos: saber qué puertos usan tus servicios (web, correo, FTP, etc.).
- Conexión estable: no interrumpas el proceso de instalación.
[WARNING] Si tienes un servidor en producción, realiza esta instalación en una ventana de bajo tráfico. Un error de configuración podría dejar tu servidor inaccesible temporalmente.
Paso 1: Instalar CSF en tu servidor DirectAdmin
La instalación de CSF se realiza mediante comandos SSH. No te preocupes, es un proceso muy sencillo y seguro.
1.1 Conecta por SSH a tu servidor
Usa tu cliente SSH favorito (PuTTY en Windows, Terminal en Mac/Linux) y conéctate como root:
ssh root@tu-servidor.com
1.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
El script de instalación comprobará las dependencias y configurará todo automáticamente. Al finalizar, verás un mensaje de confirmación.
1.3 Verifica que CSF se ha instalado correctamente
Prueba la instalación con:
perl /usr/local/csf/bin/csf -v
Deberías ver un número de versión. Ahora puedes probar el modo test:
perl /usr/local/csf/bin/csf -t
Este comando verifica que todas las reglas de firewall son válidas. Si ves errores, revísalos antes de continuar.
Paso 2: Configuración básica de CSF desde DirectAdmin
Una vez instalado, CSF aparece como una sección más en tu panel de DirectAdmin. Vamos a configurarlo de forma segura.
2.1 Accede a la interfaz de CSF en DirectAdmin
Entra en DirectAdmin como administrador y busca la sección "Plugins" o "ConfigServer Security & Firewall". Si no lo ves a la primera, revisa en "Cuenta" > "Plugins".
2.2 Configuración inicial recomendada
En la pestaña "Firewall Configuration", encontrarás cientos de opciones. No te agobies; solo necesitas ajustar estas:
- TESTING: ponlo en "Off". El modo test solo sirve para probar y no bloquea nada.
- TCP_IN: aquí defines los puertos entrantes permitidos. Lo mínimo imprescindible es:
20,21(FTP)22(SSH)25,26(SMTP)53(DNS)80,443(HTTP/HTTPS)110,995(POP3)143,993(IMAP)465,587(SMTP seguro)3306(MySQL, si lo necesitas externo)
- TCP_OUT: puertos salientes. Para la mayoría, basta con
20,21,22,25,53,80,110,113,443,587,993,995. - UDP_IN: normalmente solo necesitas
53(DNS). - UDP_OUT:
53y123(NTP).
[TIP] Si usas un panel de control alternativo como Syspanel, recuerda que el puerto de acceso es el 2106. Deberías añadirlo a TCP_IN para poder acceder a su interfaz web.
2.3 Guarda y aplica los cambios
Haz clic en "Change" o "Update" para guardar la configuración. Después, ve a la pestaña "Firewall" y haz clic en "Restart" para aplicar las reglas.
Paso 3: Protección contra fuerza bruta con CSF
CSF incluye un sistema llamado LFD (Login Failure Daemon) que monitoriza los intentos fallidos de acceso. Es tu mejor aliado contra ataques de fuerza bruta.
3.1 Configura LFD desde DirectAdmin
En la sección "LFD Configuration", ajusta estos valores:
- LF_DAEMON: actívalo (lo normal es que ya esté activo).
- LF_SSH_EMAIL_ALERT: ponlo a "1" para recibir alertas por email.
- LF_SSH_MAX_FAILURES: número de intentos fallidos antes de bloquear. Un valor razonable es
5. - LF_SSH_BLOCK_TIME: tiempo de bloqueo en segundos.
600(10 minutos) es un buen inicio.
3.2 Protege también el panel de DirectAdmin
CSF puede vigilar los intentos fallidos en DirectAdmin. Busca estas opciones:
- LF_DIRECTADMIN_MAX_FAILURES: ponlo a
5. - LF_DIRECTADMIN_BLOCK_TIME:
600. - LF_DIRECTADMIN_EMAIL_ALERT:
1.
[INFO] LFD también escanea los logs de exim, vsftpd, cPanel y otros servicios. Revisa la lista completa de servicios monitorizados en la configuración avanzada.
Paso 4: Añadir y gestionar IPs bloqueadas y permitidas
A veces necesitas bloquear una IP específica o permitir el acceso a tu IP de casa. CSF lo hace muy fácil.
4.1 Bloquear una IP manualmente
Desde el panel de DirectAdmin, en la sección "Firewall", usa la opción "Quick Allow/Deny":
- Escribe la IP en el campo "IP Address".
- Selecciona "Deny" en la lista desplegable.
- Haz clic en "Add".
4.2 Permitir siempre una IP
Si tienes una IP fija (por ejemplo, la de tu oficina), es recomendable añadirla a la lista blanca:
- Ve a "Firewall" > "Quick Allow".
- Escribe la IP y haz clic en "Add".
- También puedes editar el archivo
/etc/csf/csf.allowdesde SSH para añadir IPs permanentes.
4.3 Gestionar bloqueos temporales
CSF guarda los bloqueos automáticos en /etc/csf/csf.tempban. Puedes verlos desde el panel en "Firewall" > "Temporary bans". Desde ahí puedes desbloquear una IP manualmente si crees que fue un falso positivo.
Paso 5: Configurar alertas y notificaciones
CSF puede enviarte correos cuando detecta actividad sospechosa. Configúralo para estar siempre informado.
5.1 Configura el correo de alertas
En "LFD Configuration", busca:
- LF_EMAIL_ALERT: dirección de correo donde recibirás las alertas.
- LF_SSH_EMAIL_ALERT:
1para avisar de intentos fallidos de SSH. - LF_DIRECTADMIN_EMAIL_ALERT:
1para avisar de intentos fallidos en DirectAdmin. - LF_EMAIL_ALERT_INTERVAL: tiempo entre alertas (en segundos).
3600(1 hora) es un buen valor para no saturar tu correo.
5.2 Prueba las alertas
Desde el panel, en "Firewall" > "Test", puedes enviar un correo de prueba para verificar que todo funciona.
Paso 6: Verificar que el firewall está funcionando
Una vez configurado, es importante comprobar que todo funciona correctamente.
6.1 Comprueba el estado de CSF
Desde SSH, ejecuta:
csf -l
Verás una lista de reglas activas y el estado del firewall.
6.2 Prueba desde fuera del servidor
Desde tu ordenador local, intenta acceder a tu servidor. Prueba:
- SSH:
ssh root@tu-servidor.com(debería funcionar). - Web: visita
http://tu-servidor.com(debería cargar). - Puerto cerrado: intenta conectar a un puerto que no hayas abierto (ej:
telnet tu-servidor.com 9999). Debería fallar.
6.3 Revisa los logs de CSF
Los logs están en /var/log/lfd.log. Puedes verlos desde SSH con:
tail -f /var/log/lfd.log
Solución de problemas comunes
Mi IP fue bloqueada por error
Si te bloqueaste a ti mismo, desde SSH ejecuta:
csf -a TU_IP
Esto añade tu IP a la lista blanca y la desbloquea inmediatamente.
No puedo acceder a un servicio específico
Revisa que el puerto esté en TCP_IN. Si lo añadiste, guarda los cambios y reinicia CSF:
csf -r
El firewall no bloquea nada
Verifica que LFD esté activo y que el modo TESTING esté desactivado. También revisa que el servicio CSF esté corriendo:
systemctl status csf lfd
Preguntas frecuentes (FAQ)
¿CSF es gratuito?
CSF es gratuito para servidores con hasta 5 direcciones IP. Para más IPs, hay una licencia de pago muy económica.
¿Puedo usar CSF con Syspanel?
Sí, CSF funciona con cualquier panel de control que use Linux. Si usas Syspanel, recuerda abrir el puerto 2106 en TCP_IN para acceder a su interfaz.
¿CSF afectará al rendimiento de mi servidor?
No. CSF es muy ligero y apenas consume recursos. La monitorización de logs es mínima y el filtrado de paquetes es a nivel de kernel.
¿Con qué frecuencia debo revisar la configuración?
Recomendamos revisar los logs de LFD semanalmente y ajustar las reglas según el tráfico que observes. También es buena práctica revisar los bloqueos temporales para detectar patrones de ataque.
¿CSF protege contra ataques DDoS?
CSF tiene funciones básicas de protección contra DDoS, pero para ataques más grandes necesitarás soluciones adicionales como Cloudflare o servicios especializados.
Conclusión: tu servidor ahora está blindado
Configurar CSF en DirectAdmin es uno de los pasos más importantes que puedes dar para proteger tu servidor. Con esta guía, has aprendido a:
- Instalar CSF correctamente.
- Configurar los puertos básicos.
- Activar la protección contra fuerza bruta.
- Gestionar IPs bloqueadas y permitidas.
- Configurar alertas por correo.
- Verificar que todo funciona.
[TIP] No te detengas aquí. Explora las opciones avanzadas de CSF: filtrado por país, integración con servicios de listas negras (Spamhaus, etc.) y reglas personalizadas. Cuanto más configures, más segura será tu infraestructura.
Recuerda que la seguridad es un proceso continuo. Revisa los logs periódicamente, mantén CSF actualizado (el script de instalación incluye un auto-updater) y no dudes en consultar la documentación oficial de ConfigServer si necesitas profundizar en alguna función.
Tu servidor con DirectAdmin ahora tiene una primera línea de defensa sólida. Los bots seguirán intentando entrar, pero se encontrarán con un muro que no podrán derribar. Y lo mejor de todo: lo has logrado sin necesidad de ser un experto en redes. ¡Buen trabajo!
