BLOG · 2026-06-01
Cómo configurar Cloudflare gratis para WordPress (paso a paso, 15 minutos)
Cloudflare es la diferencia entre tu web cayéndose en un ataque DDoS y tu web sin enterarse. Y es gratis. Aquí va la configuración exacta para WordPress, sin paja.
¿Qué es Cloudflare y por qué lo necesitas?
Cloudflare es un CDN + WAF que se pone entre tu web y el resto de internet. Cuando alguien pide tu web, no llega a tu servidor — llega primero a Cloudflare. Cloudflare decide si dejarle pasar, enseñarle una versión cacheada, presentarle un captcha, o devolverle un 403.
El plan gratis es muy generoso: incluye CDN global, SSL gratis con renovación automática, protección DDoS ilimitada, firewall básico y caché de estáticos. Cosas que valdrían cientos de euros/mes en un proveedor especializado.
Para una web WordPress típica de PYME, Cloudflare gratis cubre el 90% de lo que necesitas en CDN/seguridad. Y los 15 minutos que tardas en activarlo te ahorran horas de limpieza el día que un bot te encuentra.
Antes de empezar
Necesitas:
- Tu dominio (ej:
tunegocio.es) - Acceso al panel de tu registrador de dominio (donde compraste el dominio: DonDominio, Namecheap, GoDaddy, IONOS, etc.) para cambiar los nameservers
- Acceso a tu hosting para activar cosas básicas (5 min)
NO necesitas tocar nada del WordPress en sí. Cloudflare es transparente para WP.
Paso 1: Crear cuenta y añadir tu dominio (2 min)
- Entra en dash.cloudflare.com/sign-up y crea cuenta gratis con tu email.
- Pulsa "Add a site", escribe tu dominio sin
wwwnihttps://(solotunegocio.es). - Cloudflare te pide elegir plan. Pulsa "Free" (al final de la página, no es muy visible).
- Cloudflare escanea tus DNS records actuales y los importa solos. Revisa que están todos (sobre todo el registro
Ade la raíz y elwww).
Paso 2: Cambiar nameservers en tu registrador (3 min)
Cloudflare te muestra 2 nameservers como maya.ns.cloudflare.com y jim.ns.cloudflare.com.
Cópialos.
Ve al panel de tu registrador de dominio (donde compraste el dominio, NO en tu hosting si son diferentes). Busca "DNS settings" o "Nameservers" o "Servidores de nombres". Cambia los nameservers actuales por los 2 de Cloudflare.
Pulsa "Done" en Cloudflare. Te dirá "Pending nameserver update" y enviará un email cuando detecte el cambio. Tarda entre 5 min y 24 horas, normalmente menos de 1h. Tu web no se cae durante este tiempo.
Paso 3: SSL en modo Full (Strict) (1 min)
En cuanto Cloudflare detecte tus nameservers nuevos, ve a SSL/TLS → Overview y selecciona:
- Full (Strict) si tu hosting ya tiene SSL Let's Encrypt válido (lo tiene Plesk por defecto)
- Full si no estás seguro (sirve igual, valida menos)
- NUNCA uses "Flexible" — es inseguro porque deja la conexión Cloudflare↔origen en HTTP plano
Luego ve a SSL/TLS → Edge Certificates y activa:
- Always Use HTTPS: ON — redirige todo el HTTP a HTTPS automáticamente
- Automatic HTTPS Rewrites: ON — arregla los enlaces internos http:// del WP
- Minimum TLS Version: 1.2 (1.3 si quieres ser estricto y no te importan navegadores antiguos)
Paso 4: Reglas anti-bot esenciales (5 min)
Ve a Security → WAF → Custom rules. Crea estas 3 reglas (todas con Action: Block):
Regla 1: Bloquear wp-login.php por país
Si tu negocio es local (España), el 99% de los intentos de login a tu WP desde otros países son ataques. Bloquea por geografía:
Field: URI Path
Operator: contains
Value: /wp-login.php
AND
Field: Country
Operator: is not in
Value: ES, PT, AD
(Añade los países donde tú o tu equipo de verdad necesitéis entrar.)
Regla 2: Bloquear XML-RPC entero
XML-RPC es un endpoint legacy de WP que sirve para casi nada útil y mucha mierda (brute force amplificado, pingback DDoS).
Field: URI Path
Operator: equals
Value: /xmlrpc.php
Regla 3: Bloquear escaneos de configuración expuesta
Bloquea bots que prueban paths típicos de info exposure:
Field: URI Path
Operator: matches regex
Value: \.(env|git|sql|bak|swp|old|tar|zip)$|/(wp-config|\.git/|\.env|phpinfo)
Si quieres ser menos agresivo al principio, pon Action: Managed Challenge en lugar de Block — Cloudflare presenta un captcha en vez de un 403.
Paso 5: Caché y velocidad (2 min)
Ve a Caching → Configuration:
- Caching Level: Standard
- Browser Cache TTL: 4 hours (puedes subir a 1 day si tu web es mayormente estática)
Ve a Speed → Optimization y activa:
- Auto Minify: HTML + CSS + JS (a menos que ya uses un plugin como WP-Rocket que minifica)
- Brotli: ON
- Early Hints: ON
Paso 6: Page Rules para wp-admin (1 min)
Cloudflare cachea recursos estáticos por defecto pero no PHP. Aun así conviene asegurarse de que
wp-admin y wp-login nunca se cacheen:
Ve a Rules → Page Rules (en el plan gratis tienes 3 reglas):
URL: *tunegocio.es/wp-admin/*
Settings: Cache Level = Bypass, Disable Performance, Disable Apps
URL: *tunegocio.es/wp-login.php
Settings: Cache Level = Bypass, Security Level = High
Paso 7: HTTP/3 + 0-RTT (1 min)
En Network:
- HTTP/3 (with QUIC): ON
- 0-RTT Connection Resumption: ON
- WebSockets: ON si usas algún plugin que lo necesite (lo dejas por defecto si no sabes)
Verificación final
Abre https://tunegocio.es y revisa:
- El candado verde aparece (SSL OK)
- En DevTools del navegador → Network → cualquier petición → Headers: deberías ver
cf-ray: ...yserver: cloudflare - Intenta entrar a
tunegocio.es/xmlrpc.php→ debería darte 403 (regla 2 activa)
Si todo está bien, has terminado. Tu web ahora está detrás de la red más grande del mundo y te has ahorrado el equivalente a un plan de 200€/mes en seguridad.
Lo que SÍ debes seguir teniendo en el WordPress
Cloudflare gratis para bots y DDoS. Pero NO sustituye la seguridad dentro de tu WP:
- Si un atacante consigue subir un archivo PHP a
/uploads/(vía un plugin con vulnerabilidad), Cloudflare no lo va a detectar - Si te pillan la contraseña de admin desde la red local de un cliente, Cloudflare no se entera
- Si tu wp-config.php tiene una vulnerabilidad lógica, Cloudflare no la ve
Para eso necesitas un File Integrity Monitor dentro del WP que escanee los archivos, alerte de cambios sospechosos, y ponga en cuarentena malware automáticamente. Hablamos exactamente de eso en este otro post sobre auto-mitigation.
El plugin NUDAYOSH Security hace eso gratis: detecta malware en uploads, bloquea IPs por brute force, aplica hardening con un click. Combinarlo con Cloudflare cubre el 99% de los ataques típicos a WordPress.
Stack recomendado
Cloudflare gratis (perimetral) + NUDAYOSH Security plugin (dentro del WP) + hardening one-click. Cero euros, 15 minutos. Mejor que la mayoría de planes de 50€/mes.
