Muchas han sido las ocasiones en las que, al inspeccionar un sitio web creado con WordPress, llego con facilidad al formulario de acceso y este no presenta ninguna medida de seguridad. No quiero decir con esto que este CMS sea inseguro. Pero no vivimos en “los mundos de Yupi”. Por eso, hoy quiero explicarte cómo proteger el login de WordPress con Cloudflare Turnstile, una alternativa sencilla a los CAPTCHA tradicionales que, además puede ayudarte a reducir intentos automatizados de acceso, spam en comentarios y envíos basura en formularios.
En realidad, este tutorial nació mientras trabajaba en la web de un nuevo cliente. Siempre implemento las medidas de seguridad mínimas que todo sitio web debería tener. Pero esta cuestión no es tan simple de responder. Por aclararte, si llegas a este momento, y debes pensar en mejorar la seguridad de tu sitio, o el de un cliente, debes preguntarte: ¿cómo protejo el acceso a WordPress sin complicar la vida a quien realmente tiene que entrar?
Por qué me planteé proteger el login de WordPress
Mi primera idea fue instalar un plugin de seguridad completo. Es una opción razonable en muchas webs.
Pero en este caso había un matiz importante. La web estaba alojada en Profesional Hosting, un proveedor que ya incluye medidas de seguridad a nivel de alojamiento. En su propia web indican que su hosting WordPress incorpora “seguridad capa mod security”, y también mencionan actualizaciones automáticas, reglas antihack y protección adicional con SiteLock.
Esto no significa que ya no haya que hacer nada más. La seguridad web funciona por capas, no por amuletos. Un hosting puede ayudarte con un firewall, reglas del servidor o protección frente a patrones maliciosos, pero el formulario de acceso de WordPress sigue siendo una puerta muy golosa para bots, intentos de fuerza bruta y automatismos que llaman al timbre a las tres de la mañana.
Así que descarté duplicar funciones con otro plugin y me centré en una necesidad concreta: añadir una protección sencilla al login de WordPress.
“Si estás buscando un alojamiento especializado para WordPress, puedes revisar los planes de Profesional Hosting desde este enlace”.
Por qué descarté Google reCAPTCHA
La primera alternativa que se me pasó por la cabeza fue Google reCAPTCHA. Es conocida, lleva muchos años entre nosotros y muchos plugins la integran sin demasiado misterio.
En ese momento revisé la situación actual de Google reCAPTCHA. Durante años ha sido una de las soluciones más habituales para proteger formularios, pero Google ha ido moviendo su sistema hacia Google Cloud, con un modelo más vinculado a proyectos, cuotas y facturación.
Según la documentación oficial de Google, las claves antiguas de reCAPTCHA Classic han entrado en un proceso de migración a Google Cloud. Este cambio empezó a notarse especialmente desde 2024, cuando dejaron de permitirse nuevas claves clásicas, y continuó durante 2025 y 2026 con la migración progresiva de las claves existentes.
En la práctica, esto no significa que reCAPTCHA haya dejado de funcionar ni que sea una mala herramienta. Pero sí añade una capa más de gestión: proyecto en Google Cloud, límites de uso, posibles costes según el volumen de tráfico y una configuración algo menos directa para quien solo quiere proteger el login de WordPress sin complicarse demasiado.
Para una web pequeña puede que nunca suponga un problema. Aun así, en una web de uno de mis clientes prefiero evitar dependencias que puedan convertirse más adelante en una sorpresa de facturación o en una configuración difícil de explicar. Por eso empecé a mirar alternativas más ligeras, y ahí apareció Cloudflare Turnstile.
Qué es Cloudflare, explicado sin tecnicismos

