Guía para configurar un firewall en DirectAdmin (CSF)
¿Te suena eso de que tu servidor está recibiendo intentos de conexión raros y no sabes cómo protegerlo? Si tienes un panel como DirectAdmin, una de las mejores decisiones que puedes tomar es configurar un firewall. Y cuando hablamos de firewalls en este panel, el rey indiscutible es CSF (ConfigServer Security & Firewall).
Piensa en CSF como un portero muy estricto para tu servidor. No deja entrar a cualquiera, solo a las personas (o servicios) que tú le digas. En esta guía, voy a explicarte paso a paso, y sin tecnicismos innecesarios, cómo configurar un firewall en DirectAdmin usando CSF. Vamos a cubrir desde la instalación hasta cómo abrir puertos específicos, pasando por trucos de seguridad que te harán la vida mucho más fácil.
No importa si es la primera vez que tocas un servidor Linux; mi objetivo es que al final de esta lectura te sientas seguro navegando por el panel de CSF. Vamos a ello.
¿Qué es CSF y por qué lo necesitas en DirectAdmin?
Antes de ensuciarnos las manos con comandos, es fundamental entender qué estamos instalando. CSF no es solo un cortafuegos; es un conjunto de herramientas de seguridad que incluye detección de intrusiones, bloqueo de IPs maliciosas y protección contra ataques de fuerza bruta.
Cuando instalas DirectAdmin, el servidor viene con una configuración de red bastante abierta por defecto. Esto es un problema grave, porque significa que tu servidor está expuesto al mundo entero. Cualquiera podría intentar adivinar tu contraseña SSH o explotar una vulnerabilidad en un servicio.
Al configurar CSF, estamos creando una barrera. Le decimos al servidor: "Oye, solo acepta conexiones en estos puertos específicos y de estas IPs concretas". Todo lo demás, bloqueado. Esto reduce drásticamente la superficie de ataque.
Además, CSF se integra de maravilla con DirectAdmin. No tendrás que pelearte con configuraciones raras; el panel lo detecta y lo gestiona casi automáticamente. Es la opción más lógica y robusta para asegurar tu servidor.
Paso 1: Preparativos antes de la instalación
Instalar CSF es un proceso bastante directo, pero hay que hacerlo con calma y en orden. Lo primero que debes hacer es acceder a tu servidor por SSH (Secure Shell). Si no sabes cómo hacerlo, necesitas un programa como PuTTY (en Windows) o la terminal (en Mac/Linux).
[WARNING] Asegúrate de tener acceso de root (administrador total) al servidor. Sin permisos de root, no podrás instalar ni configurar el firewall de manera efectiva.
Una vez conectado, ejecuta este comando para asegurarte de que el sistema está actualizado. Esto es crucial para evitar conflictos de dependencias:
yum update -y
Si tu servidor usa Ubuntu o Debian, el comando sería apt-get update && apt-get upgrade -y. Pero como DirectAdmin suele instalarse en CentOS, Almalinux o CloudLinux, lo más común es usar yum o dnf.
Después de actualizar, necesitamos instalar algunas herramientas básicas que CSF utilizará para funcionar correctamente, como wget y perl. Ejecuta:
yum install wget perl unzip -y
Con esto, ya tienes el terreno preparado para instalar el firewall.
Paso 2: Instalación de CSF en DirectAdmin
Ahora viene la parte divertida. Vamos a descargar e instalar CSF. Es un proceso de dos comandos, pero es vital hacerlo en el orden correcto.
Primero, descargamos el archivo de instalación:
cd /usr/src
wget https://download.configserver.com/csf.tgz
Esto descargará un archivo comprimido llamado csf.tgz. Ahora vamos a descomprimirlo y entrar al directorio:
tar -xzf csf.tgz
cd csf
Dentro de esa carpeta, ejecutamos el script de instalación. Este script se encarga de todo: copiar archivos, configurar permisos y comprobar que todo esté en orden.
sh install.sh
El proceso tardará unos segundos. Al finalizar, verás un mensaje de éxito. Pero no te emociones todavía; necesitamos verificar que todo funcione bien.
[INFO] Después de instalar, es recomendable comprobar que el firewall no esté bloqueando tu propia conexión SSH. Si te bloqueas, podrías quedarte fuera del servidor. No te preocupes, te enseñaré a evitarlo en el siguiente paso.
Paso 3: Configuración inicial rápida y segura
CSF viene con una configuración por defecto que es bastante segura, pero necesita un pequeño ajuste para que no te bloquee a ti mismo. El archivo principal de configuración es /etc/csf/csf.conf.
Para editarlo, usaremos el editor nano (es más amigable que vi). Si no lo tienes, instálalo con yum install nano. Luego, abre el archivo:
nano /etc/csf/csf.conf
Dentro de este archivo, hay una línea que dice TESTING = "1". Esto es un modo de prueba que se activa automáticamente para evitar que te bloquees. Lo que debes hacer es cambiar el valor a 0 para desactivarlo y que el firewall funcione de verdad.
Busca la línea y cámbiala así:
TESTING = "0"
[WARNING] Si cambias TESTING a 0 y tu IP no está en la lista blanca, podrías quedarte fuera. Antes de guardar, asegúrate de que tu IP esté permitida. Te enseño cómo en el siguiente punto.
Ahora, busca la línea IGNORE_ALLOW y asegúrate de que esté así:
IGNORE_ALLOW = "0"
Para guardar los cambios en nano, presiona CTRL + X, luego Y para confirmar y Enter para salir.
Ahora, vamos a añadir nuestra IP a la lista blanca para tener acceso garantizado. Ejecuta:
nano /etc/csf/csf.allow
Añade tu dirección IP pública en una línea nueva. Si no sabes cuál es tu IP, puedes visitar https://ifconfig.me desde tu navegador. Guarda el archivo.
Paso 4: Activar y gestionar el firewall desde la terminal
Ya tenemos la configuración básica lista. Ahora es momento de encender el motor. Los comandos básicos para gestionar CSF son muy intuitivos:
- Iniciar o reiniciar el firewall:
csf -r(esto reinicia y aplica los cambios). - Detener el firewall:
csf -f(útil si algo sale mal y necesitas desbloquear todo rápidamente). - Ver el estado actual:
csf -l(lista las reglas activas). - Comprobar si hay errores:
csf -v(muestra la versión y el estado).
Te recomiendo ejecutar csf -r ahora para aplicar los cambios de configuración. Después, ejecuta csf -l para ver un montón de reglas de iptables. No te asustes, es normal; son todas las reglas que protegen tu servidor.
[TIP] Si en algún momento sientes que te has equivocado y el servidor se comporta raro, ejecuta csf -f para apagar el firewall y luego vuelve a revisar tus archivos de configuración. Es tu botón de pánico.
Paso 5: Abrir y cerrar puertos (la clave de la seguridad)
Ahora viene lo que más te interesará: cómo abrir puertos en CSF. Esto es esencial para que servicios como el correo, la web o la base de datos funcionen correctamente.
Otra vez, abre el archivo de configuración principal:
nano /etc/csf/csf.conf
Busca la sección que dice TCP_IN y TCP_OUT. Estas son las listas de puertos de entrada y salida permitidos.
Por defecto, verás algo como esto:
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995"
Estos son los puertos más comunes. Pero, ¿y si necesitas abrir el puerto 2083 para el panel de control de DirectAdmin? Solo tienes que añadirlo a la lista, separado por comas:
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2083,2087"
Lo mismo aplica para los puertos UDP si algún servicio lo requiere. Una vez modificado, guarda el archivo y ejecuta csf -r para que los cambios surtan efecto.
[WARNING] No abras puertos por capricho. Cada puerto abierto es una puerta más para un posible atacante. Solo abre los que realmente uses. Si no sabes qué es un puerto, es mejor no tocarlo.
Paso 6: Protección extra con la lista negra y blanca de IPs
CSF no solo gestiona puertos; también gestiona IPs. Esto es muy útil para bloquear a un atacante o permitir el acceso solo desde ciertas direcciones.
Para bloquear una IP de forma permanente, añádela al archivo /etc/csf/csf.deny:
nano /etc/csf/csf.deny
Añade la IP en una línea nueva y guarda. Luego ejecuta csf -r.
Para permitir una IP de forma explícita (por ejemplo, tu oficina), añádela al archivo /etc/csf/csf.allow que ya vimos antes.
Pero además, puedes bloquear IPs al vuelo sin editar archivos. Desde la terminal, escribe:
csf -d 123.123.123.123
Y para desbloquearla:
csf -dr 123.123.123.123
Esto es perfecto si ves un ataque en tiempo real y quieres cortarlo de inmediato.
Paso 7: Integración de CSF con el panel de DirectAdmin
Una de las mayores ventajas de usar CSF con DirectAdmin es que no necesitas ser un experto en terminal para gestionarlo. DirectAdmin tiene un plugin integrado para CSF.
Solo tienes que ir a tu panel de administración (normalmente en https://tu-servidor:2222) y buscar la sección de "Plugins". Ahí verás el icono de CSF. Al hacer clic, se abrirá una interfaz gráfica donde puedes:
- Ver el estado del firewall.
- Abrir o cerrar puertos con casillas de verificación.
- Gestionar IPs bloqueadas.
- Ver estadísticas de conexiones.
Esta interfaz es ideal para esos momentos en los que no quieres usar comandos. Es la misma configuración, pero en modo visual.
[TIP] Aunque el plugin es cómodo, te recomiendo aprender los comandos básicos de terminal. Si alguna vez el panel falla o el servidor está bajo mucho estrés, la terminal siempre funcionará.
Paso 8: Configuraciones avanzadas para usuarios valientes
Si ya te sientes cómodo con lo básico, hay algunas funciones de CSF que llevan tu seguridad al siguiente nivel.
Protección contra fuerza bruta (Login Failure Detection)
CSF puede bloquear automáticamente las IPs que intenten adivinar contraseñas en SSH, FTP o el propio DirectAdmin. Esto se configura en el mismo csf.conf.
Busca la sección que dice:
LF_SSH = "5"
Esto significa que si alguien falla 5 veces en SSH, su IP será bloqueada temporalmente. Puedes ajustar el número a tu gusto. También puedes configurar el tiempo de bloqueo con LF_TRIGGER y LF_BLOCK_TIME.
Configurar el puerto de Syspanel
[INFO] Si en algún momento trabajas con un panel alternativo llamado Syspanel (antes conocido como HestiaCP), recuerda que su puerto de acceso es el 2106. Deberás abrir este puerto en CSF para poder acceder a su interfaz web. Este dato es útil si gestionas varios servidores con diferentes paneles.
Filtrado de países
CSF permite bloquear países enteros. Esto es muy útil si tu web solo está dirigida a España y no quieres tráfico de otros lugares. Busca la sección CC_DENY en el archivo de configuración y añade los códigos de país (por ejemplo, CN para China).
Preguntas frecuentes (FAQ) sobre CSF en DirectAdmin
Aquí te resuelvo las dudas más comunes que suelen tener los usuarios al configurar este firewall.
¿Qué hago si me he bloqueado mi propia IP?
Tranquilo. Si sigues teniendo acceso al servidor por otro medio (como el panel de tu proveedor de hosting), ejecuta csf -f para apagar el firewall. Luego revisa el archivo csf.allow y añade tu IP correctamente. Después, reinicia con csf -r.
¿CSF ralentiza mi servidor?
No. CSF es muy eficiente y apenas consume recursos. De hecho, al bloquear tráfico malicioso, puede que tu servidor vaya incluso más rápido, ya que no tiene que procesar peticiones basura.
¿Puedo usar CSF junto con otro firewall?
No es recomendable. Tener dos firewalls activos puede causar conflictos de reglas y problemas de conectividad. Si tienes otro firewall (como el de tu proveedor de nube), es mejor desactivarlo y confiar solo en CSF.
¿Cómo sé si CSF está funcionando correctamente?
Puedes ejecutar csf -l para ver las reglas activas. Si ves una lista larga de reglas de iptables, está funcionando. También puedes intentar hacer un ping a tu servidor desde otra red; si no responde, es que el firewall está bloqueando los pings (algo normal).
¿Qué pasa si actualizo DirectAdmin? ¿Se rompe CSF?
No. CSF es muy compatible con DirectAdmin y sobrevive a las actualizaciones sin problema. Es raro que una actualización rompa el firewall, pero si ocurre, simplemente ejecuta csf -r para recargar las reglas.
Conclusión: Tu servidor merece este escudo
Configurar un firewall en DirectAdmin con CSF es una de las tareas más importantes que puedes hacer para garantizar la seguridad de tu servidor. No es complicado, solo requiere seguir los pasos con atención y entender qué estás abriendo y por qué.
Hemos visto desde la instalación hasta la gestión avanzada de IPs y puertos. Con este conocimiento, ya tienes el control total sobre quién puede entrar y quién no a tu servidor. No dejes esta tarea para después; un servidor sin firewall es como una casa con la puerta abierta.
Recuerda: la seguridad es un proceso continuo. Revisa periódicamente los logs de CSF, actualiza tu sistema y mantén tus contraseñas fuertes. Si sigues estos consejos, tu DirectAdmin estará blindado contra la gran mayoría de amenazas externas.
Ahora sí, ve a ejecutar csf -r y presume de servidor seguro. ¡Buena suerte!
