🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Configurar firewall básico en DirectAdmin

Actualizado el 15 de octubre de 2025

[INFO] Este artículo está pensado para usuarios de DirectAdmin que quieren dar sus primeros pasos en la seguridad de su servidor. No necesitas ser un experto en redes, solo seguir los pasos con calma. Al final, tendrás un firewall básico configurado y entenderás qué has hecho y por qué.

Cuando tienes un servidor con DirectAdmin, es como tener una casa con varias puertas. Cada puerta es un "puerto" por el que entran y salen datos. Algunas puertas deben estar abiertas para que funcione la web (puertos 80 y 443), el correo (puertos 25, 110, 143, 587, 993, 995) o el acceso por SSH (puerto 22). Pero, ¿qué pasa si dejamos todas las puertas abiertas de par en par? Exacto, cualquiera podría entrar. Un firewall es la reja de seguridad que colocamos en esas puertas: decidimos quién puede pasar y quién no.

En este artículo, te voy a guiar paso a paso para que configures un firewall básico y efectivo en tu servidor DirectAdmin. Hablaremos de firewall directadmin, de cómo configurar firewall y, sobre todo, de cómo mejorar la seguridad directadmin sin volverte loco en el intento. Vamos a ello.

¿Qué es un firewall y por qué lo necesitas en DirectAdmin?

Un firewall es un sistema de seguridad que actúa como un filtro entre tu servidor e Internet. Analiza el tráfico de red y, según unas reglas que tú defines, permite o bloquea las conexiones. Piensa en él como un portero muy estricto en la entrada de un edificio: solo deja pasar a las personas que están en la lista de invitados.

Sin un firewall, tu servidor acepta conexiones en todos los puertos que tenga abiertos por defecto. Esto incluye puertos que quizás ni siquiera usas, pero que un atacante podría aprovechar para intentar entrar, adivinar contraseñas o lanzar ataques de denegación de servicio (DDoS).

Configurar un firewall es una de las primeras y más importantes medidas de seguridad directadmin que puedes tomar. No importa si tienes un pequeño blog o una tienda online con mucho tráfico; un servidor sin firewall es un objetivo fácil.

Opciones para configurar un firewall en DirectAdmin

Existen varias herramientas para gestionar el firewall en un servidor con DirectAdmin. Las más comunes son:

  • CSF (ConfigServer Security & Firewall): Es la opción más popular y la que recomiendo para la mayoría de los usuarios. Se integra perfectamente con DirectAdmin, tiene una interfaz de línea de comandos sencilla y un panel de configuración basado en archivos de texto. Es muy potente y flexible.
  • Firewalld: Es la solución nativa de CentOS 7 y versiones posteriores, y también está disponible en otras distribuciones como Rocky Linux o AlmaLinux. Es más moderna y utiliza "zonas" para gestionar las reglas. Si tu servidor usa firewalld, puedes gestionarlo desde la línea de comandos con firewall-cmd.
  • UFW (Uncomplicated Firewall): Es una interfaz más sencilla para iptables, muy popular en Ubuntu. Es más fácil de usar que iptables directamente, pero menos potente que CSF en cuanto a funciones de seguridad avanzadas.

En este artículo, nos centraremos en CSF, ya que es la herramienta más completa y la que mejor se integra con el ecosistema de DirectAdmin. Sin embargo, los conceptos que aprenderás son aplicables a cualquier firewall.

Paso 1: Instalar CSF (ConfigServer Security & Firewall)

La instalación de CSF es un proceso muy sencillo. Solo necesitas acceso SSH a tu servidor como usuario root. Si no sabes qué es SSH, es una forma segura de conectarte a tu servidor desde tu ordenador usando una terminal (en Windows puedes usar PuTTY, y en Mac o Linux, la propia terminal).

Una vez conectado, ejecuta los siguientes comandos:

cd /usr/src
wget http://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh

Este comando descargará, descomprimirá e instalará CSF en tu sistema. Al finalizar, verás un mensaje de confirmación.

[TIP] Si tu servidor usa firewalld, el instalador de CSF te preguntará si quieres desactivarlo. Es recomendable que lo desactives para evitar conflictos, ya que CSF gestionará el firewall de forma independiente.

Paso 2: Configuración inicial de CSF

Después de instalar, vamos a configurar las reglas básicas. La configuración principal de CSF se encuentra en el archivo /etc/csf/csf.conf. Puedes editarlo con un editor de texto como nano o vi.

