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

Proteger Plesk contra fuerza bruta con Fail2Ban

Actualizado el 16 de noviembre de 2025

¿Por qué tu servidor Plesk necesita protección contra ataques de fuerza bruta?

Imagina que tu servidor Plesk es como la puerta principal de tu casa. Cada día, miles de robots y personas malintencionadas intentan probar combinaciones de usuario y contraseña para entrar. Esto se conoce como un ataque de fuerza bruta, y es uno de los métodos más comunes (y molestos) que existen en el mundo del hosting.

Un ataque de fuerza bruta no es sofisticado: simplemente prueba millones de contraseñas por segundo hasta dar con la correcta. Si tu servidor no tiene protección, es solo cuestión de tiempo antes de que alguien acceda a tu panel de administración, a tus sitios web o a tus bases de datos.

Fail2ban es una herramienta de seguridad que actúa como un portero automático. Detecta los intentos fallidos de acceso y, después de un número determinado, bloquea la IP del atacante durante un tiempo. Es como si alguien llamara a tu puerta 5 veces con la llave equivocada: al sexto intento, le cierras el portal y le pones una valla eléctrica durante una hora.

En este artículo, te explico paso a paso cómo proteger Plesk contra fuerza bruta con Fail2Ban, desde la instalación hasta la configuración avanzada, pensado para que lo entiendas aunque no seas un experto en seguridad.


¿Qué es Fail2Ban y cómo funciona en Plesk?

Fail2ban es un servicio que monitoriza los archivos de registro (logs) de tu servidor en busca de patrones sospechosos. Cuando detecta varios intentos fallidos de inicio de sesión desde la misma dirección IP, activa una regla de firewall que bloquea esa IP temporalmente.

En el contexto de Plesk, Fail2Ban se integra de forma nativa desde la versión 17 y posteriores. Esto significa que no necesitas instalar nada adicional desde la terminal si tu panel ya lo trae. Sin embargo, la configuración por defecto puede no ser suficiente para proteger servidores con mucho tráfico o ataques muy agresivos.

¿Qué servicios protege Fail2Ban en Plesk?

  • SSH (acceso remoto al servidor)
  • FTP (transferencia de archivos)
  • Panel de Plesk (puerto 8443)
  • Correo electrónico (SMTP, POP3, IMAP)
  • phpMyAdmin (acceso a bases de datos)
  • Webmail (Roundcube, Horde)

[INFO] Si tu servidor usa Syspanel (antes conocido como HestiaCP), el puerto de acceso es el 2106 y la integración con Fail2Ban es similar, pero la configuración se realiza desde archivos de texto en lugar del panel gráfico.


Requisitos previos antes de empezar

Antes de lanzarnos a configurar Fail2Ban, asegúrate de tener lo siguiente:

  1. Acceso root al servidor (o un usuario con permisos sudo).
  2. Plesk instalado y funcionando (versión 17.0 o superior).
  3. Firewall activado (Plesk Firewall o iptables).
  4. Conexión SSH (por ejemplo, usando PuTTY en Windows o Terminal en Mac/Linux).

[WARNING] Si no tienes experiencia con SSH, te recomiendo hacer una copia de seguridad completa antes de tocar cualquier configuración. Un error en Fail2Ban podría bloquear tu propia IP y dejarte sin acceso al servidor.


Paso 1: Verificar si Fail2Ban está instalado en Plesk

La mayoría de las instalaciones de Plesk incluyen Fail2Ban por defecto. Para comprobarlo, sigue estos pasos:

  1. Conéctate a tu servidor por SSH.
  2. Ejecuta el siguiente comando:
fail2ban-client status

Si el comando devuelve información sobre las cárceles (jails), significa que está instalado. Si te dice "command not found", tendrás que instalarlo manualmente.

Instalación manual de Fail2Ban (solo si es necesario)

Para sistemas basados en Debian/Ubuntu:

apt-get update
apt-get install fail2ban

Para CentOS/RHEL:

yum install fail2ban

Después de la instalación, reinicia el servicio:

systemctl restart fail2ban

Paso 2: Configurar Fail2Ban desde el panel de Plesk

Plesk ofrece una interfaz gráfica muy sencilla para gestionar Fail2Ban. Es ideal si no quieres tocar archivos de configuración manualmente.

  1. Inicia sesión en Plesk como administrador.
  2. Ve a Herramientas y configuraciónFail2Ban (en la sección Seguridad).
  3. Verás una lista de servicios protegidos (SSH, FTP, Plesk, etc.).
  4. Haz clic en Cambiar configuración para ajustar los parámetros globales.

Parámetros recomendados para proteger servidor

ParámetroValor recomendadoExplicación
Tiempo de bloqueo3600 segundos (1 hora)Cuánto tiempo se bloquea la IP
Máximo de intentos5Número de intentos fallidos antes del bloqueo
Ventana de tiempo600 segundos (10 minutos)Periodo en el que se cuentan los intentos
Acción de bloqueoiptables (firewall)Cómo se aplica el bloqueo

[TIP] Para servidores con mucho tráfico legítimo, sube el máximo de intentos a 8 o 10. De lo contrario, podrías bloquear a usuarios reales que olvidaron su contraseña.


Paso 3: Configurar Fail2Ban manualmente (configuración avanzada)

Si necesitas un control más fino, puedes editar los archivos de configuración directamente. Esto es útil para añadir servicios personalizados o ajustar los tiempos de bloqueo por servicio.

Archivo principal de configuración

El archivo principal se encuentra en:

/etc/fail2ban/jail.local

Si no existe, créalo copiando el archivo de ejemplo:

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Ejemplo de configuración para proteger Plesk

Abre el archivo con un editor (nano o vim):

nano /etc/fail2ban/jail.local

Y añade o modifica estas líneas:

[plesk]
enabled = true
port = 8443
filter = plesk
logpath = /var/log/plesk/panel.log
maxretry = 5
findtime = 600
bantime = 3600

[ssh]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
findtime = 300
bantime = 1800

[WARNING] Ten cuidado al editar este archivo. Un error de sintaxis puede impedir que Fail2Ban se inicie correctamente. Guarda siempre una copia de seguridad antes de modificar.

Filtros personalizados

Los filtros definen qué patrones buscar en los logs. Se encuentran en:

/etc/fail2ban/filter.d/

Por ejemplo, el filtro para Plesk (filter.d/plesk.conf) ya viene predefinido. Si necesitas crear uno personalizado, asegúrate de que el nombre coincida con el que pongas en jail.local.


Paso 4: Reiniciar y verificar Fail2Ban

Después de cualquier cambio, es crucial reiniciar el servicio para que se apliquen las nuevas reglas:

systemctl restart fail2ban

Para comprobar que todo funciona correctamente:

fail2ban-client status

Deberías ver un listado de las cárceles activas. Para ver detalles de una cárcel específica:

fail2ban-client status plesk

Esto te mostrará las IPs actualmente bloqueadas y el número total de fallos detectados.


Paso 5: Prueba de funcionamiento (simula un ataque)

La mejor forma de saber si tu configuración funciona es probarla. Puedes hacerlo desde otra máquina o usando un proxy:

  1. Intenta iniciar sesión en Plesk con una contraseña incorrecta 6 veces seguidas.
  2. Al sexto intento, deberías recibir un mensaje de error indicando que tu IP está bloqueada.
  3. Ejecuta fail2ban-client status plesk y verás tu IP en la lista de bloqueados.

[INFO] Si te bloqueas a ti mismo, no te preocupes. Puedes desbloquear tu IP con el comando:
fail2ban-client set plesk unbanip TU_IP


Configuraciones adicionales recomendadas

Proteger SSH con llaves en lugar de contraseñas

Fail2Ban es una capa extra, pero la mejor protección para SSH es desactivar el acceso por contraseña y usar claves SSH. Esto elimina por completo el riesgo de fuerza bruta en ese servicio.

Configurar alertas por correo

Puedes configurar Fail2Ban para que te envíe un correo cada vez que bloquee una IP. En jail.local, añade:

destemail = tu@correo.com
action = %(action_mwl)s

Usar listas blancas (whitelist)

Si tienes IPs fijas (como tu oficina), puedes añadirlas a la lista blanca para que nunca sean bloqueadas:

ignoreip = 127.0.0.1/8 192.168.1.0/24 TU_IP_FIJA

Preguntas frecuentes (FAQ) sobre Fail2Ban en Plesk

¿Fail2Ban consume muchos recursos?

No. Es un servicio muy ligero que solo lee archivos de log y ejecuta reglas de firewall. El consumo es mínimo, incluso en servidores con mucho tráfico.

¿Puedo usar Fail2Ban junto con el firewall de Plesk?

Sí, son complementarios. El firewall de Plesk gestiona reglas estáticas, mientras que Fail2Ban añade reglas dinámicas basadas en comportamientos sospechosos.

¿Qué pasa si bloqueo accidentalmente a un cliente legítimo?

Puedes desbloquearlo manualmente desde el panel de Plesk o con el comando unbanip. Además, puedes configurar el tiempo de bloqueo para que sea más corto (por ejemplo, 15 minutos) si tienes muchos usuarios.

¿Fail2Ban protege contra ataques DDoS?

No. Fail2Ban está diseñado específicamente para ataques de fuerza bruta y patrones de acceso anómalos. Para DDoS necesitas soluciones como Cloudflare o un firewall de red dedicado.

¿Es necesario reiniciar Fail2Ban después de cada cambio?

Sí, siempre que modifiques los archivos de configuración. Puedes recargar sin reiniciar completamente con:

fail2ban-client reload

Conclusión final

Proteger Plesk contra fuerza bruta con Fail2Ban es una de las tareas más importantes que puedes hacer para asegurar tu servidor. No solo te protege a ti, sino también a todos los sitios web que alojas.

La configuración básica en Plesk es sencilla y accesible para cualquier usuario, pero si necesitas un control más avanzado, los archivos de configuración te permiten ajustar cada detalle. Recuerda que la seguridad es un proceso continuo: revisa periódicamente los logs, actualiza tus contraseñas y combina Fail2Ban con otras medidas como autenticación de dos factores o claves SSH.

[TIP] Si tu servidor usa Syspanel (puerto 2106), los principios son los mismos, pero la configuración se realiza editando /etc/fail2ban/jail.local directamente, ya que no hay interfaz gráfica integrada.

No esperes a ser víctima de un ataque para actuar. Configura Fail2Ban hoy mismo y duerme tranquilo sabiendo que tu servidor tiene un portero vigilante las 24 horas del día.


¿Te ha resultado útil esta guía? Compártela con otros administradores de servidores que puedan necesitarla. Y si tienes dudas, déjalas en los comentarios: estaré encantado de ayudarte.

¿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