← Volver al blog

Cloudflare gratis: cómo darle de alta y 5 reglas anti-bots para tu WordPress

Por qué Cloudflare free es brutal, cómo darle de alta paso a paso y 5 reglas WAF que bloquean el 60-70% de los bots maliciosos sin pagar nada.

Por SeoNova · Publicado · 9 min de lectura
Panel de Cloudflare mostrando las estadísticas de Security Events con miles de bots bloqueados al día.
Panel de Cloudflare mostrando las estadísticas de Security Events con miles de bots bloqueados al día.

Si tienes una web sin Cloudflare delante, estás dejando dinero sobre la mesa. Y no me refiero solo a velocidad — me refiero a que el 49,6 % de tu tráfico mundial es bot (Imperva Bad Bot Report 2025) y tu hosting lo está sirviendo TODO.

Cloudflare gratis te lo filtra antes de que toque tu PHP. Hoy te enseño cómo darle de alta + 5 reglas concretas que cualquiera puede activar sin pagar un duro.

Qué es Cloudflare (en una frase)

Es un proxy global (intermediario que se mete entre internet y tu servidor para filtrar y acelerar todo lo que pase) entre internet y tu servidor: cuando alguien visita tu web, primero pasa por Cloudflare. Cloudflare decide qué dejar pasar a tu hosting y qué bloquear.

Como bonus añade CDN (Content Delivery Network — red de servidores repartidos por el mundo que sirven tu web desde el más cercano al visitante), SSL automático, DNS gestionado y protección DDoS (ataques que tiran tu web a base de tráfico bruto desde miles de IPs). Todo eso, gratis.

Glosario rápido antes de seguir

  • CDN — red de servidores que entrega tu web desde el punto más cercano al visitante. Acelera carga + descarga tráfico de tu hosting.
  • POP (Point of Presence) — cada servidor físico de la CDN. Cloudflare tiene 300+ en ciudades repartidas por el mundo.
  • WAF (Web Application Firewall) — filtro inteligente que decide qué peticiones HTTP dejar pasar y cuáles bloquear según reglas.
  • DDoS L3/L4 — tipos de ataque a nivel de red (saturar tu IP con paquetes basura). Cloudflare absorbe estos en su edge.
  • TLS — la capa cifrada que pone la “s” en https://. TLS 1.2 / 1.3 son las versiones modernas y seguras.
  • SPF / DKIM / DMARC — 3 registros DNS que validan que tus emails no son spam y que vienen de verdad de tu dominio.

Lo que Cloudflare YA bloquea sin que toques nada

Antes de meterte con reglas custom, conviene saber qué protección viene activa por defecto en el plan free desde el segundo 1 (en cuanto los nameservers propagan):

1. Ataques DDoS de red (L3/L4) — absorbidos en el edge

Cualquier inundación de tráfico bruto contra tu IP (millones de paquetes por segundo desde botnets) la absorbe Cloudflare en sus 300+ POPs antes de que llegue a tu hosting. No hay que configurar nada. Es la razón por la que sitios pequeños sobreviven ataques que normalmente los tirarían en minutos.

Cloudflare gestiona en su red 63 millones de peticiones HTTP(S) por segundo de media (datos del Radar 2024 Year in Review). Tu sitio individual es un grano de arena en esa escala — pero te beneficias de ella sin pagar.

2. Universal SSL automático

Cloudflare emite y renueva un certificado TLS gratis para tu dominio sin que toques nada. Cero comandos, cero Let’s Encrypt, cero cron jobs de renovación. Activo desde el día 1.

3. Threat Intelligence basada en su red global

Cloudflare ve el 20-25 % del tráfico web mundial. Eso le da una lista enorme de IPs que están atacando otros sitios en este momento. Esas IPs se bloquean automáticamente en tu sitio sin que tengas que enterarte. Es lo que se llama threat intelligence colectiva: lo que ataca a uno protege a todos.

Según el Radar 2024 de Cloudflare, Cloudflare mitiga el 6,5 % del tráfico global como malicioso. Ese filtro pasa por encima de tu sitio sin que muevas un dedo.

