Cómo habilitar el firewall CSF en Plesk para principiantes
¿Qué es CSF y por qué tu servidor Plesk lo necesita?
Si estás gestionando un servidor con Plesk, probablemente ya hayas oído hablar del firewall CSF (ConfigServer Security & Firewall). Pero, ¿qué es exactamente y por qué es tan importante para la seguridad de tu hosting?
CSF es un firewall de nivel empresarial diseñado específicamente para servidores Linux. Funciona como un escudo inteligente que monitoriza todo el tráfico que entra y sale de tu servidor, bloqueando automáticamente cualquier intento de acceso no autorizado. Para los usuarios de Plesk, CSF es una de las mejores opciones de protección porque se integra perfectamente con el panel de control y añade una capa extra de seguridad sin necesidad de ser un experto en redes.
La razón principal por la que deberías considerar activar CSF en tu servidor Plesk es que los ataques informáticos son cada vez más sofisticados y frecuentes. Sin un firewall adecuado, tu servidor queda expuesto a miles de intentos de intrusión diarios. CSF no solo bloquea direcciones IP maliciosas, sino que también detecta patrones de comportamiento sospechosos, como intentos de fuerza bruta en SSH o en los formularios de acceso de WordPress.
Además, CSF incluye herramientas como Login Failure Daemon (LFD), que monitoriza los intentos fallidos de inicio de sesión y bloquea automáticamente las IPs que superan un umbral determinado. Esto es especialmente útil si tienes clientes que usan contraseñas débiles o si tu servidor es objetivo de ataques coordinados.
Otra ventaja importante es que CSF es gratuito para uso en servidores con hasta 3 direcciones IP, lo que lo convierte en una solución accesible para la mayoría de los administradores de hosting que usan Plesk. Su configuración inicial puede parecer abrumadora, pero una vez que entiendes los conceptos básicos, te darás cuenta de que es mucho más sencillo de lo que parece.
En este artículo, te guiaré paso a paso para que puedas habilitar el firewall CSF en Plesk sin necesidad de ser un experto en seguridad. Empezaremos desde cero: instalación, configuración básica, integración con Plesk y resolución de problemas comunes. Al final, tendrás un servidor mucho más seguro y sabrás cómo gestionar el firewall con confianza.
Requisitos previos antes de instalar CSF en Plesk
Antes de lanzarnos a instalar CSF, es importante que verifiques que tu servidor cumple con los requisitos mínimos. Esto te ahorrará muchos dolores de cabeza más adelante.
En primer lugar, necesitas acceso root al servidor a través de SSH. Si solo tienes acceso de usuario administrador desde Plesk, no podrás instalar CSF correctamente, ya que requiere modificar archivos del sistema que están fuera del alcance del panel. Si no sabes cómo obtener acceso root, contacta con tu proveedor de hosting o con el administrador del servidor.
También es crucial que tu servidor tenga instalado el paquete perl y el módulo perl-IPC-ShareLite, ya que CSF depende de ellos para funcionar. En la mayoría de las distribuciones Linux modernas, estos paquetes ya vienen instalados, pero si no es así, puedes instalarlos fácilmente con el gestor de paquetes de tu distribución.
Otro requisito importante es que tu servidor tenga una versión actualizada de Plesk. CSF es compatible con Plesk desde la versión 12 en adelante, pero siempre es recomendable usar la última versión estable para evitar conflictos con las extensiones del firewall. Puedes verificar la versión de Plesk desde el panel en Herramientas y configuración > Información del producto.
Por último, haz una copia de seguridad completa del servidor antes de comenzar. Aunque CSF es muy estable, cualquier cambio en la configuración del firewall puede afectar temporalmente la conectividad. Es mejor prevenir que lamentar. Puedes hacer una copia de seguridad desde Plesk en la sección Copias de seguridad y restauración, o directamente desde SSH con herramientas como tar o rsync.
Instalación paso a paso del firewall CSF en Plesk
Ahora que ya tienes los requisitos cubiertos, vamos a la parte práctica. La instalación de CSF en Plesk es un proceso bastante sencillo, pero requiere que sigas los pasos en orden para evitar errores.
Paso 1: Conectarte al servidor por SSH
Abre tu terminal favorito (PuTTY en Windows, Terminal en macOS o Linux) y conéctate a tu servidor con el usuario root. El comando sería algo así:
ssh root@tu-servidor.com
Si tienes configurada una clave SSH, el proceso será automático. Si usas contraseña, te la pedirá. Una vez dentro, verás el prompt del sistema. A partir de aquí, todos los comandos que ejecutes serán como administrador.
Paso 2: Descargar e instalar CSF
CSF se distribuye como un archivo comprimido que puedes descargar directamente desde el sitio oficial de ConfigServer. Los comandos para instalar son los siguientes:
cd /usr/src
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh
Durante la instalación, el script comprobará automáticamente si tienes los módulos de Perl necesarios y los instalará si es necesario. También creará los directorios de configuración y los scripts de arranque para que CSF se inicie automáticamente con el sistema.
Paso 3: Verificar que CSF se ha instalado correctamente
Después de la instalación, puedes comprobar si todo ha ido bien ejecutando:
csf -v
Este comando te mostrará la versión instalada. Si aparece un número de versión, la instalación ha sido exitosa. También puedes verificar el estado del firewall con:
csf -s
Este comando inicia el firewall. Si no hay errores, verás un mensaje indicando que el firewall está activo.
Paso 4: Configuración inicial básica
CSF viene con una configuración por defecto bastante segura, pero es recomendable ajustar algunos parámetros antes de activarlo por completo. El archivo de configuración principal se encuentra en /etc/csf/csf.conf. Puedes editarlo con el editor de tu preferencia, por ejemplo:
nano /etc/csf/csf.conf
Dentro de este archivo, busca la línea que dice TESTING = "1". Esta es una de las configuraciones más importantes. Mientras el valor sea 1, CSF funcionará en modo de prueba, lo que significa que no bloqueará el tráfico real, solo lo registrará. Para activar el firewall de verdad, cambia este valor a 0.
TESTING = "0"
Después de hacer este cambio, guarda el archivo y reinicia CSF con:
csf -r
Este comando reinicia el firewall aplicando la nueva configuración. A partir de este momento, CSF empezará a proteger tu servidor de forma activa.
Integración de CSF con Plesk
Una de las grandes ventajas de CSF es que se integra nativamente con Plesk, lo que te permite gestionar el firewall desde el propio panel de control sin necesidad de usar SSH para cada cambio. Veamos cómo configurar esta integración.
Activar la extensión de CSF en Plesk
Plesk detecta automáticamente cuando CSF está instalado en el servidor y muestra una nueva sección en el panel llamada "Firewall" o "ConfigServer Security & Firewall". Sin embargo, si no aparece, puedes activarla manualmente desde la línea de comandos:
/usr/local/psa/bin/extension --install csf
Este comando instala la extensión oficial de CSF para Plesk. Después de instalarla, ve a Plesk y busca la sección "ConfigServer Security & Firewall" en el menú de la izquierda. Verás un panel completo con todas las opciones del firewall, desde las reglas de entrada y salida hasta el estado del demonio LFD.
Configurar las opciones básicas desde Plesk
Dentro de la interfaz de CSF en Plesk, encontrarás varias pestañas. La más importante es "Configuración", donde puedes modificar los parámetros principales sin tocar archivos de configuración. Por ejemplo, puedes cambiar el puerto SSH por defecto, habilitar o deshabilitar los puertos de servicios como FTP o MySQL, y configurar las políticas de bloqueo.
También tienes la pestaña "Reglas de firewall", donde puedes añadir reglas personalizadas para permitir o denegar tráfico a direcciones IP específicas o rangos completos. Esto es muy útil si tienes clientes que necesitan acceso a servicios específicos desde ubicaciones concretas.
La pestaña "Listas de bloqueo" te permite gestionar las IPs que están actualmente bloqueadas. Puedes añadir IPs manualmente o eliminar las que ya no supongan una amenaza. Además, puedes configurar listas de IPs permitidas (whitelist) para asegurarte de que nunca se bloqueen direcciones importantes, como las de tu propia oficina o las de servicios externos que uses habitualmente.
Sincronizar CSF con las reglas de Plesk
CSF tiene una función especial que lee las reglas de Plesk y las aplica automáticamente al firewall. Esto significa que si creas un dominio nuevo o cambias los puertos de un servicio desde Plesk, CSF se actualizará solo para reflejar esos cambios. Esta sincronización se realiza a través del script /usr/local/csf/csfpost.sh, que se ejecuta cada vez que se reinicia el firewall.
Para asegurarte de que la sincronización funciona correctamente, verifica que el archivo /etc/csf/csf.pignore incluye las rutas de los procesos de Plesk. Esto evita que CSF bloquee procesos legítimos del panel. En la mayoría de los casos, la instalación ya configura esto automáticamente, pero es bueno revisarlo.
Configuración avanzada de seguridad con CSF
Una vez que CSF está funcionando correctamente en tu servidor Plesk, es hora de exprimir al máximo sus capacidades de seguridad. Aquí te muestro algunas configuraciones avanzadas que marcarán una gran diferencia en la protección de tu servidor.
Protección contra fuerza bruta con LFD
El demonio LFD (Login Failure Daemon) es el corazón inteligente de CSF. Se ejecuta en segundo plano y monitoriza continuamente los logs del sistema en busca de patrones de ataque. Por ejemplo, si detecta múltiples intentos fallidos de conexión SSH desde la misma IP en un corto período de tiempo, bloqueará automáticamente esa IP.
Para configurar LFD, ve al archivo /etc/csf/csf.conf y busca las siguientes opciones:
LF_SSH_ALERT = "1": Activa las alertas por correo electrónico cuando detecta ataques SSH.LF_SSH_PERM = "3": Número de intentos fallidos permitidos antes de bloquear la IP.LF_SSH_INTERVAL = "600": Período de tiempo (en segundos) en el que se cuentan los intentos.LF_BLOCKTIME = "1800": Tiempo (en segundos) que estará bloqueada la IP.
Un buen punto de partida es permitir 5 intentos fallidos en 10 minutos y bloquear la IP durante 30 minutos. Esto es suficientemente estricto para detener ataques, pero no tan agresivo como para bloquear a usuarios legítimos que se equivocan al escribir su contraseña.
Configurar alertas por correo electrónico
CSF puede enviarte notificaciones por correo electrónico cuando ocurren eventos importantes, como bloqueos de IP o intentos de ataque. Para configurar esto, busca la opción LF_ALERT_TO en el archivo de configuración y añade tu dirección de correo electrónico:
LF_ALERT_TO = "tu-email@dominio.com"
También puedes configurar alertas separadas para eventos específicos, como LF_SSH_ALERT para ataques SSH o LF_HTTP_ALERT para ataques al servidor web. Estas alertas te permitirán estar al tanto de lo que ocurre en tu servidor sin tener que revisar los logs manualmente.
Protección adicional con Mod_Security
Si tu servidor Plesk tiene Apache o Nginx como servidor web, puedes combinar CSF con Mod_Security para añadir una capa extra de protección a nivel de aplicación. Mod_Security actúa como un firewall de aplicaciones web (WAF) que filtra las peticiones HTTP y bloquea ataques como inyecciones SQL, cross-site scripting (XSS) y otros tipos de vulnerabilidades.
Plesk tiene una extensión para Mod_Security que puedes instalar fácilmente desde el panel. Una vez instalada, puedes configurar las reglas de protección desde Plesk en la sección "Mod_Security". CSF y Mod_Security trabajan juntos: CSF bloquea las IPs maliciosas a nivel de red, mientras que Mod_Security bloquea las peticiones maliciosas a nivel de aplicación.
Resolución de problemas comunes con CSF en Plesk
Aunque CSF es muy estable, es normal que de vez en cuando surjan problemas, especialmente durante la configuración inicial. Aquí te explico cómo resolver los más comunes.
Me he quedado fuera del servidor
Este es el problema más temido cuando se configura un firewall. Si has configurado CSF y de repente no puedes acceder al servidor por SSH o al panel de Plesk, no entres en pánico. Hay varias formas de solucionarlo.
Si tienes acceso al panel de control de tu proveedor de hosting (como SolusVM o KVM), puedes reiniciar el servidor en modo de rescate o acceder a través de un panel web como VNC. Desde ahí, puedes desactivar CSF temporalmente con:
csf -x
Este comando desactiva el firewall sin eliminarlo. Después de recuperar el acceso, revisa la configuración y vuelve a activarlo con csf -e.
Otra opción es configurar una IP de respaldo en el archivo /etc/csf/csf.allow. Añade tu IP actual a este archivo antes de hacer cambios drásticos en la configuración. De esta forma, aunque cometas un error, tu IP nunca será bloqueada.
Los servicios no responden después de activar CSF
Si después de activar CSF algunos servicios dejan de funcionar, como el correo electrónico o el FTP, es probable que los puertos correspondientes no estén abiertos en el firewall. Para solucionarlo, revisa la lista de puertos permitidos en el archivo /etc/csf/csf.conf:
TCP_IN: Puertos de entrada permitidos (por ejemplo, 80, 443, 25, 110, 143, 21).TCP_OUT: Puertos de salida permitidos (por ejemplo, 80, 443, 25, 53).
Asegúrate de que los puertos que usan tus servicios están incluidos en estas listas. Por ejemplo, si usas FTP, necesitas los puertos 20 y 21. Si usas IMAP, necesitas el puerto 143. Después de modificar la configuración, reinicia CSF con csf -r.
CSF no bloquea ciertas direcciones IP
Si has configurado LFD para bloquear IPs después de varios intentos fallidos, pero notas que algunas IPs siguen pasando, puede ser que tengas una regla de excepción en el archivo /etc/csf/csf.ignore. Este archivo contiene IPs que CSF nunca bloqueará. Revisa que no hayas añadido accidentalmente la IP que quieres bloquear.
También puede ser que la IP esté en la lista blanca global de tu proveedor de hosting o en los archivos /etc/csf/csf.allow. Si es así, elimínala de ahí para que CSF pueda bloquearla.
Preguntas frecuentes sobre el firewall CSF en Plesk
¿CSF ralentiza mi servidor?
No, CSF está diseñado para ser muy eficiente y apenas consume recursos del sistema. El demonio LFD se ejecuta en segundo plano y utiliza muy poca CPU y memoria. En servidores con Plesk, el impacto en el rendimiento es prácticamente imperceptible, incluso en servidores con muchos sitios web.
¿Puedo usar CSF si mi servidor usa Syspanel?
Sí, CSF es compatible con cualquier panel de control que use Linux, incluido Syspanel. De hecho, si tienes Syspanel instalado junto con Plesk, puedes gestionar CSF desde cualquiera de los dos paneles. Recuerda que Syspanel usa el puerto 2106 para su acceso web, así que asegúrate de que este puerto esté permitido en el firewall para poder acceder a su interfaz.
¿Qué hago si quiero desactivar CSF por completo?
Si necesitas desactivar CSF temporalmente o de forma permanente, puedes hacerlo fácilmente con los siguientes comandos:
csf -x # Desactiva el firewall temporalmente
csf -e # Reactiva el firewall
Para desactivarlo permanent