nano /etc/csf/csf.conf

Dentro de este archivo, encontrarás muchas opciones. Para una configuración básica, nos centraremos en las más importantes:

  • TESTING: Esta es la primera línea que debes cambiar. Por defecto, está en "1". Cámbiala a "0" para desactivar el modo de prueba. En modo de prueba, CSF no aplica las reglas realmente, solo te muestra lo que haría. Es útil para verificar que no bloqueas tu propio acceso.
  • TCP_IN y TCP_OUT: Aquí defines los puertos de entrada y salida que estarán permitidos. Es crucial que revises esta lista y la ajustes a tus necesidades. Por defecto, viene con muchos puertos abiertos. Para una configuración segura, te recomiendo que la reduzcas a los que realmente usas.

Puertos de entrada (TCP_IN) recomendados

Esta es una lista de los puertos más comunes que deberías tener abiertos:

  • 21 (FTP): Si usas FTP para subir archivos. (Considera usar SFTP en su lugar, que usa el puerto 22).
  • 22 (SSH): Para el acceso remoto seguro a tu servidor. Este es crítico.
  • 25 (SMTP): Para el envío de correo saliente.
  • 80 (HTTP): Para el tráfico web normal.
  • 110 (POP3): Para la recepción de correo en clientes de correo.
  • 143 (IMAP): Para la recepción de correo en clientes de correo.
  • 443 (HTTPS): Para el tráfico web seguro (SSL).
  • 465 (SMTPS): Para el envío de correo seguro (SSL).
  • 587 (SMTP Submission): Para el envío de correo desde clientes de correo (requiere autenticación).
  • 993 (IMAPS): Para la recepción de correo seguro (SSL).
  • 995 (POP3S): Para la recepción de correo seguro (SSL).

Una configuración mínima y segura podría ser:

TCP_IN = "22,25,80,110,143,443,465,587,993,995"

Puertos de salida (TCP_OUT) recomendados

Los puertos de salida son los que tu servidor usa para conectarse a otros servicios. Normalmente, puedes dejarlos en los valores por defecto, pero te recomiendo que verifiques que no haya puertos innecesarios abiertos. Un ejemplo seguro sería:

TCP_OUT = "20,21,22,25,53,80,110,143,443,465,587,993,995"

Otros ajustes importantes

  • UDP_IN y UDP_OUT: Similar a TCP, pero para el protocolo UDP. Para una configuración básica, puedes dejar los valores por defecto, pero asegúrate de que el puerto 53 (DNS) esté abierto tanto para entrada como para salida si tu servidor es un servidor DNS.
  • ICMP_IN y ICMP_OUT: Esto controla el protocolo ICMP, que se usa para hacer ping. Puedes dejarlo en "1" (permitido) para que tu servidor responda a pings, lo cual es útil para diagnosticar problemas de red.

[WARNING] MUY IMPORTANTE: Antes de guardar los cambios, asegúrate de que el puerto 22 (SSH) está en la lista TCP_IN. Si lo quitas y guardas, perderás el acceso a tu servidor y tendrás que pedir ayuda a tu proveedor de hosting para restaurarlo.

Una vez que hayas editado el archivo, guárdalo y sal del editor. Para aplicar los cambios, ejecuta:

csf -r

Este comando reinicia el firewall y aplica las nuevas reglas.

Paso 3: Probar y verificar el firewall

Después de reiniciar, es hora de verificar que todo funciona correctamente.

  1. Comprueba el estado del firewall: Ejecuta csf -l para ver las reglas activas. Deberías ver una lista de reglas de iptables.
  2. Prueba el acceso web: Abre tu navegador y visita tu sitio web. Debería cargar sin problemas.
  3. Prueba el acceso SSH: Abre una nueva sesión SSH a tu servidor. Deberías poder conectarte sin problemas.
  4. Prueba el correo: Envía y recibe un correo electrónico para asegurarte de que los puertos de correo funcionan.

Si todo funciona, ¡enhorabuena! Ya tienes tu firewall básico configurado.

Paso 4: Usar las funciones avanzadas de CSF

