Visión General
El Geo Blocking te permite controlar qué países pueden acceder a tu sitio WordPress. Cada visita es geolocalizada por IP usando una base de datos GeoIP actualizada. Según tu configuración, puedes bloquear (Blacklist) o permitir (Whitelist) países específicos.
Mientras que Attack Protection bloquea vectores de ataque (SQLi, XSS, LFI) y otras reglas bloquean IPs maliciosas, Geo Blocking filtra por nacionalidad geográfica — sin importar si la IP tiene buen historial o no.
¿Qué lo hace único?
- Filtra por país, no por IP individual
- Ideal para sitios con audiencia regional conocida
- Complementa otras protecciones sin reemplazarlas
¿Cuándo usarlo?
- Sitio regional que solo opera en ciertos países
- Ataques masivos desde regiones específicas
- Cumplimiento normativo (GDPR, protección de datos local)
geo_blocking
Estrategia: Blacklist vs Whitelist
La primera decisión es elegir entre dos estrategias excluyentes. La que elijas determina cómo se evalúa cada visita.
Blacklist (Recomendada)
Bloquea solo los países que selecciones. El resto del mundo puede acceder normalmente.
✅ Ideal para:
- Sitios globales que quieren bloquear regiones de alto riesgo
- Menor riesgo de bloquear visitantes legítimos
Whitelist
Solo permite los países que selecciones. Todo el resto queda bloqueado.
✅ Ideal para:
- Sitios con audiencia 100% regional (ej: solo España)
- Máxima seguridad geográfica
Modos de Acción
Una vez definida la estrategia, el modo determina cómo se manejan las visitas que caen dentro de las reglas.
📊 Solo registrar (log)
No bloquea nada. Registra en el log cada visita que sería bloqueada según tu estrategia. Es la opción recomendada inicialmente para calibrar tu configuración sin riesgo.
🧮 Challenge Matemático
Muestra una página con una suma sencilla (ej. 4 + 7 = ?) que el visitante debe resolver para continuar. La página responde con estado HTTP 429. Si acierta, se le deja pasar durante 1 hora sin volver a pedirle el desafío. Si falla, puede reintentar.
🚫 Bloqueo Directo
Bloquea con una página de "acceso denegado" (403 Forbidden). Sin verificación ni segunda oportunidad. Úsala solo cuando estés seguro de tu configuración después de haber validado en "Solo registrar" y "Challenge Matemático".
🔒 Bloqueo Mínimo
Igual de restrictivo que el Bloqueo Directo (403), pero sin la página con diseño: muestra únicamente el texto plano 403 Forbidden - Geo-Blocking. Útil si prefieres no mostrar tu marca ni detalles al tráfico bloqueado.
Selección de Países
El selector de países incluye aproximadamente 80 países con búsqueda en tiempo real y selección múltiple. Puedes escribir para filtrar o marcar/desmarcar manualmente.
Acceso directo a países de alto riesgo
El botón "+ Alto riesgo" marca automáticamente estos cinco países con alta actividad maliciosa reportada:
geo_blocking.countries — Tecla de ayuda contextual para el selector de países.
Contextos de Aplicación
El Geo Blocking puede aplicarse a diferentes partes del sitio. Elegir el contexto correcto es clave para evitar falsos bloqueos en áreas públicas.
🔒 wp-admin Recomendado
Aplica geo-bloqueo solo al panel de administración. Los visitantes del front-end no se ven afectados. Ideal para proteger el acceso de administración sin impactar la experiencia pública.
🔑 Login / Registro Recomendado
Protege las páginas de inicio de sesión, registro y recuperación de contraseña. Detiene la creación de cuentas y ataques de fuerza bruta desde países no deseados.
📮 POST Requests
Aplica el filtro solo a peticiones POST (envíos de formularios, comentarios, compras). GET requests no se evalúan. Útil para frenar spam en formularios sin afectar la navegación.
🌐 Todo el tráfico Riesgoso
Aplica geo-bloqueo a todas las peticiones, incluyendo front-end, APIs, REST, cron, etc. No recomendado salvo en casos muy específicos (intranet, sitios con audiencia 100% local).
Rutas de excepción
Puedes definir rutas que queden excluidas del geo-bloqueo. Útil para APIs públicas, webhooks, o páginas que deben ser accesibles globalmente. Soporta comodines (*).
Registro y Monitoreo
Cada evento de Geo Blocking se registra en el log del firewall con la siguiente información:
📋 Información registrada
- IP del visitante
- País detectado
- Contexto (wp-admin, login, POST, all)
- URL solicitada
- Acción tomada (Monitor, Challenge, Block)
📊 Cómo usar los logs
- Activa Monitor y espera 48 horas
- Revisa qué países aparecen más en los logs
- Ajusta tu selección de países si ves actividad legítima bloqueada
- Pasa a Challenge cuando estés conforme
Limitaciones
El Geo Blocking es una herramienta poderosa, pero tiene limitaciones importantes que debes conocer antes de implementarlo.
🌍 Geolocalización por IP
La geolocalización se basa en bases de datos GeoIP que asignan direcciones IP a países. No es 100% precisa. Una IP puede aparecer en un país vecino, cambiar de dueño, o estar mal clasificada. La precisión típica es del 95-99% para países, pero puede ser menor para IPs móviles o de empresas multinacionales.
🔓 VPN / Proxy Evasión
Cualquier visitante con una VPN, proxy o la red Tor puede falsear su país de origen. Geo Blocking no detecta ni bloquea VPNs automáticamente. Un atacante en un país bloqueado puede elegir un servidor VPN en un país permitido y evadir la restricción. Esta es la limitación más importante del geo-bloqueo.
📡 Base de datos GeoIP
El plugin usa una base de datos GeoIP local que se actualiza periódicamente. Si la base de datos está desactualizada, algunos países pueden estar mal clasificados o faltar IPs nuevas. La actualización automática ocurre una vez al mes, pero depende de la conectividad del servidor con seensecure.com.
📱 IPs compartidas / CDN
Los visitantes detrás de un CDN (Cloudflare, Akamai) o con IPs compartidas (operadoras móviles, NAT) pueden mostrar el país del CDN o del gateway, no su ubicación real. Si usas Cloudflare, el plugin detecta la cabecera CF-IPCountry para mejorar la precisión.