Un plugin para WordPress de Carles Mateo. Bloquea IPs abusivas y escáneres de URL
(.env,
wp-config.php,
.git y patrones personalizados).
Reglas manuales de bloqueo de IPs y rangos, recogida automática de infractores, exportación a CSV y ufw.
Descripción
PHP Firewall protege tu sitio bloqueando a los visitantes abusivos lo antes posible en la petición, antes de que WordPress termine de cargarse.
Cuando la protección está activada, se comprueba cada petición:
Firmas de escáner incorporadas: .env, wp-config.php, .git.
También puedes añadir tus propios patrones de texto.
Elige qué cabecera lleva la IP real del visitante: REMOTE_ADDR,
Cloudflare (CF-Connecting-IP), X-Forwarded-For,
X-Real-IP o una cabecera personalizada, para que el plugin funcione correctamente
detrás de nginx, Varnish, un balanceador de carga o una CDN.
Cuando la protección está activada, el plugin instala un pequeño cargador must-use para que la
comprobación se ejecute en muplugins_loaded. Si el directorio mu-plugins no tiene
permisos de escritura, recurre a plugins_loaded.
ufw insert 1 deny from 185.225.69.214 to any.Especificaciones
Instalación
php-firewall a /wp-content/plugins/, o instala
el zip desde Plugins → Añadir nuevo → Subir plugin.Preguntas frecuentes
Sí. En la configuración, elige la cabecera que lleva la IP real del cliente en tu caso. Solo confía en una cabecera reenviada si tu servidor está realmente detrás de ese proxy; de lo contrario el valor se puede falsificar.
No se bloquea nada y no se recogen infractores. Las reglas existentes se conservan.
En tres tablas propias: cmwpfw_firewall_config,
cmwpfw_firewall_manual_ip_deny_rules y
cmwpfw_firewall_automatic_ip_deny_rules.
Sí. Exporta los infractores automáticos como script de ufw o como CSV desde la página de configuración.
Captura de pantalla