Cloudflare es una empresa que ofrece servicios para mejorar la seguridad, el rendimiento y la disponibilidad de sitios web. Entre otras cosas, puede actuar como una especie de puesto de control entre los visitantes y tu web.
Imagina que tu sitio es una oficina. Normalmente, cualquiera que tenga la dirección puede acercarse a la puerta e intentar entrar. Cloudflare puede colocarse antes de esa puerta para revisar parte del tráfico, filtrar comportamientos sospechosos, acelerar la entrega de contenido y proteger frente a determinados ataques.
No siempre necesitas pasar toda tu web por Cloudflare para usar una de sus herramientas. Y aquí entra Turnstile.
Qué es Cloudflare Turnstile
Cloudflare Turnstile es una alternativa moderna a los CAPTCHA tradicionales. Según la documentación oficial de Cloudflare, Turnstile puede integrarse en cualquier sitio web sin necesidad de enviar todo el tráfico a través de Cloudflare y sin mostrar al visitante un CAPTCHA clásico.
La idea es sencilla: en lugar de obligar al usuario a resolver pruebas visuales, Turnstile intenta comprobar si quien interactúa con el formulario parece una persona real o un bot automatizado. Cuando todo va bien, el usuario apenas nota nada. Cuando algo resulta sospechoso, Turnstile puede intervenir.
Técnicamente, Turnstile funciona con dos piezas principales: una sitekey, que es la clave pública que se coloca en el sitio, y una secret key, que sirve para validar en el servidor que la respuesta es auténtica. Cloudflare insiste en que la validación del token debe hacerse en el servidor, no solo en el navegador.
Dicho de otra forma: no basta con poner un adorno bonito en el formulario. El servidor tiene que comprobar que la persona, o el bot disfrazado de persona, ha pasado realmente la verificación.
Qué vamos a conseguir con este tutorial

El objetivo de este tutorial no es convertir WordPress en un búnker lleno de paneles rojos, sino añadir una capa sencilla de protección al formulario de acceso.
Lo que buscamos es proteger el login de WordPress con Cloudflare Turnstile para reducir intentos automatizados de acceso, spam en formularios y actividad sospechosa generada por bots. No vamos a sustituir una estrategia completa de seguridad, ni las copias de seguridad, ni las actualizaciones, ni una buena configuración del hosting. Vamos a añadir una pieza concreta a una zona concreta: la puerta de entrada al panel de administración.
Para hacerlo necesitaremos dos cosas:
- Una cuenta gratuita de Cloudflare.
- Un plugin de WordPress que permita integrar Cloudflare Turnstile en el login y, si lo necesitamos, en otros formularios.
Cloudflare Turnstile tiene plan gratuito. Según la documentación oficial de Cloudflare, ese plan está pensado para webs personales, blogs, pequeñas y medianas empresas, entornos de desarrollo y la mayoría de aplicaciones en producción. También permite hasta 20 widgets por cuenta y retos ilimitados, tanto en tráfico como en solicitudes de verificación.
Antes de seguir: qué necesitamos realmente
Para usar Cloudflare Turnstile en WordPress no hace falta programar desde cero. En una integración manual, Turnstile funciona con una parte visible en el formulario y una validación en el servidor. Cloudflare explica que cada widget tiene una sitekey, que es pública, y una secret key, que debe mantenerse privada y sirve para validar los tokens generados por Turnstile.
Traducido a una web WordPress normal: necesitamos generar esas claves en Cloudflare y después introducirlas en un plugin que se encargue de añadir Turnstile en los formularios correspondientes.
La parte importante es que el plugin haga bien la validación en servidor. No basta con mostrar un pequeño recuadro bonito junto al formulario. Si no se valida correctamente el token, la protección se queda a medias. Cloudflare insiste en que la validación del token en servidor es obligatoria para completar correctamente la configuración de Turnstile.
Cómo crear una cuenta gratuita de Cloudflare
Crear una cuenta de Cloudflare es bastante directo. Según la documentación oficial, solo hay que acceder a la página de registro, introducir un correo electrónico y una contraseña, y seleccionar “Create Account”. Después, Cloudflare envía un correo para verificar el email utilizado.
Una recomendación práctica: si la cuenta va a usarse para una web de un cliente, conviene pensar bien qué correo se utilizará. Cloudflare recomienda, para equipos o empresas, usar un alias o lista de distribución como correo principal de la cuenta, porque esa dirección será el punto de contacto para facturación, avisos de uso y recuperación de cuenta.
En proyectos pequeños puede bastar con una cuenta personal o profesional. En proyectos de clientes, yo prefiero que la cuenta quede a nombre del cliente o, al menos, que el cliente tenga claro dónde están las claves y quién tiene acceso. Las cuentas técnicas abandonadas son como llaves olvidadas en un cajón. No molestan hasta que un día hacen falta.
Dónde encontrar Turnstile dentro de Cloudflare
Una vez creada la cuenta, hay que entrar en el panel de Cloudflare y buscar la sección Turnstile.
Una vez hayas accedido, en la parte superior izquierda, encontrarás un campo de búsqueda. Escribe Turnstile.
Desde ahí se puede crear un nuevo widget. Cloudflare indica que, dentro del panel, hay que ir a la página de Turnstile, seleccionar “Add widget”, rellenar la información requerida y guardar. En esa pantalla se define el nombre del widget, los dominios donde se utilizará y el modo de funcionamiento.
Para una web WordPress normal, el dominio será algo como:
tudominio.com
Al crear el widget, Cloudflare mostrará dos claves:
- Sitekey.
- Secret key.
La sitekey es la clave pública que identifica el widget. La secret key es la clave privada que permite validar la respuesta en el servidor. Esta segunda no debe publicarse, compartirse en capturas de pantalla ni pegarse en documentación visible.
Cloudflare ofrece varios modos de widget, como Managed, Non-Interactive e Invisible. Para la mayoría de webs WordPress, el modo gestionado suele ser el punto de partida más razonable, porque deja que Cloudflare decida cuándo debe mostrarse una interacción al usuario y cuándo puede resolver la comprobación de forma más discreta.
Plugins para añadir Cloudflare Turnstile en WordPress
Llegados a este punto, tocaba resolver la pregunta práctica: ¿qué plugin uso para integrar Cloudflare Turnstile en el login de WordPress?
Revisé varias opciones del repositorio oficial de WordPress. No todos me parecieron igual de recomendables para este caso. Aquí no buscaba el plugin más complejo, ni el más llamativo, ni el que prometiera blindar la web con fuegos artificiales. Buscaba una solución sencilla, mantenida, compatible con formularios habituales, y centrada en Turnstile.
Simple CAPTCHA with Cloudflare Turnstile

