Configurar firewall básico en DirectAdmin para principiantes
¿Por qué es importante un firewall en tu servidor DirectAdmin?
Si tienes un servidor con DirectAdmin, probablemente ya sabes que estás expuesto a Internet. Eso significa que, en cualquier momento, alguien podría intentar acceder a tu panel, hacer ataques de fuerza bruta o simplemente escanear tus puertos en busca de vulnerabilidades. Un firewall básico es tu primera línea de defensa: actúa como un portero que decide quién entra y quién se queda fuera.
En esta guía, aprenderás a configurar un firewall básico en DirectAdmin sin necesidad de ser un experto en seguridad. Usaremos herramientas que ya vienen instaladas o que puedes agregar fácilmente. El objetivo es que puedas bloquear IPs, controlar puertos y proteger tu servidor de amenazas comunes.
[INFO] Esta guía está pensada para principiantes. No necesitas saber comandos avanzados ni ser un administrador de sistemas. Solo sigue los pasos y entenderás cada concepto.
¿Qué es un firewall y cómo funciona en DirectAdmin?
Un firewall es un software que filtra el tráfico de red. Imagina que tu servidor es una casa: el firewall es la puerta principal con un vigilante que revisa a todos los que quieren entrar. El vigilante tiene una lista de reglas: algunas personas (IPs) pueden pasar libremente, otras están prohibidas, y ciertos tipos de tráfico (puertos) solo se permiten si son necesarios.
En DirectAdmin, el firewall más común es iptables (o su sucesor nftables), pero también puedes usar herramientas como CSF (ConfigServer Security & Firewall) o APF (Advanced Policy Firewall). En esta guía nos centraremos en CSF, porque es el más amigable para principiantes y se integra perfectamente con DirectAdmin.
Requisitos previos antes de empezar
Antes de configurar cualquier firewall, asegúrate de tener:
- Acceso a DirectAdmin como administrador (usuario "admin").
- Acceso SSH al servidor (opcional, pero recomendado para configuraciones avanzadas).
- Conocimiento básico de qué puertos necesitas abiertos (por ejemplo, puerto 80 para HTTP, 443 para HTTPS, 21 para FTP, etc.).
- Una copia de seguridad de tu configuración actual (por si algo sale mal).
[WARNING] Si bloqueas accidentalmente tu propio acceso, podrías quedar fuera del servidor. Siempre ten un plan de respaldo, como un acceso por consola fuera de banda (KVM/IPMI) o un usuario con permisos de root.
Instalación de CSF (ConfigServer Security & Firewall) en DirectAdmin
CSF es la herramienta más popular para gestionar firewalls en servidores con cPanel y DirectAdmin. Aunque no viene preinstalado, se instala en pocos minutos.
Paso 1: Accede a tu servidor por SSH
Conéctate a tu servidor usando un cliente SSH (como PuTTY en Windows o la terminal en Linux/Mac). Usa el usuario root o un usuario con permisos sudo.
Paso 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 proceso de instalación verificará dependencias y configurará todo automáticamente. Al final, verás un mensaje de éxito.
Paso 3: Verifica que CSF esté funcionando
Para comprobar que CSF se ha instalado correctamente, ejecuta:
csf -v
Deberías ver la versión instalada. Luego, inicia el firewall:
csf -s
[TIP] Si ves errores de dependencias, instala los paquetes faltantes con
yum install perl-libwww-perl perl-LWP-Protocol-https(en CentOS/AlmaLinux) oapt install libwww-perl(en Ubuntu/Debian).
Configuración básica de CSF desde DirectAdmin
Una vez instalado, puedes gestionar CSF directamente desde el panel de DirectAdmin. No necesitas usar SSH para las configuraciones diarias.
Paso 1: Accede a la interfaz de CSF en DirectAdmin
- Inicia sesión en DirectAdmin como admin.
- Ve a Admin Level -> Plugin Manager.
- Busca ConfigServer Security & Firewall y actívalo si no está visible.
- Ahora verás un nuevo ícono en el menú izquierdo: CSF. Haz clic en él.
Paso 2: Configura los puertos permitidos
Lo primero es definir qué puertos deben estar abiertos. CSF viene con una configuración por defecto que funciona para la mayoría de los servidores, pero puedes ajustarla.
En la interfaz de CSF, busca la sección Firewall Configuration y edita los siguientes parámetros:
- TCP_IN: Puertos entrantes TCP (los que usan los visitantes para acceder a tu web). Por defecto:
20,21,22,25,53,80,110,143,443,465,587,993,995. No elimines el 22 (SSH) ni el 80/443 (web). - TCP_OUT: Puertos salientes TCP (los que tu servidor usa para conectarse a otros). Normalmente déjalo como está.
- UDP_IN y UDP_OUT: Similar para tráfico UDP. No toques si no sabes lo que haces.
[WARNING] No cierres el puerto 22 (SSH) a menos que tengas otro método de acceso. Podrías quedarte fuera para siempre.
Paso 3: Activa el firewall y guarda los cambios
Después de modificar los puertos, haz clic en Save y luego en Restart csf+lfd para aplicar los cambios.
Cómo bloquear IPs específicas en DirectAdmin con CSF
Una de las tareas más comunes es bloquear direcciones IP que están atacando tu servidor. Con CSF, es muy sencillo.
Bloquear una IP desde la interfaz de DirectAdmin
- En el menú de CSF, ve a Firewall Deny IPs.
- Escribe la IP que quieres bloquear en el campo IP Address.
- Opcionalmente, añade un comentario (por ejemplo, "IP de ataque desde Rusia").
- Haz clic en Add y luego en Restart csf+lfd.
Bloquear una IP desde SSH (más rápido)
Si tienes acceso SSH, puedes bloquear una IP al instante con:
csf -d 192.168.1.100 "Comentario opcional"
Para desbloquearla:
csf -dr 192.168.1.100
[INFO] Puedes bloquear rangos completos usando notación CIDR, por ejemplo:
csf -d 192.168.1.0/24.
Configuración avanzada: Protección contra ataques de fuerza bruta
CSF incluye LFD (Login Failure Daemon), que monitorea los intentos fallidos de inicio de sesión y bloquea automáticamente las IPs sospechosas. Esto es crucial para proteger tu DirectAdmin, SSH, FTP, etc.
Activar y configurar LFD
- En la interfaz de CSF, ve a LFD Configuration.
- Busca la opción LF_SSH_PERM (intentos fallidos de SSH). Por defecto está en 5. Significa que si alguien falla 5 veces, se bloquea su IP temporalmente.
- Puedes ajustar otros servicios como LF_FTPD (FTP) o LF_SMTP (correo).
- También configura LF_TRIGGER para que te envíe un correo cuando se bloquea una IP.
Bloqueo permanente vs temporal
Por defecto, LFD bloquea las IPs temporalmente (por ejemplo, 1 hora). Para hacer bloqueos permanentes, configura LF_PERMBLOCK en 1 y define el tiempo en LF_PERMBLOCK_TIME (en segundos, 86400 = 24 horas).
Preguntas frecuentes (FAQ)
¿Puedo usar el firewall de DirectAdmin sin CSF?
Sí, DirectAdmin tiene un firewall básico integrado llamado iptables, pero no es tan amigable. CSF te da una interfaz gráfica y automatizaciones que facilitan mucho la gestión.
¿Cómo sé si mi firewall está funcionando?
Puedes verificar el estado desde la interfaz de CSF o ejecutando csf -l en SSH. También puedes hacer un escaneo de puertos desde otra máquina (por ejemplo, usando nmap) para ver qué puertos están abiertos.
¿Qué hago si bloqueo mi propia IP?
Si te bloqueas a ti mismo, aún puedes acceder por SSH si tienes otra IP o mediante la consola del servidor (KVM/IPMI). También puedes agregar tu IP a la lista blanca desde SSH con:
csf -a tu.ip.aqui
Luego reinicia CSF: csf -r.
¿CSF afecta el rendimiento de mi servidor?
CSF es muy ligero y no debería afectar el rendimiento. Sin embargo, si tienes muchas reglas o el LFD está monitoreando demasiados servicios, puede consumir algo de CPU. En servidores normales, es imperceptible.
¿Debo usar CSF si tengo Syspanel (antes HestiaCP)?
Si tienes Syspanel, el puerto de acceso es el 2106. CSF también funciona con Syspanel, pero la configuración de puertos puede ser ligeramente diferente. Asegúrate de abrir el puerto 2106 en TCP_IN si quieres acceder al panel desde fuera.
Consejos finales para mantener tu servidor seguro
Configurar un firewall es solo el primer paso. Aquí tienes algunas recomendaciones adicionales:
- Actualiza regularmente: Tanto DirectAdmin como CSF reciben actualizaciones de seguridad. Mantén todo al día.
- Monitorea los logs: Revisa los logs de CSF en
/var/log/lfd.logpara ver qué IPs están siendo bloqueadas. - Usa contraseñas fuertes: Un firewall no sirve de nada si tu contraseña es "admin123".
- Habilita autenticación de dos factores (2FA): DirectAdmin soporta 2FA para mayor seguridad.
- Bloquea países enteros: Si solo tienes visitantes de ciertos países, puedes usar CSF para bloquear el resto (opción CC_DENY).
[TIP] No te obsesiones con bloquear todo. Un firewall demasiado restrictivo puede romper funcionalidades de tu web. Ve paso a paso y prueba cada cambio.
Conclusión
Ahora ya sabes cómo configurar un firewall básico en DirectAdmin usando CSF. Has aprendido a instalar la herramienta, definir puertos permitidos, bloquear IPs maliciosas y activar la protección contra ataques de fuerza bruta. Recuerda que la seguridad es un proceso continuo: revisa periódicamente tus reglas y mantente informado sobre nuevas amenazas.
Si tienes dudas, no dudes en consultar la documentación oficial de CSF o pedir ayuda en foros especializados. ¡Tu servidor te lo agradecerá!
