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

Cómo configurar un cortafuegos en cPanel con CSF

Actualizado el 18 de marzo de 2026

¿Qué es CSF y por qué necesitas proteger tu servidor cPanel?

Cuando tienes un servidor con cPanel, estás gestionando un equipo que está expuesto a Internet las 24 horas del día. Eso significa que, tarde o temprano, alguien intentará acceder a él sin permiso. Por eso, una de las primeras cosas que debes hacer tras montar tu servidor es configurar CSF, también conocido como ConfigServer Security Firewall.

CSF es un firewall de nivel de aplicación y kernel que se integra perfectamente con cPanel. No es un simple cortafuegos de los que bloquean puertos; es una herramienta completa que incluye detección de intrusiones, protección contra fuerza bruta, filtrado de IPs y mucho más. En este artículo, te voy a explicar paso a paso cómo instalar y configurar CSF para proteger tu servidor cPanel, sin necesidad de ser un experto en seguridad.

Vamos a ello. Te prometo que al final de esta guía, tu servidor estará mucho más blindado y tú te sentirás más tranquilo.


Requisitos previos antes de instalar CSF

Antes de lanzarnos a instalar CSF, asegúrate de que cumples estos requisitos. Si no los tienes, podrías encontrarte con problemas durante la instalación.

Acceso SSH a tu servidor

Necesitas acceso por SSH (terminal) a tu servidor. Si no sabes cómo conectarte, puedes usar programas como PuTTY (en Windows) o la terminal nativa de Mac/Linux. Necesitarás las credenciales de root o de un usuario con privilegios sudo.

Sistema operativo compatible

CSF funciona en los principales sistemas operativos que soporta cPanel: CentOS, AlmaLinux, Rocky Linux, CloudLinux y Ubuntu (aunque cPanel ya no recomienda Ubuntu, sigue siendo posible). Asegúrate de que tu sistema está actualizado antes de empezar.

Tener instalado cPanel

Lógicamente, necesitas tener cPanel instalado y funcionando. CSF está diseñado para integrarse con él, así que si no tienes cPanel, esta guía no te servirá.

Configuración de red básica

Es recomendable que conozcas la IP pública de tu servidor y que tengas acceso al panel de tu proveedor de hosting para poder reiniciar el servidor si algo sale mal. No te preocupes, te daré consejos para evitar bloquearte fuera.

[WARNING] Si te equivocas con las reglas del firewall, podrías quedarte fuera de tu propio servidor. Asegúrate de tener acceso al panel de control de tu proveedor (como Vultr, DigitalOcean o Hetzner) para poder reiniciar o acceder por consola en caso de emergencia.


Paso 1: Instalar CSF en cPanel

La instalación de CSF es sorprendentemente sencilla, sobre todo porque cPanel tiene un mecanismo de instalación de plugins integrado. Te voy a mostrar dos formas de hacerlo: la más rápida (con comandos) y la recomendada (desde el panel).

Método 1: Instalación desde la línea de comandos (SSH)

Conéctate por SSH a tu servidor y ejecuta los siguientes comandos uno a uno:

  1. Descarga el archivo de instalación:

    cd /usr/src
    wget https://download.configserver.com/csf.tgz
    
  2. Descomprime el archivo:

    tar -xzf csf.tgz
    
  3. Entra en el directorio recién creado:

    cd csf
    
  4. Ejecuta el instalador:

    sh install.sh
    

Este proceso tarda unos minutos. Al final, verás un mensaje de confirmación. Lo que hace el instalador es copiar los archivos a su ubicación definitiva, configurar los permisos y activar el módulo de Perl que necesita.

Método 2: Instalación desde cPanel (recomendado para novatos)

cPanel tiene una sección llamada Marketplace o Plugins donde puedes instalar CSF sin usar la terminal.

  1. Accede a tu WHM (Web Host Manager) con tu usuario root.
  2. Busca la sección Plugins o Marketplace en el menú lateral.
  3. Busca ConfigServer Security & Firewall y haz clic en Install.
  4. Sigue las instrucciones en pantalla.

Este método es más visual y evita posibles errores de tipeo, pero ambos funcionan perfectamente.


Paso 2: Configurar CSF por primera vez

Una vez instalado, no está activado por defecto. Debes configurarlo y activarlo manualmente. La configuración principal se encuentra en el archivo /etc/csf/csf.conf.

Acceder al archivo de configuración

Para editar el archivo, usa un editor de texto desde SSH, como nano o vi.

nano /etc/csf/csf.conf

Parámetros esenciales que debes revisar

Dentro de este archivo, hay varias opciones que son críticas para no quedarte fuera de tu servidor. Te las detallo a continuación.

1. Configurar la interfaz de red (INTERFACE)

Busca la línea que dice INTERFACE. Por defecto, suele estar vacía o con eth0. Si tu servidor usa una interfaz distinta (por ejemplo, ens3 o enp0s3), debes especificarla. Para saber cuál es tu interfaz, ejecuta este comando antes de editar el archivo:

ip addr show

Busca la que tiene tu IP pública y anota su nombre. Luego, en el archivo csf.conf, escribe:

INTERFACE = "eth0"

[INFO] Si no sabes qué interfaz es, déjalo en blanco. CSF intentará detectarla automáticamente, pero es mejor especificarla para evitar problemas.

2. Configurar la IP de tu servidor

Busca la línea SERVER_IP. Es muy importante que pongas aquí la IP pública de tu servidor. Si tienes varias IPs, puedes listarlas separadas por comas.

SERVER_IP = "192.168.1.100"

3. Activar el firewall (TESTING)

Esta es la opción más importante. Busca la línea que dice TESTING. Está configurada en 1 por defecto, lo que significa que el firewall está en modo de prueba. En este modo, CSF se activa pero se desactiva automáticamente después de un tiempo (por defecto, 5 minutos) para que no te quedes bloqueado.

TESTING = "1"

Cuando estés seguro de que todo funciona, cambia este valor a 0 para que el firewall esté siempre activo.

[TIP] Te recomiendo dejar TESTING = "1" durante las primeras horas. Así, si algo sale mal, no te quedarás fuera del servidor para siempre. Una vez que confirmes que todo va bien, cámbialo a 0.


Paso 3: Activar y probar CSF

Ahora que has configurado lo básico, es hora de activar el firewall.

Activar el servicio

Ejecuta estos comandos en orden:

  1. Para probar la configuración:

    csf -c
    

    Esto verificará que no hay errores en el archivo de configuración.

  2. Para iniciar el firewall:

    csf -s
    
  3. Para asegurarte de que se inicie automáticamente al arrancar el servidor:

    systemctl enable csf
    

Verificar que todo funciona

Puedes comprobar el estado del firewall con:

csf -l

Este comando te mostrará todas las reglas activas. También puedes ver los puertos abiertos con csf -p.


Paso 4: Configurar puertos y servicios (reglas básicas)

CSF viene con una lista de puertos predefinidos. Sin embargo, es probable que necesites abrir o cerrar puertos específicos para tus aplicaciones.

Editar los puertos permitidos

En el archivo csf.conf, busca las líneas TCP_IN y TCP_OUT. Aquí es donde defines qué puertos están abiertos para conexiones entrantes y salientes.

Por ejemplo, para un servidor web estándar, deberías tener algo así:

TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2082,2083,2086,2087,2095,2096"
TCP_OUT = "20,21,22,25,37,43,53,80,110,113,443,587,873,993,995,2082,2083,2086,2087,2095,2096"

Si necesitas abrir un puerto específico, como el 3000 para una aplicación web, solo tienes que añadirlo a la lista. Por ejemplo:

TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2082,2083,2086,2087,2095,2096,3000"

Después de cualquier cambio, debes reiniciar el firewall:

csf -r

[TIP] No abras puertos innecesarios. Cada puerto abierto es una puerta potencial para un atacante. Si no sabes qué puerto necesitas, no lo abras.


Paso 5: Protección contra fuerza bruta (Login Failure)

Una de las características más potentes de CSF es su capacidad para bloquear IPs que intentan acceder por fuerza bruta (es decir, que prueban miles de contraseñas por minuto).

Activar y configurar la protección

En el archivo csf.conf, busca la sección LF_* (Login Failure). Estos son los ajustes clave:

  • LF_TRIGGER: Número de intentos fallidos antes de bloquear (por defecto, 5).
  • LF_TRIGGER_PERM: Número de intentos fallidos para un bloqueo permanente (por defecto, 30).
  • LF_INTERVAL: Ventana de tiempo en segundos para contar los intentos (por defecto, 60).
  • LF_BLOCK_TIME: Duración del bloqueo temporal en segundos (por defecto, 600).

Un ejemplo de configuración razonable sería:

LF_TRIGGER = "5"
LF_TRIGGER_PERM = "30"
LF_INTERVAL = "60"
LF_BLOCK_TIME = "600"

Protección específica para cPanel

CSF también puede monitorear los intentos de acceso a WHM, cPanel, SSH, FTP, etc. Asegúrate de que las siguientes líneas estén en 1:

LF_CPANEL = "1"
LF_SSH = "1"
LF_FTP = "1"
LF_SMTPAUTH = "1"

Paso 6: Listas blancas y negras (manejo de IPs)

A veces necesitas bloquear manualmente una IP que está causando problemas o permitir una IP específica que no debería ser bloqueada por error.

Añadir una IP a la lista negra

Para bloquear una IP de forma permanente, usa el comando:

csf -d 192.168.1.50

Para desbloquearla:

csf -dr 192.168.1.50

Añadir una IP a la lista blanca