Simple CAPTCHA with Cloudflare Turnstile fue la opción que más me convenció desde el principio. Su ficha oficial en WordPress.org lo presenta como una alternativa gratuita, orientada a añadir Cloudflare Turnstile a formularios de WordPress para protegerlos frente al spam.
El plugin permite activar Turnstile en formularios básicos de WordPress, como el login, el registro, la recuperación de contraseña y los comentarios. También incluye compatibilidad con WooCommerce, formularios de pago, cuenta de usuario, registro y recuperación de contraseña.
Otro punto a favor es su compatibilidad con muchos plugins de formularios y herramientas habituales: Contact Form 7, Gravity Forms, Forminator, WPForms, Fluent Forms, MailPoet, Mailchimp for WordPress, Elementor Pro Forms, BuddyPress, bbPress, MemberPress y otros.
Para una web como la de mi cliente, esto era interesante porque no solo pensaba en el login. También quería tener margen para proteger formularios de contacto, comentarios o suscripción si más adelante hacía falta.
Además, el propio plugin indica que es gratuito, sin versión de pago y sin seguimiento adicional de datos. También señala que Cloudflare Turnstile es un servicio gratuito.
Login Security Captcha

Login Security Captcha también me pareció una opción viable. Permite añadir servicios CAPTCHA o sin CAPTCHA, incluyendo Cloudflare Turnstile y Google reCAPTCHA, al login, registro, recuperación de contraseña y formulario de comentarios de WordPress. Su ficha lo presenta como un plugin ligero, pensado para proteger formularios estándar y ayudar frente a spam y ataques de fuerza bruta.
La ventaja de este plugin es que no se limita a Turnstile. También permite trabajar con reCAPTCHA v2 y reCAPTCHA v3. Eso puede ser útil si quieres tener varias opciones disponibles.
Pero, en mi caso, esa misma ventaja era también el motivo para no elegirlo como primera opción. Yo buscaba una solución más limpia y centrada en Cloudflare Turnstile. No quería instalar una herramienta que mezclara varias tecnologías si solo necesitaba una.
Easy Spam Filter