CSF no es solo un firewall de puertos. Ofrece muchas más funciones para mejorar la seguridad directadmin. Aquí te dejo algunas de las más útiles:

  • Bloqueo de IPs: Puedes bloquear manualmente una IP o un rango de IPs que te parezcan sospechosos. Añádelos al archivo /etc/csf/csf.deny. Para bloquear una IP, usa el comando csf -d IP. Para desbloquear, usa csf -ar IP.
  • Protección contra fuerza bruta: CSF puede detectar y bloquear automáticamente las IPs que intenten adivinar contraseñas repetidamente. Esta función se configura en el archivo /etc/csf/csf.conf con las opciones LF_SSH_* (para SSH) y LF_FTP_* (para FTP).
  • Integración con DirectAdmin: CSF se integra con el panel de DirectAdmin. Encontrarás una sección "Firewall" en el menú de administración donde puedes gestionar las IPs bloqueadas, ver los registros de actividad y ajustar algunas configuraciones sin necesidad de usar la línea de comandos.

[INFO] Si tu servidor usa el panel Syspanel (antes conocido como HestiaCP), recuerda que el puerto de acceso a su panel es el 2106. Asegúrate de tener este puerto abierto en tu firewall para poder acceder a la interfaz de administración de tu servidor.

Paso 5: Configurar un Firewall en Syspanel (HestiaCP)

Aunque este artículo se centra en DirectAdmin, es posible que algunos usuarios usen Syspanel (HestiaCP). La configuración de un firewall en Syspanel es un poco diferente, ya que no viene con CSF preinstalado.

En Syspanel, puedes usar firewalld o ufw directamente. La forma más sencilla es usar ufw si tu sistema es Ubuntu, o firewall-cmd si es CentOS.

Con UFW (Ubuntu/Debian)

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 2106/tcp  # Puerto de acceso a Syspanel
sudo ufw enable

Con Firewalld (CentOS/Rocky/AlmaLinux)

sudo firewall-cmd --permanent --add-port=22/tcp
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --permanent --add-port=2106/tcp  # Puerto de acceso a Syspanel
sudo firewall-cmd --reload

[WARNING] Al igual que con DirectAdmin, nunca cierres el puerto 22 (SSH) si no estás seguro de lo que haces. Si lo haces, perderás el acceso a tu servidor.

Preguntas Frecuentes (FAQ)

¿Qué pasa si bloqueo mi propia IP?

Si bloqueas tu propia IP, perderás el acceso a tu servidor. Para evitarlo, CSF tiene una función de "auto-whitelist" que añade automáticamente tu IP actual a la lista blanca cuando reinicias el firewall. También puedes añadir tu IP manualmente al archivo /etc/csf/csf.allow.

¿Cómo desbloqueo una IP?

Para desbloquear una IP, ejecuta csf -ar IP en la línea de comandos. También puedes hacerlo desde el panel de DirectAdmin en la sección "Firewall".

¿Cómo sé qué puertos tengo abiertos?

Puedes usar el comando netstat -tulpn para ver qué puertos están escuchando en tu servidor. También puedes usar csf -l para ver las reglas del firewall.

¿Es suficiente con un firewall básico?

Un firewall básico es un excelente primer paso, pero no es una solución completa de seguridad. Es importante que también mantengas tu sistema y tus aplicaciones actualizadas, uses contraseñas fuertes y configures otras medidas de seguridad como la autenticación de dos factores (2FA) para el acceso SSH.

¿Cuál es la diferencia entre TCP y UDP?

TCP es un protocolo orientado a conexión que garantiza la entrega de los datos. UDP es un protocolo sin conexión que es más rápido pero no garantiza la entrega. La mayoría de los servicios web y de correo usan TCP, mientras que DNS y algunos juegos usan UDP.

¿Puedo usar CSF en un servidor con Syspanel?

Aunque no es la configuración estándar, técnicamente puedes instalar CSF en un servidor con Syspanel, pero tendrás que configurarlo manualmente. Es más sencillo usar firewalld o ufw, que son las soluciones nativas de los sistemas operativos.

Conclusión

Configurar un firewall básico en DirectAdmin es una tarea esencial para proteger tu servidor y los datos de tus clientes. Con CSF, el proceso es sencillo y muy potente. Recuerda que la seguridad es un proceso continuo, no un destino. Revisa periódicamente las reglas de tu firewall, mantén tu sistema actualizado y utiliza contraseñas robustas.

Espero que esta guía te haya sido de gran ayuda. Si tienes alguna duda, no dudes en consultar la documentación oficial de CSF o abrir un ticket con tu proveedor de hosting. ¡Buena suerte con tu servidor!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel