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

Cómo configurar un cortafuegos de aplicación web (WAF) en WordPress

Actualizado el 4 de junio de 2026

¿Qué es un WAF y por qué tu WordPress lo necesita?

Si tienes una web con WordPress, seguramente has oído hablar de ataques como inyecciones SQL, fuerza bruta o malware. Un WAF WordPress (firewall de aplicación web) actúa como un portero de discoteca: analiza cada persona (solicitud) que quiere entrar, comprueba si lleva algo peligroso y decide si puede pasar o no.

Sin un firewall aplicación web WordPress, tu sitio está expuesto a miles de intentos de ataque automatizados cada día. No es un tema de "si me atacan", sino de "cuándo me atacan". Un WAF filtra el tráfico malicioso antes de que llegue a tu servidor, bloqueando bots, inyecciones de código y accesos no autorizados.

En esta guía extensa y práctica, te voy a enseñar cómo configurar un WAF en WordPress desde cero, con opciones tanto para principiantes como para usuarios más avanzados. No necesitas ser un hacker ni un ingeniero de sistemas: solo seguir los pasos con calma.

¿Cómo funciona un firewall de aplicación web?

Un WAF WordPress se sitúa entre el visitante y tu servidor. Analiza cada petición HTTP/HTTPS y aplica reglas de seguridad predefinidas. Por ejemplo:

  • Bloquea direcciones IP sospechosas o conocidas por ataques.

  • Filtra peticiones que contengan código malicioso (SQL, XSS, etc.).

  • Limita la velocidad de peticiones para evitar fuerza bruta en el login.

  • Detecta y bloquea bots maliciosos.

Piénsalo como un filtro de agua: el agua entra turbia (tráfico malicioso) y sale limpia (solo peticiones legítimas). Sin el filtro, todo llega a tu WordPress, que es vulnerable por naturaleza si no está bien asegurado.

Tipos de WAF: DNS, servidor o plugin

Antes de configurar nada, debes saber que existen tres formas principales de implementar un firewall aplicación web WordPress:

  1. WAF basado en DNS: Se configura a nivel de dominio (como Cloudflare). Todo el tráfico pasa por sus servidores antes de llegar al tuyo. Es el más eficaz porque bloquea antes de consumir recursos.

  2. WAF a nivel de servidor: Se instala en tu servidor (como ModSecurity). Más técnico, pero muy potente.

  3. WAF como plugin de WordPress: Se ejecuta dentro de tu sitio (como Wordfence o Sucuri). Fácil de instalar, pero consume recursos del servidor.

En esta guía, te explicaré las tres opciones, pero haré hincapié en las más accesibles para no expertos.

Requisitos previos antes de instalar un WAF