Easy Spam Filter, también orientado a Cloudflare Turnstile, se presenta como una alternativa para WordPress, WooCommerce, Contact Form 7, BuddyPress, WPForms, Elementor y otros formularios. Su ficha explica que permite generar las claves en Cloudflare, introducirlas en el plugin y dejar que el propio plugin despliegue la protección en los formularios.
Tiene puntos interesantes. Por ejemplo, contempla protección para login, registro, recuperación de contraseña y comentarios. También incluye soporte para formularios de WooCommerce, Contact Form 7, WPForms y Elementor.
Aun así, lo dejé como alternativa secundaria. En comparación con Simple CAPTCHA with Cloudflare Turnstile, me ofrecía menos confianza para este caso por adopción y por trayectoria. No lo descartaría sin más, pero no fue mi primera elección.
Kitgenix CAPTCHA for Cloudflare Turnstile

Kitgenix CAPTCHA for Cloudflare Turnstile me pareció un candidato interesante desde el punto de vista técnico. Su ficha habla de verificación del token en servidor usando el endpoint oficial de Cloudflare, carga condicional solo donde sea necesario, soporte para formularios dinámicos o AJAX y compatibilidad con WooCommerce Blocks y Store API checkout.
Estos detalles son importantes, porque indican una preocupación real por cómo funcionan las webs WordPress modernas, especialmente cuando entran en juego WooCommerce, formularios dinámicos y validaciones que no siempre pasan por los caminos clásicos.
Además, el changelog del plugin recoge compatibilidad confirmada con WordPress 7.0 en la versión 1.1.3.
¿Por qué no lo elegí como primera opción? Principalmente por adopción. Me parece una opción a vigilar y quizá muy interesante para escenarios más técnicos, pero para una web de un cliente preferí una alternativa con más instalaciones activas y un recorrido más amplio.
Turnstile Pro