4. Verified Bots — Googlebot y Bingbot pasan, los falsos no

Cloudflare mantiene una lista oficial de “Verified Bots” (Cloudflare Bots docs) — bots legítimos verificados criptográficamente como Googlebot, Bingbot, DuckDuckBot, FacebookBot, Slackbot, Twitterbot, etc.

Esto te resuelve dos problemas a la vez:

  • Los bots buenos siguen pasando sin que tengas que añadirlos manualmente en allowlists
  • Los bots que se hacen pasar por Googlebot (un truco viejo de scrapers para saltar filtros) se detectan porque su IP no coincide con los rangos oficiales de Google → bloqueados

Esto cubre uno de los vectores de ataque más comunes contra blogs y ecommerce: el scraper que finge ser “Googlebot 2.1” y dispara 500 requests/minuto.

5. Cache edge automático para estáticos

Aunque no toques nada de cache, Cloudflare ya empieza a guardar en sus POPs imágenes, CSS, JS, fuentes y otros estáticos. Eso descarga tu hosting de un 30-60 % del tráfico el primer día sin configurar nada.

Resumen visual de lo que es “default” vs lo que activas tú

ProtecciónActiva por defectoRequiere toggle/regla
DDoS L3/L4 absorption✅ Sí
Universal SSL✅ Sí
Threat Intelligence (IPs maliciosas)✅ Sí
Verified Bots whitelist✅ Sí
Edge cache estáticos✅ Sí
Bot Fight ModeToggle (1 click)
Browser Integrity CheckToggle (1 click)
Always Use HTTPSToggle (1 click)
TLS 1.2 mínimoToggle (1 click)
Reglas WAF customConfigurar 1 a 1 (hasta 5 free)
Block by countryRegla WAF custom

Es decir: darte de alta y cambiar los nameservers ya te da 5 capas de protección. Las 5 reglas que vas a configurar a continuación son la guinda — multiplican el efecto, pero la base ya está puesta.

Por qué el plan gratis es brutal

Comparemos lo que recibes contra lo que recibirías sin Cloudflare:

CaracterísticaSin CloudflareCloudflare Free
CDN edge POPs0300+ ciudades
SSL certificatetienes que renovar (Let’s Encrypt)automático + universal
DNSel de tu registrador (lento, ~50-200ms)Cloudflare DNS (1-10ms)
DDoS protectionla que ponga tu hostingilimitada L3/L4
WAF rules05 custom rules gratis
Bot Fight Modeno existesí, gratis
Cachetienes que configurar túedge cache automático
HTTPS upgrademanualAlways Use HTTPS toggle
Analyticsla que mida tu pluginWeb Analytics + Edge Analytics
Requests/meslimitado por hosting10 millones (free)

10 millones de requests al mes en el plan gratis. Para hacerte una idea, una web con 100k visitas/mes (cifra ya alta) consume típicamente 1-3 millones de requests. Vas sobrado.

Cómo dar de alta tu web en Cloudflare (paso a paso)

Paso 1: Crear cuenta gratis

Vete a cloudflare.com/sign-up. Email + password fuerte. 2FA obligatorio el día 1 (esto es serio porque controlará tu DNS).

Paso 2: Añadir tu dominio