Antes de empezar, asegúrate de tener:

  • Acceso al panel de administración de WordPress.

  • Acceso al panel de control de tu hosting (cPanel, Plesk o similar).

  • Si usas Syspanel (anteriormente HestiaCP), recuerda que el acceso es por el puerto 2106 (por ejemplo, https://tu-servidor:2106). Este panel es muy común en VPS y servidores dedicados, y desde él podrás gestionar dominios, certificados SSL y bases de datos.

[WARNING] Si no sabes qué panel usa tu hosting, contacta con tu proveedor. No intentes adivinar puertos ni contraseñas, podrías bloquear tu propio acceso.

Opción 1: Configurar un WAF con Cloudflare (recomendada para principiantes)

Cloudflare es el servicio más popular de WAF WordPress basado en DNS. Tiene un plan gratuito muy completo y su configuración es sencilla. Además, mejora la velocidad de carga gracias a su CDN.

Paso 1: Crear una cuenta en Cloudflare

Ve a cloudflare.com y regístrate con tu correo. Una vez dentro, haz clic en "Add a site" (Añadir sitio) e introduce tu dominio (por ejemplo, mipagina.com). Cloudflare escaneará tu DNS automáticamente.

Paso 2: Cambiar los servidores DNS de tu dominio

Cloudflare te dará dos servidores DNS (algo como ana.ns.cloudflare.com y bob.ns.cloudflare.com). Debes ir a tu registrador de dominios (donde compraste el dominio) y sustituir los DNS actuales por estos.

Esto puede tardar entre 5 minutos y 24 horas en propagarse. Cloudflare te avisará cuando esté activo.

Paso 3: Activar el firewall básico

Una vez activo, ve al panel de Cloudflare y sigue esta ruta:

  1. Haz clic en Security (Seguridad) en el menú superior.

  2. Selecciona WAF.

  3. Activa el Managed Ruleset (conjunto de reglas gestionadas). Esto aplica reglas automáticas contra inyecciones SQL, XSS y otros ataques comunes.

Cloudflare tiene reglas preconfiguradas que se actualizan automáticamente. Para la mayoría de sitios, esto es suficiente.

Paso 4: Reglas personalizadas (opcional pero recomendado)

Puedes crear reglas personalizadas para, por ejemplo, bloquear países concretos o proteger el panel de login:

  • Ve a Security > WAF > Custom rules.

  • Crea una regla que bloquee IPs de países con alta tasa de ataques (si solo vendes en España, puedes bloquear otros países).

  • Otra regla útil: "Challenge" (desafío) para peticiones que vayan a /wp-login.php desde IPs desconocidas. Así, los bots reciben un reto CAPTCHA.

[TIP] No bloquees países enteros a la ligera, podrías perder clientes legítimos. Usa el modo "Challenge" en lugar de "Block" para no perjudicar la experiencia de usuario.

Opción 2: Usar un plugin de WAF (Wordfence o Sucuri)

Si no quieres cambiar tus DNS o prefieres algo más integrado, los plugins son una excelente opción. El más completo es Wordfence Security, con su firewall aplicación web WordPress integrado.

Instalación de Wordfence

  1. En tu WordPress, ve a Plugins > Añadir nuevo.

  2. Busca "Wordfence Security".

  3. Instálalo y actívalo.

Configuración del firewall en Wordfence

Tras activarlo, Wordfence te pedirá una clave de licencia (puedes usar la gratuita). Luego, ve a Wordfence > Firewall y sigue estos pasos:

  1. Haz clic en "Manage WAF" (Gestionar WAF).

  2. Activa el firewall. Wordfence te pedirá que configures el modo "Extended Protection" (Protección Extendida), que modifica el archivo .htaccess para filtrar el tráfico antes de que cargue WordPress. Acepta los cambios.

  3. En "Rate Limiting" (Limitación de velocidad), marca la opción para limitar intentos de login a 5 por minuto. Esto bloquea la fuerza bruta.

  4. En "Country Blocking" (Bloqueo por país), puedes bloquear países no deseados.

Reglas avanzadas de Wordfence

Wordfence tiene una base de datos de reglas actualizada constantemente. Ve a Wordfence > All Options y asegúrate de que:

  • "Enable firewall" está activado.

  • "Block malicious requests" está marcado.

  • "Immediately block IPs that exceed" está en un valor bajo (por ejemplo, 100 peticiones por minuto).

[INFO] Wordfence consume recursos del servidor. Si tu hosting es muy limitado (1GB de RAM), considera usar Cloudflare para el WAF y desactivar las funciones más pesadas de Wordfence, como el escaneo en tiempo real.

Opción 3: WAF a nivel de servidor con ModSecurity

Si tienes un VPS o servidor dedicado y te manejas con soltura, puedes instalar ModSecurity. Es el estándar de firewall aplicación web WordPress a nivel de servidor. Funciona junto a Apache o Nginx.

Pasos para instalar ModSecurity en un servidor con Syspanel

Si tu servidor usa Syspanel (acceso por puerto 2106), puedes ejecutar comandos SSH. Estos son los pasos básicos para Ubuntu/Debian:

  1. Conéctate por SSH a tu servidor.

  2. Ejecuta: sudo apt update && sudo apt install libapache2-mod-security2 -y.

  3. Habilita el módulo: sudo a2enmod security2.

  4. Reinicia Apache: sudo systemctl restart apache2.

ModSecurity viene con un archivo de configuración básico. Para activar reglas potentes, necesitas instalar el OWASP Core Rule Set (CRS). Descárgalo desde GitHub y configura las reglas:

cd /etc/modsecurity/
sudo git clone https://github.com/coreruleset/coreruleset.git
sudo mv coreruleset /usr/share/modsecurity-crs

Luego, edita el archivo modsecurity.conf y activa las reglas. Este proceso es técnico, así que si no te sientes cómodo, mejor opta por Cloudflare o un plugin.

[WARNING] ModSecurity mal configurado puede bloquear tráfico legítimo, como formularios de contacto o plugins de pago. Haz pruebas exhaustivas y revisa los logs (/var/log/apache2/error.log) ante cualquier fallo.

Comparativa rápida de las 3 opciones

MétodoDificultadEficaciaConsumo de recursosCoste
Cloudflare (DNS)BajaMuy altaCero (en tu servidor)Gratis / Pago
Plugin (Wordfence)BajaAltaMedio-altoGratis / Pago
ModSecurity (Servidor)AltaMuy altaBajoGratis

Configuración adicional para reforzar tu WAF

Un WAF WordPress no es una bala de plata. Debes combinarlo con buenas prácticas de seguridad. Aquí tienes una checklist rápida:

  • Cambia la URL de login: Usa plugins como WPS Hide Login para que /wp-login.php no sea accesible.

  • Activa la autenticación de dos factores (2FA): Wordfence lo incluye, o usa plugins como Google Authenticator.

  • Mantén todo actualizado: WordPress, plugins y temas. Las vulnerabilidades se corrigen con actualizaciones.

  • Haz copias de seguridad diarias: Si te atacan, podrás restaurar rápido.

  • Desactiva la edición de archivos desde el panel: Añade define('DISALLOW_FILE_EDIT', true); a tu wp-config.php.

  • Usa certificado SSL: Un WAF no protege datos en tránsito. Activa HTTPS desde Syspanel (puerto 2106) o tu hosting.

¿Qué pasa si me atacan a pesar del WAF?

Si a pesar del firewall aplicación web WordPress notas actividad extraña (carga lenta, archivos nuevos, usuarios desconocidos), actúa rápido:

  1. Cambia todas las contraseñas (WordPress, FTP, base de datos).

  2. Revisa los logs de Cloudflare o Wordfence para ver qué IP atacó.

  3. Restaura la copia de seguridad más reciente y limpia.

  4. Contacta con tu hosting para que revisen el servidor a nivel de sistema.

Preguntas frecuentes (FAQ)

¿Un WAF afecta al rendimiento de mi web?

Cloudflare, al ser DNS, no afecta a tu servidor. Los plugins sí pueden ralentizar, pero con una buena configuración (como limitar el escaneo a horarios concretos) el impacto es mínimo.

¿Puedo usar Cloudflare y Wordfence a la vez?

Sí, pero debes configurarlos para que no se pisen. Por ejemplo, en Wordfence, desactiva el bloqueo por país si ya lo haces en Cloudflare. La combinación es muy segura.

¿Qué hago si mi hosting es muy básico?

Usa Cloudflare en su plan gratuito. Es el WAF WordPress más eficiente sin tocar el servidor. Además, te ahorrará ancho de banda.

¿Cómo sé si mi WAF está funcionando?

Puedes probar con una herramienta como curl desde tu ordenador: curl -X POST http://tuweb.com/wp-login.php y ver si recibes un reto o bloqueo. También puedes usar el escáner de seguridad de Wordfence.

¿Es necesario contratar un WAF de pago?

Para sitios de alto tráfico o tiendas online, sí. Los planes de pago de Cloudflare o Sucuri ofrecen reglas más avanzadas, mitigación de DDoS y soporte prioritario. Para blogs pequeños, el plan gratuito es suficiente.

Conclusión: el WAF no es opcional, es imprescindible

Configurar un WAF WordPress es una de las mejores inversiones de tiempo que puedes hacer por tu web. No importa si eliges Cloudflare, un plugin o ModSecurity: lo importante es que lo hagas hoy mismo. Los ataques automatizados no descansan, y un solo descuido puede costarte semanas de trabajo.

Empieza por la opción más cómoda para ti, pruébala y luego ve refinando. La seguridad web es un proceso continuo, no un destino. Ahora que ya sabes cómo hacerlo, ve a proteger tu WordPress.

¿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