Turnstile Pro también protege login, registro, comentarios y recuperación de contraseña usando Cloudflare Turnstile. Su ficha lo presenta como un plugin ligero, con carga dinámica o estática del script, whitelist de IP, mensaje de error personalizable y desinstalación limpia.
El problema es que, en el momento de revisarlo, su ficha indicaba 20 instalaciones activas, ninguna valoración y compatibilidad probada hasta WordPress 6.8.5.
No digo que sea un mal plugin. Simplemente, para este caso concreto, no me parecía la opción más prudente. Cuando trabajo en una web de cliente, especialmente en una medida relacionada con el acceso, prefiero apoyarme en herramientas con más adopción, más señales de mantenimiento y compatibilidad probada con versiones recientes de WordPress.
Qué plugin escogí finalmente y por qué
Después de revisar las distintas opciones, me quedé con Simple CAPTCHA with Cloudflare Turnstile.
La razón principal fue su sencillez. No necesitaba un plugin complejo, ni una suite de seguridad completa, ni una herramienta con demasiadas capas de configuración. Buscaba algo directo: añadir las claves de Cloudflare Turnstile, comprobar que funcionaban y activar la protección en los formularios necesarios.
Y eso es justo lo que hace este plugin.
Una vez introduces la site key y la secret key generadas desde Cloudflare, el propio plugin permite comprobar si las claves funcionan correctamente. Este detalle me parece muy útil, porque evita trabajar a ciegas. Antes de activar Turnstile en formularios importantes, puedes verificar que la conexión con Cloudflare está respondiendo como debe.
También me gustó que detectara formularios habituales sin obligarte a pelearte con configuraciones extrañas. Además de los formularios nativos de WordPress, como el login, el registro, la recuperación de contraseña y los comentarios, también ofrece integración con Contact Form 7 y MailPoet. Para una web editorial o corporativa, esto resulta muy práctico, porque es bastante habitual combinar el acceso a WordPress con formularios de contacto y formularios de suscripción.
Otro punto que valoro es que se integra de forma ordenada dentro del panel de administración de WordPress. Sus ajustes aparecen en el apartado “Ajustes”, que es justo donde esperaría encontrar una configuración de este tipo. Puede parecer un detalle menor, pero cuando trabajas con varias webs de clientes, el orden dentro del panel importa. Un plugin que coloca sus opciones donde corresponde facilita el mantenimiento posterior y evita esa sensación de panel convertido en mercadillo técnico.
No escogí Simple CAPTCHA with Cloudflare Turnstile porque sea “el mejor plugin absoluto”. Ese tipo de afirmaciones suelen envejecer mal. Lo elegí porque, para este caso concreto, encajaba muy bien: es sencillo, está centrado en Cloudflare Turnstile, permite comprobar las claves, detecta formularios habituales y se integra de forma limpia en WordPress.
En una web como la de mi cliente, donde el hosting ya aportaba una buena base de seguridad, esta solución tenía sentido. No necesitaba añadir más peso del necesario. Solo quería reforzar el acceso y algunos formularios concretos con una capa discreta, práctica y fácil de mantener.
Qué comprobar después de activar Turnstile
Aunque este artículo no pretende ser una guía paso a paso de instalación del plugin, sí conviene tener claras algunas comprobaciones básicas.
Después de activar Cloudflare Turnstile en cualquier formulario de WordPress, revisa siempre que el formulario sigue funcionando. No basta con verlo en pantalla.
Comprueba, como mínimo:
- Que puedes iniciar sesión en WordPress.
- Que funciona la recuperación de contraseña.
- Que los comentarios se pueden enviar, si los tienes activos.
- Que los formularios de contacto llegan correctamente.
- Que los formularios de suscripción funcionan.
- Que WooCommerce permite iniciar sesión, registrarse o finalizar una compra, si lo has activado en una tienda.
En una web con WooCommerce, sería especialmente prudente probar cualquier cambio en staging antes de tocar el checkout. La caja de una tienda online no es lugar para improvisar con guantes de mago.
También conviene revisar la caché y la optimización de JavaScript. Si usas plugins como LiteSpeed Cache, WP Rocket u otros sistemas de optimización, asegúrate de que no retrasan, bloquean o combinan scripts necesarios para Turnstile. Si algo falla justo después de activar la protección, la caché suele ser una de las primeras sospechosas sentadas bajo el flexo.
¿Cloudflare Turnstile sustituye a un plugin de seguridad?
No. Y esto conviene dejarlo claro.
Cloudflare Turnstile ayuda a filtrar bots y automatismos en formularios, pero no sustituye una estrategia completa de seguridad para WordPress. Es una capa más, no el edificio entero.
Para proteger bien una web WordPress, también deberías cuidar:
- Contraseñas seguras.
- Usuarios con permisos adecuados.
- Actualizaciones de WordPress, plugins y temas.
- Copias de seguridad.
- Protección a nivel de servidor.
- Revisión de plugins instalados.
- Eliminación de extensiones que no se usan.
- Autenticación en dos pasos para administradores, cuando proceda.
- Supervisión periódica del estado de la web.
Turnstile puede ayudarte a reducir ruido automatizado en el login y otros formularios, pero no impedirá todos los problemas posibles. Si un usuario tiene una contraseña débil, si un plugin vulnerable está sin actualizar o si nadie revisa las copias de seguridad, la web seguirá teniendo flancos abiertos.
Conclusión
Proteger el login de WordPress con Cloudflare Turnstile es una forma sencilla de añadir una barrera adicional frente a bots, spam e intentos automatizados de acceso. No sustituye el mantenimiento de la web, ni las actualizaciones, ni una buena política de copias de seguridad, pero puede ser una medida muy útil cuando se aplica con criterio.
En mi caso, después de revisar varias alternativas, elegí Simple CAPTCHA with Cloudflare Turnstile porque ofrecía el mejor equilibrio para una web de cliente: protección del login, soporte para formularios habituales, compatibilidad con WooCommerce, buena adopción y una configuración directa. Si tienes dudas sobre cómo proteger el login de WordPress con Cloudflare Turnstile, puedes dejar un comentario o escribirme. Y si prefieres que revise la seguridad de tu web, el estado de tus plugins o la protección de tus formularios, puedo ayudarte a hacerlo con calma y sin convertir tu WordPress en una sala de máquinas llena de palancas misteriosas.