Si quieres asegurarte de que una IP nunca sea bloqueada (por ejemplo, la IP de tu oficina), puedes añadirla al archivo /etc/csf/csf.allow. Simplemente edita el archivo y añade la IP en una línea nueva.

nano /etc/csf/csf.allow

Después de guardar, recarga el firewall:

csf -r

Paso 7: Usar la interfaz gráfica de CSF en WHM

Aunque todo se puede hacer por terminal, CSF tiene una interfaz gráfica integrada en WHM que es muy útil para los que prefieren no usar comandos.

Acceder a la interfaz

  1. Inicia sesión en tu WHM.
  2. En el menú de la izquierda, busca Plugins.
  3. Haz clic en ConfigServer Security & Firewall.

Desde aquí puedes:

  • Ver el estado del firewall.
  • Modificar la configuración principal (es como editar el archivo csf.conf, pero con botones).
  • Gestionar listas de IPs bloqueadas y permitidas.
  • Ver los logs de ataques bloqueados.
  • Activar o desactivar la protección contra fuerza bruta.

Esta interfaz es excelente para principiantes, ya que evita errores de sintaxis.


Paso 8: Configuraciones avanzadas (opcional pero recomendado)

Si quieres llevar la protección de tu servidor al siguiente nivel, aquí tienes algunas configuraciones avanzadas que vale la pena revisar.

Protección SYN Flood

Busca la línea SYNFLOOD y actívala:

SYNFLOOD = "1"

Esto protege contra ataques de denegación de servicio que saturan la tabla de conexiones del servidor.

Bloqueo de puertos de escaneo

CSF puede detectar y bloquear automáticamente puertos que se escanean de forma maliciosa. Busca PORTFLOOD y configúralo:

PORTFLOOD = "22;tcp;5;3"

Esto significa que si se intentan más de 5 conexiones TCP al puerto 22 en 3 segundos, la IP será bloqueada.

Notificaciones por correo

Configura una dirección de correo para recibir alertas cuando se bloquee una IP. Busca LF_ALERT_TO y añade tu correo:

LF_ALERT_TO = "tu@correo.com"

Solución de problemas comunes (FAQ)

Aquí te dejo las dudas más frecuentes que suelen tener los usuarios al configurar CSF.

¿Por qué no puedo acceder a mi servidor después de activar CSF?

Lo más probable es que hayas bloqueado el puerto 22 (SSH) o que la configuración de TCP_IN no incluya los puertos necesarios. Revisa que el puerto 22 esté en TCP_IN. Si no puedes acceder, usa la consola de tu proveedor de hosting para editar el archivo csf.conf y cambiar TESTING a 1.

¿Cómo sé si CSF está funcionando?

Ejecuta csf -l y verás las reglas activas. También puedes ver el estado con systemctl status csf.

¿Puedo usar CSF en un servidor que no tiene cPanel?

Sí, CSF funciona en servidores independientes, pero esta guía está enfocada a cPanel. Si usas Syspanel (antes conocido como HestiaCP), también puedes instalar CSF, pero la integración no será tan profunda. En Syspanel, recuerda que el puerto de acceso al panel es el 2106, así que asegúrate de que ese puerto esté abierto en tu configuración de CSF.

¿Con qué frecuencia debo actualizar las reglas?

CSF se actualiza automáticamente con los paquetes del sistema. Sin embargo, es una buena práctica revisar los logs semanalmente para ver si hay ataques recurrentes y ajustar las reglas en consecuencia.

¿CSF ralentiza mi servidor?

No de forma significativa. CSF está optimizado para funcionar con bajo consumo de recursos. En servidores modestos, el impacto es mínimo.


Conclusión y buenas prácticas finales

Configurar CSF en tu servidor cPanel es una de las mejores decisiones que puedes tomar para proteger tu infraestructura. No es un proceso complicado, pero requiere atención a los detalles.

Resumen de pasos clave

  1. Instala CSF desde la terminal o desde WHM.
  2. Configura los parámetros básicos (INTERFACE, SERVER_IP, TESTING).
  3. Activa el firewall y comprueba que todo funciona.
  4. Abre solo los puertos necesarios en TCP_IN y TCP_OUT.
  5. Activa la protección contra fuerza bruta (LF_*).
  6. Gestiona listas blancas y negras para IPs específicas.
  7. Usa la interfaz gráfica de WHM para facilitar la gestión.
  8. Activa funciones avanzadas como SYN Flood y Port Flood.

Buenas prácticas para mantener tu servidor seguro

  • Actualiza CSF regularmente: El equipo de ConfigServer lanza parches de seguridad con frecuencia.
  • Revisa los logs: /var/log/lfd.log es tu mejor amigo para detectar ataques.
  • No bloquees tu propia IP: Siempre añade tu IP a la lista blanca (csf.allow).
  • Usa contraseñas fuertes: El firewall no sirve de nada si tu contraseña de root es "123456".

[WARNING] Si usas **

¿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