Dashboard → Add a site → escribe tudominio.com (sin www, sin https://).

Cloudflare escanea los DNS records actuales (los lee de tu zona pública). Verás algo como:

A     @       1.2.3.4         Proxied (nube naranja)
A     www     1.2.3.4         Proxied
MX    @       mail.servidor   DNS only (nube gris)
TXT   @       v=spf1 ...      DNS only

⚠️ Importante: verifica que el escaneo capturó TODOS tus DNS records antes de continuar. Especialmente:

  • MX de tu correo (Google Workspace, ProtonMail, etc.)
  • TXT SPF/DKIM/DMARC (si no, el correo se rompe)
  • Records de Google Search Console / Bing Webmaster
  • Subdominios (cms., admin., staging., etc.)

Si falta alguno → añádelo manualmente AHORA, antes del switch.

Paso 3: Elegir plan

Free. No tienes ninguna razón para pagar el día 1.

Paso 4: Cambiar nameservers en tu registrador

Cloudflare te muestra 2 nameservers únicos de tu cuenta (algo tipo alex.ns.cloudflare.com + kate.ns.cloudflare.com).

Ve a tu registrador (Namecheap, GoDaddy, Hover, Cloudflare Registrar, etc.) → busca DNS Management o Nameservers → cambia los actuales por los de Cloudflare.

⚠️ Apunta los nameservers anteriores en un sitio seguro. Por si tienes que revertir.

Paso 5: Esperar propagación (1-24h)

DNS tarda en propagarse globalmente entre 1 hora y 24 horas. Mientras tanto, tu web sigue funcionando — solo cambia quién resuelve el DNS.

Cuando Cloudflare detecta el switch, te avisa por email “Your site is active on Cloudflare”.

Paso 6: Configurar SSL/TLS

En Cloudflare dashboard → SSL/TLSOverview → modo Full (strict).

Full = tráfico encriptado de visitante a Cloudflare Y de Cloudflare a tu servidor. Full (strict) = lo mismo + verifica que el certificado de tu servidor sea válido (no autofirmado).

Si tu hosting ya tiene SSL Let’s Encrypt: usa Full (strict). Si no tiene SSL: usa Full (Cloudflare hace de pasarela). Nunca uses Flexible — encripta entre visitante y Cloudflare, pero el tramo Cloudflare → tu servidor va en HTTP claro. Inseguro.

Paso 7: Activar Always Use HTTPS

Mismo menú SSL/TLSEdge Certificates → toggle Always Use HTTPS = ON.

Esto fuerza redirect 301 de http:// a https:// a nivel edge. No tienes que tocar nada en WordPress.

Paso 8: TLS 1.2 mínimo

SSL/TLSEdge CertificatesMinimum TLS VersionTLS 1.2 (o 1.3 si tu audiencia es 100 % browsers modernos).

Esto bloquea conexiones de bots viejos que aún usan TLS 1.0/1.1 (90 % son escáneres).

Las 5 reglas anti-bots free

Cloudflare Free te deja 5 Custom WAF Rules + funciones built-in. Las uso así:

Regla 1: Bot Fight Mode + Browser Integrity Check (built-in, gratis)

No usa cuota de las 5 custom rules. Es un toggle.

Cloudflare dashboard → SecurityBots → activar Bot Fight Mode.

Mismo dashboard → SecuritySettings → activar Browser Integrity Check + Challenge Passage = 30 minutos.

Qué hace: Bot Fight Mode bloquea bots conocidos (lista mantenida por Cloudflare con miles de patrones). Browser Integrity Check hace un challenge invisible a cada visitante para verificar que es un browser real.

Bloqueo típico: 30-40 % del tráfico bot malicioso obvio.

Regla 2: Bloquear endpoints sensibles típicos

WordPress + Laravel + Git exponen rutas que NUNCA debe ver el público. Los bots las prueban a saco.

Dashboard → SecurityWAFCustom rulesCreate rule:

  • Rule name: Block sensitive paths
  • Field: URI PathOperator: containsValue: /xmlrpc.php
  • Click Or y añade más:
    • URI Path contains /wp-config.php
    • URI Path contains /.env
    • URI Path contains /.git/
    • URI Path contains /wp-config.php.bak
    • URI Path contains /.htaccess
    • URI Path contains /phpunit
  • Action: Block

Bloqueo típico: 10-15 % adicional (todos los scanners de vulnerabilidades pegan a estas rutas).

Regla 3: Bloquear user-agents de scrapers conocidos

Los user-agents legítimos de Googlebot, Bingbot, etc. tienen formato bien conocido. Scrapers automatizados suelen llevar etiqueta tipo python-requests/2.28, Scrapy/2.5, selenium, headless, puppeteer, etc.

Dashboard → WAFCustom rulesCreate rule:

  • Rule name: Block scraper user-agents
  • Field: User AgentOperator: containsValue: scrapy
  • OrUser Agent contains selenium
  • OrUser Agent contains headlesschrome
  • OrUser Agent contains puppeteer
  • OrUser Agent contains phantomjs
  • OrUser Agent contains python-requests
  • OrUser Agent contains httpclient
  • OrUser Agent contains bot AND User Agent does not contain googlebot AND User Agent does not contain bingbot AND User Agent does not contain duckduckbot
  • Action: Block

⚠️ Importante: la última cláusula con User Agent contains bot es agresiva. Excluye los bots legítimos (Google, Bing, DuckDuckGo). Si tienes otros bots que SÍ quieres dejar pasar (ej. Slackbot, Twitterbot, Facebookbot para previews), añádelos a la lista de excepciones.

Bloqueo típico: 15-25 % adicional (ya estamos en 55-80 %).

Regla 4: Rate-limit en /wp-json/wp/v2/users (anti-enumeración)

WordPress expone por defecto /wp-json/wp/v2/users que devuelve la lista de usernames. Es la primera fase de cualquier ataque de fuerza bruta.

Dashboard → WAFCustom rulesCreate rule:

  • Rule name: Block /wp-json/users enumeration
  • Field: URI PathOperator: containsValue: /wp-json/wp/v2/users
  • Action: Block

Si necesitas que algún tool tuyo consuma /wp-json/wp/v2/users con auth → permite por IP:

  • Añade otra cláusula: AND IP Source Address is not in [tu_IP]

Por qué Block y no Challenge: ningún visitante humano hace request a ese endpoint. Si llega, es bot o scanner. Block directo.

Regla 5: Bloquear países sin clientela real

Si tu negocio es España + Latam, el tráfico desde Rusia, China, Vietnam, Bangladesh, etc. es 99 % bot.

Dashboard → WAFCustom rulesCreate rule:

  • Rule name: Block countries with no audience
  • Field: CountryOperator: is inValue: lista de países según tu caso
  • Action: Block (o Managed Challenge si quieres ser más conservador)

Países típicamente recomendados para bloquear si NO operas allí:

  • Rusia (RU), Bielorrusia (BY), China (CN), Corea del Norte (KP)
  • Vietnam (VN), Bangladesh (BD), Pakistán (PK)
  • Nigeria (NG), Indonesia (ID)
  • Filipinas (PH) — origen masivo de click farms

⚠️ No bloquees por bloquear. Verifica primero en Analytics qué países te envían tráfico real. Si Indonesia te trae 10 ventas/mes, NO la bloquees.

Bloqueo típico: 10-20 % adicional. Y los falsos positivos son mínimos si validas con Analytics.

Bonus: configuraciones que te ahorran problemas

Auto Minify (HTML/CSS/JS)

SpeedOptimizationAuto Minify → activar HTML + CSS + JS.

Reduce 5-15 % del peso de los assets sin tocar nada en WordPress.

Brotli compression

SpeedOptimizationBrotli → ON.

Mejor compresión que gzip. Cada response sale 20 % más pequeña a usuarios con browsers modernos (todos).

Caching: edge cache TTL

CachingConfigurationBrowser Cache TTL = Respect Existing Headers.

Si WordPress envía Cache-Control correctos, Cloudflare los respeta. Si no, configura Edge Cache TTL manual a 4 horas para estáticos.

Page Rules (3 gratis)

RulesPage Rules. Tienes 3. Una útil:

  • URL: *tudominio.com/wp-admin/*
  • Setting: Cache Level: Bypass + Security Level: High

Esto evita cachear el admin y endurece seguridad solo ahí (no en el frontend público).

Limitaciones del plan free

Justo para que sepas qué pierdes:

Lo que NO te da el freeLo que tienes que hacer si quieres eso
Super Bot Fight Mode (Cloudflare bot intelligence avanzado)Pro $20/mes
Managed WAF rules (OWASP + Cloudflare Managed)Pro $20/mes
Page Rules > 3Pro $20/mes (20 rules)
Image Resizing / PolishPro $20/mes
WAF rules > 5Pro $20/mes
Logs detallados (Logpush)Enterprise
Reglas de filtrado de tráficoPro $20/mes
Analytics avanzadosPro $20/mes

Si tu web genera dinero serio → los $20/mes de Pro son una ganga. Para pre-launch / proyectos personales, free vale de sobra.

Cuándo Cloudflare NO es suficiente

Aun con las 5 reglas + bonus, hay 2 escenarios donde necesitas más:

  1. Ataques targeted a tu negocio: competencia haciendo bot spam, reservaciones fake en restaurantes, etc. → necesitas behavior-based WAF (Pro/Business) o solución dedicada
  2. Sitios con /wp-admin/ muy expuesto: aunque Cloudflare filtre, hay tráfico bot que pasa el challenge. Aquí entra protección a nivel PHP con plugins serios o el módulo de seguridad de WPO Toolkit de SeoNova que actúa como portero antes de cargar WordPress

Sigue leyendo: Por qué Google no te indexa: bots y crawl budget explica al detalle por qué un hosting saturado de bots arruina tu SEO. Y si usas la REST API de WordPress, Application Passwords: ventajas y riesgos cubre cómo protegerlas con las mismas reglas WAF.

Cierre

Cloudflare Free no es “una solución mediocre”. Es la línea de defensa más rentable que puedes tener en internet hoy. 15 minutos de alta + 5 reglas WAF + 3 toggles built-in = 60-80 % del tráfico bot malicioso bloqueado, mejor SEO (más crawl budget para Google y Bing), menos carga en tu hosting, SSL gratis, CDN global.

Si tienes una web en WordPress y no usas Cloudflare, es la mejora más obvia que puedes hacer este fin de semana.


Si tu hosting sigue saturado tras meter Cloudflare (porque los bots más sofisticados pasan el challenge), el módulo de seguridad de WPO Toolkit de SeoNova actúa como segunda capa: bloquea bots a nivel PHP antes de cargar nada de WordPress. Cloudflare + WPO Toolkit = 95 %+ del tráfico bot fuera.

¿Quieres probar SeoNova cuando lance? Apúntate a la waitlist — 50 % de descuento los 3 primeros meses para los primeros suscriptores.

— El equipo de SeoNova

Preguntas frecuentes

Las dudas que más nos llegan sobre este tema

¿Cloudflare bloquea Googlebot y Bingbot por error?
No, por defecto los deja pasar. Bot Fight Mode tiene una lista blanca de bots legítimos (Google, Bing, DuckDuckGo, Slackbot, Twitterbot, etc.). Pero si añades reglas WAF custom muy agresivas con 'User Agent contains bot', tienes que excluir explícitamente esos legítimos.
¿Pierdo la IP real de los visitantes con Cloudflare?
El servidor de origen ve la IP de Cloudflare. Para recuperar la IP real del visitante, instala el módulo mod_cloudflare (Apache) o configura Real IP header en Nginx. WordPress: plugin Cloudflare oficial lo hace automático.
¿Cloudflare cachea mi WordPress logueado y rompe el admin?
No, si configuras una Page Rule para `*tudominio.com/wp-admin/*` con Cache Level Bypass. Por defecto Cloudflare respeta los headers Cache-Control que envía WordPress (cookies = bypass).
¿Cuántos sitios puedo añadir gratis en una sola cuenta de Cloudflare?
Cloudflare no pone límite de sitios en el plan free. Puedes meter 5, 50 o 500 dominios bajo la misma cuenta. Lo único que se cuenta es el tráfico (10 millones de requests/mes en total).
¿Cloudflare puede gestionar mi email también?
Sí, vía Cloudflare Email Routing (gratis). Te permite crear alias del tipo [email protected] → tu_gmail. Lo activas desde el dashboard de tu dominio → Email → Email Routing.
Si cancelo Cloudflare, ¿pierdo mi web?
No. Solo tienes que cambiar los nameservers en tu registrador de vuelta a los originales (los que apuntaste antes del switch — espero que los guardaras). DNS se propaga en 1-24h y tu web sigue funcionando exactamente igual.

Sigue leyendo

Más posts del blog que te pueden interesar