ES Football Bypass for Cloudflare
ES Football Bypass for Cloudflare es un plugin de WordPress creado por David Carrero Fernandez-Baillo para ayudar a los propietarios de sitios web españoles a proteger sus webs legítimas del daño colateral provocado por los bloqueos masivos de IP ordenados durante los partidos de fútbol. El proyecto es de código abierto (GPLv2) y está disponible en GitHub: https://github.com/dcarrero/cf-football-bypass
El plugin monitoriza automáticamente los eventos de fútbol en España consultando hayahora.futbol y, en función del resultado, gestiona los registros DNS de Cloudflare para alternar entre los modos Proxied (CDN) y DNS Only. Así se evita que los visitantes legítimos se vean afectados por los bloqueos judiciales dirigidos contra el streaming pirata de fútbol.
El problema
En España, durante los partidos de fútbol, se aplican bloqueos masivos de IP por orden judicial para combatir el streaming pirata. Estos bloqueos afectan también a sitios web legítimos que no tienen nada que ver con el fútbol, provocando pérdidas de tráfico e ingresos.
La solución
Cuando se detecta fútbol: – Desactiva automáticamente el proxy de Cloudflare en los registros DNS seleccionados – Tu web pasa a modo DNS Only, evitando las IPs de Cloudflare potencialmente bloqueadas – Tras el periodo de enfriamiento configurado, vuelve a activar el proxy de Cloudflare automáticamente
Funcionalidades clave
Automatización completa – Monitorización automática cada X minutos (configurable de 5 a 60 min) – Activación y desactivación automática del bypass – Sistema de cron de WordPress integrado
Soporte de doble autenticación de Cloudflare – Global API Key (tradicional) – API Token con permisos específicos (más seguro)
Control granular – Selección específica de registros DNS (A, AAAA y CNAME) – Duración del bypass configurable (60-600 minutos) – Intervalo de enfriamiento personalizable tras desactivar Cloudflare – Control manual para casos especiales
Panel de control informativo – Estado del fútbol en tiempo real – Última comprobación realizada – Estado del bypass (activo/inactivo)
Herramientas adicionales – Botón de prueba de conexión con Cloudflare – Comprobación manual del estado del fútbol – Botones de activación/desactivación manual – Registro detallado para depuración y auditoría – Endpoint protegido para cron externo
Servicios externos
Este plugin se conecta a los siguientes servicios externos:
hayahora.futbol
El plugin consulta periódicamente el endpoint https://hayahora.futbol/estado/data.json para comprobar si hay bloqueos de IP activos durante eventos de fútbol en España. Esta consulta se ejecuta automáticamente según el intervalo de cron configurado (por defecto: cada 15 minutos) y también puede dispararse manualmente desde el panel de administración. – Datos enviados: una petición HTTP GET con la URL home del sitio en la cabecera User-Agent. No se transmite ningún dato personal ni de visitantes. – URL: https://hayahora.futbol/ – Sobre el servicio y privacidad: https://hayahora.futbol/#sobre-los-bloqueos – Términos de uso: el servicio es gratuito, de código abierto, y no recopila datos personales de los usuarios del plugin ni de sus visitantes.
API de Cloudflare
El plugin utiliza la API oficial de Cloudflare (https://api.cloudflare.com/client/v4/) para leer los registros DNS y alternar el estado del proxy (Proxied/DNS Only) en los registros seleccionados. Requiere las credenciales de API que tú proporcionas en los ajustes del plugin. Las credenciales se almacenan en la base de datos de WordPress y se envían vía cabeceras HTTPS a Cloudflare. – Datos enviados: credenciales de API (en cabeceras), modificaciones de registros DNS (record ID, tipo, nombre, contenido, estado proxied). – URL: https://api.cloudflare.com/ – Términos del servicio: https://www.cloudflare.com/terms/ – Política de privacidad: https://www.cloudflare.com/privacypolicy/
Servicios de detección de IP del servidor
El plugin detecta la dirección IP de salida de tu servidor (mostrada en la página de Ajustes) consultando tres servicios públicos. Solo se devuelve la IP propia del servidor; no se transmite ningún dato personal ni de visitantes. Los resultados se cachean durante 1 hora. – https://api.ipify.org/ – Proporcionado por ipify. Política de privacidad: https://www.ipify.org/ – https://checkip.amazonaws.com/ – Proporcionado por Amazon Web Services. Política de privacidad: https://aws.amazon.com/privacy/ – https://icanhazip.com/ – Proporcionado por Cloudflare. Política de privacidad: https://www.cloudflare.com/privacypolicy/
Enlaces de afiliado
The plugin’s operation page includes affiliate links clearly marked with «(aff)» to VPN services and security tools. These links are optional and do not affect the plugin’s functionality.
Cron y automatización
¿Cómo funciona el sistema de cron?
El plugin utiliza el cron interno de WordPress (wp_cron), que se ejecuta cuando hay visitas en el sitio web. Esto suele ser suficiente para la mayoría de sitios.
¿Y si mi sitio tiene poco tráfico y el cron no se ejecuta con regularidad?
Go to Settings > ES Football Bypass for Cloudflare and copy the token from the «External cron» section. With that token you can set up a real server cron:
*/15 * * * * curl -s «https://tudominio.com/wp-cron.php?cfbcolorvivo_cron=1&token=TU_TOKEN_AQUI» > /dev/null 2>&1
Puedes regenerar el token borrando el campo y guardando los ajustes (se creará uno nuevo). Este endpoint solo ejecuta la comprobación del plugin, sin depender de las visitas.
What is the «Cooldown after disabling Cloudflare»?
This is the waiting time (default 60 minutes) that the plugin respects before checking if Cloudflare can be re-enabled after detecting a block. During this period, the proxy remains in «DNS Only» mode even if the JSON stops marking the domain, avoiding rapid activation/deactivation cycles.
¿Cómo verifico que el cron funciona correctamente?
In the Operation tab, click «WP-Cron Diagnostics» to see the next execution and the result of the last check. You can also review the integrated logs.
Logs y auditoría
¿Dónde puedo ver el historial de acciones?
In the ES Football Bypass for Cloudflare > Logs menu. It shows the latest automatic executions (internal or external cron) and manual actions with date, detail, and user.
¿Puedo desactivar el registro de logs?
Yes. In Settings > ES Football Bypass for Cloudflare you can disable logging or adjust retention days (minimum 1). Logs are stored in the uploads directory under es-football-bypass-for-cloudflare/logs/ protected with .htaccess.
¿Cómo verifico que el cron funciona correctamente?
You can check if it’s scheduled in Tools > Site Health > Info > Scheduled Events, looking for the ‘cfbcolorvivo_check_football_status’ event. You can also review WordPress error logs where the plugin records all its actions.
Requisitos del servidor
- WordPress 5.0 o superior
- PHP 7.4 o superior
- Extensiones PHP: curl, json
- Permisos: capacidad de hacer peticiones HTTP salientes
- Cron: sistema de cron de WordPress funcional
Soporte
- Autor: David Carrero Fernandez-Baillo
- Sitio web: https://carrero.es
- Contacto: https://carrero.es/contacto/
Si necesitas ayuda, envía un mensaje directo en X o usa el formulario de contacto. Issues y mejoras también son bienvenidas en el repositorio: https://github.com/dcarrero/cf-football-bypass
Este plugin nació de la necesidad real de proteger sitios web legítimos de los bloqueos masivos que afectan a la industria digital española durante los eventos deportivos.
Casos de uso específicos
Sitios de alto tráfico – Permite seleccionar solo los registros críticos (www, dominio raíz) – Mantiene otros servicios (mail, ftp, etc.) siempre proxied – Minimiza el impacto en CDN y caché
Sitios con múltiples subdominios – Control granular por subdominio – Estrategias diferentes para servicios diferentes – Flexibilidad total de configuración
Emergencies and Manual Override – Manual control buttons for special situations – Does not depend solely on automatic detection – Allows quick reaction to failures
Licencia
GPLv2 o posterior. Eres libre de usar, modificar y distribuir este plugin bajo los términos de la GPL.
