Cómo configurar un cortafuegos (firewall) en cPanel y Plesk para bloquear ataques
¿Por qué necesitas un firewall en tu hosting?
Cuando tienes un sitio web, es como tener una tienda abierta las 24 horas. Todo el mundo puede llamar a tu puerta, pero no todos tienen buenas intenciones. Un firewall (cortafuegos) es ese portero que decide quién entra y quién se queda fuera. Sin él, tu servidor queda expuesto a ataques de fuerza bruta, tráfico malicioso y accesos no autorizados.
Imagina que tu hosting es un edificio. El firewall es la puerta de seguridad con un portero muy estricto que revisa cada visita. Configurarlo correctamente en cPanel o Plesk no es complicado, y te aseguro que marcará la diferencia entre un sitio seguro y uno que pasa más tiempo caído que funcionando.
En esta guía, vamos a explicarte paso a paso cómo configurar un firewall en ambos paneles de control, qué reglas deberías crear para bloquear ataques comunes y cómo mantener tu seguridad servidor al máximo nivel. No necesitas ser un experto en redes, solo seguir las instrucciones con calma.
Conceptos básicos antes de empezar
¿Qué es un firewall de aplicaciones o de servidor?
Un firewall puede funcionar a nivel de red (filtrando paquetes) o a nivel de aplicación (analizando peticiones HTTP). En cPanel y Plesk, normalmente trabajamos con firewalls de red como ConfigServer Security & Firewall (CSF) o el firewall integrado de Plesk. Ambos te permiten definir reglas de acceso basadas en IPs, puertos y protocolos.
¿Qué son los puertos y por qué importan?
Cada servicio de tu servidor (web, correo, FTP, SSH) usa un puerto específico. Por ejemplo:
- Puerto 80: HTTP (web normal)
- Puerto 443: HTTPS (web segura)
- Puerto 21: FTP
- Puerto 22: SSH
- Puerto 25: SMTP (correo saliente)
Si dejas todos los puertos abiertos, estás invitando a los atacantes a probar suerte. El firewall te permite cerrar los que no necesitas y limitar el acceso a los imprescindibles.
¿Qué es una regla de firewall?
Una regla es una instrucción que le dice al firewall: "si viene tráfico de esta IP hacia este puerto, haz esto". Puedes permitir, bloquear o limitar. Las reglas se evalúan en orden, así que la primera que coincida es la que se aplica.
Configurar firewall en cPanel (usando CSF)
Paso 1: Comprobar si CSF está instalado
La mayoría de los proveedores de hosting con cPanel incluyen ConfigServer Security & Firewall. Para verificarlo, accede a tu servidor por SSH (si tienes acceso root) o revisa en WHM.
En la mayoría de los casos, CSF ya viene activo. Para comprobarlo:
- Conéctate por SSH con tu usuario root.
- Escribe el comando:
csf -v - Si te muestra una versión, está instalado. Si no, puedes instalarlo con:
cd /usr/src; wget https://download.configserver.com/csf.tgz; tar -xzf csf.tgz; cd csf; sh install.sh
Paso 2: Acceso a la interfaz de CSF en WHM
Una vez instalado, entra en tu WHM (Web Host Manager) usando tu navegador, normalmente en https://tu-servidor:2087. Busca la sección Plugins y haz clic en ConfigServer Security & Firewall.
Aquí verás varias pestañas. Las más importantes son:
- Firewall Configuration: para reglas globales.
- Firewall Allow/Deny: para IPs específicas.
- Port Settings: para abrir o cerrar puertos.
Paso 3: Reglas básicas para bloquear ataques
3.1 Bloquear IPs maliciosas manualmente
Si detectas una IP que está intentando acceder repetidamente o que ves en los logs con comportamientos sospechosos, puedes bloquearla directamente:
- Ve a Firewall Allow/Deny.
- En el campo Quick Deny IP, escribe la IP que quieres bloquear.
- Haz clic en Quick Deny.
- La IP quedará añadida a la lista de denegadas y se aplicará automáticamente.
[!TIP]
Puedes bloquear rangos completos usando la notación CIDR, por ejemplo:192.168.1.0/24. Esto bloquea todas las IPs desde 192.168.1.0 hasta 192.168.1.255.
3.2 Configurar límites de conexiones (protección contra fuerza bruta)
CSF incluye un sistema llamado LF (Login Failure) que detecta intentos fallidos de acceso. Para configurarlo:
- Ve a Firewall Configuration.
- Busca la sección Login Failure Detection.
- Ajusta los siguientes valores:
LF_SSH_PERM= 3 (permitir 3 intentos fallidos de SSH antes de bloquear)LF_SSH_BLOCK_TIME= 600 (bloquear durante 600 segundos)LF_FTP_PERM= 3LF_CPANEL_PERM= 3 (protege el acceso a cPanel)
- Guarda los cambios.
[!WARNING]
No establezcas valores demasiado bajos (como 1 intento) porque podrías bloquearte a ti mismo si te equivocas al escribir la contraseña. Un valor de 3 a 5 intentos es razonable.
3.3 Cerrar puertos innecesarios
Revisa qué puertos tienes abiertos y cierra los que no uses. En Port Settings verás la lista de puertos permitidos. Por defecto, CSF permite los más comunes.
Para cerrar un puerto:
- Ve a Port Settings.
- En la sección TCP_IN (puertos de entrada), elimina los que no necesites.
- Por ejemplo, si no usas FTP, elimina el puerto 21.
- Guarda los cambios y reinicia el firewall con
csf -ren la terminal.
[!INFO]
No cierres puertos como 80 y 443, o tu web dejará de funcionar. Tampoco cierres el 22 si accedes por SSH, a menos que tengas una VPN configurada.
Paso 4: Activar el modo de prueba
CSF tiene un modo de prueba que te permite ver qué reglas se aplicarían sin bloquear nada realmente. Es útil para evitar errores.
- En Firewall Configuration, busca
TESTINGy ponlo en1. - Guarda los cambios.
- Observa los logs durante unas horas.
- Cuando estés seguro de que todo funciona, pon
TESTINGen0.
Configurar firewall en Plesk
Paso 1: Acceder al firewall de Plesk
Plesk incluye un firewall integrado muy visual y fácil de usar. Para acceder:
- Entra en tu panel de Plesk (normalmente en
https://tu-servidor:8443). - Ve a Herramientas y Configuración.
- En la sección Seguridad, haz clic en Firewall.
Paso 2: Activar el firewall
Si es la primera vez, verás que está desactivado. Haz clic en Activar para encenderlo. Plesk aplicará automáticamente una política por defecto que permite el tráfico web y bloquea el resto.
Paso 3: Crear reglas personalizadas
Para bloquear ataques específicos, puedes crear reglas personalizadas:
- Haz clic en Agregar regla.
- Elige el Protocolo (TCP, UDP o ambos).
- Introduce el puerto o rango de puertos (por ejemplo, 22 para SSH).
- En Dirección IP, puedes especificar una IP o dejar el campo vacío para todas.
- Selecciona Bloquear como acción.
- Dale un nombre descriptivo, como "Bloquear IP atacante".
- Guarda la regla.
Paso 4: Usar la protección integrada contra ataques DDoS
Plesk tiene un módulo llamado Protección contra DDoS que puedes activar desde la misma sección de Firewall. Este módulo detecta patrones anómalos de tráfico y bloquea automáticamente al atacante.
- Ve a Herramientas y Configuración.
- Busca Protección contra DDoS.
- Actívala y elige el nivel de sensibilidad (bajo, medio, alto).
- Si tu servidor recibe mucho tráfico legítimo, usa un nivel medio para evitar falsos positivos.
Paso 5: Monitorear los registros
Plesk guarda un registro de todos los eventos del firewall. Puedes consultarlo en Herramientas y Configuración > Registro del Firewall. Revisa periódicamente qué IPs se están bloqueando y si hay patrones sospechosos.
[!TIP]
Si ves muchas peticiones desde la misma IP en el registro, es probable que sea un ataque. Añade esa IP a la lista negra directamente desde el registro con un clic.
Estrategias avanzadas para proteger tu hosting
1. Bloquear países completos (geo-bloqueo)
Si tu web solo sirve a usuarios en España, ¿por qué permitir conexiones desde otros países? Tanto CSF como el firewall de Plesk permiten bloquear países enteros.
En CSF:
- Edita el archivo
/etc/csf/csf.allowy/etc/csf/csf.deny. - Añade los códigos de país (ISO 3166) en la sección
DENY_COUNTRY. - Por ejemplo:
DENY_COUNTRY = "CN, RU, BR"
En Plesk:
- Ve a Firewall > Geo-blocking.
- Selecciona los países que quieres bloquear.
- Guarda los cambios.
[!WARNING]
Ten cuidado con el geo-bloqueo. Si usas servicios de terceros (como Google Analytics o CDNs) que se conectan desde otros países, podrías bloquearlos. Haz pruebas antes de aplicar.
2. Configurar un límite de conexiones simultáneas
Los ataques DDoS se basan en abrir miles de conexiones a la vez. Puedes limitar las conexiones simultáneas por IP:
En CSF:
- Edita
/etc/csf/csf.conf. - Busca
CONNLIMITy añade algo como:CONNLIMIT = "80:20,443:20,22:5". - Esto permite 20 conexiones simultáneas en el puerto 80 y 443, y solo 5 en SSH.
En Plesk:
- Ve a Firewall > Configuración avanzada.
- Define un límite de conexiones por IP en los puertos web.
3. Mantener el firewall actualizado
Las reglas y las listas de IPs maliciosas cambian constantemente. En CSF, puedes usar la función de actualización automática:
- Edita
csf.confy buscaAUTO_UPDATES. - Pon
AUTO_UPDATES = "1"para que CSF descargue listas de IPs bloqueadas actualizadas.
En Plesk, el firewall se actualiza con las actualizaciones del sistema, así que asegúrate de tener las actualizaciones automáticas activadas.
4. Combinar el firewall con otras herramientas de seguridad
Un firewall no es una solución mágica. Debe combinarse con:
- ModSecurity (para protección a nivel de aplicación web).
- ClamAV (antivirus).
- Backups periódicos.
- Autenticación en dos pasos para accesos al panel.
Preguntas frecuentes (FAQ)
¿Puedo bloquear mi propia IP por error?
Sí, es posible. Si te bloqueas, accede al servidor por SSH desde otra conexión (por ejemplo, con el móvil) y elimina la regla. En CSF, puedes editar directamente el archivo /etc/csf/csf.deny y reiniciar con csf -r. En Plesk, entra por SSH y usa el comando plesk sbin firewallctl --remove-rule.
¿El firewall afecta al rendimiento de mi web?
En general, no. Las reglas se evalúan en milisegundos y el impacto es mínimo. Eso sí, si creas cientos de reglas complejas, puede haber una pequeña latencia. Mantén las reglas limpias y revisa periódicamente las que ya no necesitas.
¿Debo usar CSF o el firewall de Plesk?
Depende de tu panel. Si usas cPanel, CSF es el estándar de facto. Si usas Plesk, su firewall integrado es suficiente para la mayoría de casos. No necesitas ambos, ya que podrían entrar en conflicto.
¿Qué hago si mi sitio recibe un ataque DDoS?
Primero, mantén la calma. Activa la protección contra DDoS de tu firewall y contacta con tu proveedor de hosting. Ellos pueden aplicar mitigación a nivel de red. No intentes bloquear manualmente miles de IPs, porque perderás tiempo y no solucionarás nada.
¿Cada cuánto debo revisar el firewall?
Te recomiendo una revisión mensual. Comprueba los logs, elimina reglas obsoletas, actualiza las listas de IPs y verifica que los servicios siguen funcionando correctamente.
Conclusión
Configurar un firewall en cPanel o Plesk es una de las tareas más importantes para proteger hosting y garantizar la seguridad servidor. No necesitas ser un experto, solo seguir los pasos que te hemos dado y mantener una rutina de revisión.
Recuerda que un firewall no es infalible, pero es tu primera línea de defensa contra ataques. Combínalo con buenas prácticas de seguridad, contraseñas robustas y actualizaciones constantes, y tendrás un servidor mucho más difícil de vulnerar.
Si te surge cualquier duda, revisa la documentación oficial de tu panel o contacta con tu proveedor de hosting. Ellos están para ayudarte, y una configuración correcta del firewall es algo que agradecerás cuando veas un intento de ataque bloqueado en los logs.
[!TIP]
Guarda esta guía en tus marcadores. Cada vez que configures un servidor nuevo, repasa estos pasos y tendrás una base sólida de seguridad desde el primer día.
