Poner un sitio detrás de Cloudflare toma unos minutos, y dos cosas pueden salir mal: que el sitio deje de cargar por la configuración de SSL, o que las reglas de firewall bloqueen tráfico legítimo. Esta guía cubre las dos, con lo que debes revisar antes de encender nada.
Una aclaración: codegea.com usa de Cloudflare solo DNS y R2 (lo contamos en así está construido codegea.com). Esto es el procedimiento general para un sitio en un servidor tuyo, por ejemplo un VPS.
Qué cambia al ponerlo delante
En Cloudflare, cada registro DNS tiene un interruptor: nube naranja (el tráfico pasa por Cloudflare) o nube gris (solo DNS). Con la naranja, los visitantes ya no hablan con tu servidor, hablan con Cloudflare, y este habla con tu servidor. Ahí es donde se aplican el firewall, la caché y el SSL.
Eso significa dos conexiones cifradas: la del visitante a Cloudflare y la de Cloudflare a tu servidor. Y de cómo configures la segunda dependen la mayoría de los problemas.
El modo SSL: la causa número uno de problemas
En SSL/TLS hay cuatro modos:
- Off: sin cifrado. No lo uses.
- Flexible: cifra del visitante a Cloudflare, pero Cloudflare le habla a tu servidor sin cifrar.
- Full: cifra los dos tramos, aceptando cualquier certificado en tu servidor.
- Full (strict): cifra los dos tramos y exige un certificado válido en tu servidor.
Usa Full (strict), con un certificado válido en tu servidor (uno gratuito de Let's Encrypt sirve; lo instalamos en configurar SSL, backups y firewall en tu servidor).
El clásico bucle de redirecciones aparece con Flexible: tu servidor ve la petición llegar por HTTP, la redirige a HTTPS, Cloudflare vuelve a pedirla por HTTP, y así sin fin. El navegador muestra «demasiadas redirecciones». Pasar a Full (strict) lo resuelve.
Errores 52x
Si Cloudflare no logra hablar con tu servidor, muestra su propia página de error:
- 521: el servidor rechazó la conexión. Normalmente está apagado o el firewall del servidor bloquea a Cloudflare.
- 522: la conexión se agotó. El servidor no respondió a tiempo.
- 525: falló el cifrado entre Cloudflare y tu servidor.
- 526: el certificado de tu servidor no es válido (con Full strict).
Si pasa, mira primero el firewall de tu servidor. Si lo cerraste para aceptar solo ciertas IP, tiene que permitir las de Cloudflare.
Reglas de WAF en el plan gratis
Según la documentación de Cloudflare, el plan gratis incluye reglas personalizadas, una regla de limitación de velocidad (rate limiting) y el conjunto gratuito de reglas administradas. Ejemplos útiles para un WordPress:
- Bloquear
xmlrpc.phpsi no lo usas. Es objetivo habitual de ataques de fuerza bruta. Expresión:(http.request.uri.path eq "/xmlrpc.php"), acción Block. - Desafío en el login.
(http.request.uri.path eq "/wp-login.php"), acción Managed Challenge. Excluye a los usuarios que ya tienes identificados si te estorba. - Una regla de limitación de velocidad sobre el login, para frenar intentos repetidos desde la misma IP.
Tres precauciones:
- No pongas desafíos sobre rutas que consumen servicios automáticos. Webhooks de pasarelas de pago, APIs,
admin-ajax.phpo el feed pueden romperse si les pides resolver un desafío. - Empieza en modo de registro (Log) y revisa los eventos antes de pasar a Block.
- Comprueba que no bloqueas a Googlebot. Revisa en Search Console las estadísticas de rastreo después de activarlo.
Modo «Bajo ataque»
Hay un modo de emergencia, I'm Under Attack, que muestra a los visitantes una pantalla de comprobación antes de dejarlos pasar. La documentación lo describe como un último recurso: pausa el acceso normal, puede afectar a tus estadísticas y a herramientas de terceros que dependan de JavaScript, y no está activo por defecto. Se puede aplicar a toda la zona o solo a una ruta, por ejemplo /admin, con una regla de configuración. Úsalo durante un ataque, no como ajuste permanente.
La caché: con cuidado
Por defecto, Cloudflare guarda en caché archivos estáticos (imágenes, CSS, JavaScript), no el HTML. Está bien así. Si activas caché de páginas completas, excluye todo lo que sea de una sesión: panel de administración, carrito, cuenta del cliente.
Y si tu sitio está en Vercel
No pasa por este esquema. Vercel ya trae su propia red de entrega y firewall, y su documentación desaconseja poner otro proxy delante. Por eso en nuestro sitio dejamos Cloudflare solo para DNS y almacenamiento.
Lista corta antes de encender la nube naranja
- Certificado válido en el servidor y modo Full (strict).
- El firewall del servidor permite las IP de Cloudflare.
- Reglas de WAF primero en modo Log.
- Probaste el login, el carrito, el formulario de contacto y los webhooks.
- Tienes a mano cómo volver a nube gris si algo falla.
Escrito por
Derian Pinto
Founder & Full Stack Developer
Fundador de Codegea. Desarrolla sitios, tiendas y plataformas a medida, e integra y da soporte a Arc XP para medios.