Flarum
La integración oficial de ProxyTracer para Flarum. Esta extensión trae inteligencia IP corporativa a tu comunidad, detectando automáticamente VPNs, proxies, centros de datos y nodos Tor conocidos, ofreciéndote la opción de evitar su registro, inicio de sesión o acceso al foro Flarum por completo.
El código fuente completo se puede encontrar en Github. La extensión se distribuye a través de Packagist.
Características
- Control granular que permite a los administradores imponer la validación IP al registrar nuevos usuarios, durante el inicio de sesión o de forma general para cualquier visitante.
- Caché nativo implementada con la API Laravel Cache de Flarum para almacenar evaluaciones recientes de IP, suprimiendo peticiones API repetidas con latencia cero.
- Ante cortes fortuitos en la red o tiempos de espera agotados, la extensión cederá el paso a los usuarios (fail-open) para no obstruir a toda tu comunidad. Puedes cambiar esta conducta en el panel de control.
-
Compatibilidad integrada para incluir listas blancas en subredes CIDR o direcciones individuales exactas (ej.
192.168.1.0/24).
Instalación
-
Conéctate a tu servidor empleando SSH y navega hasta el directorio raíz de tu instalación Flarum (en la carpeta del archivo
composer.json):cd /var/www/flarum -
Instala el módulo a través de la herramienta Composer:
composer require proxytracer/flarum-proxytracer -
Limpia la caché de tu Flarum para que el sistema recompile y muestre los nuevos recursos del frontend:
php flarum cache:clear
Configuración
- Adquiere tu clave API estándar desde el Panel de ProxyTracer.
- Ve al panel de control de tu instalación Flarum: Admin → Features → ProxyTracer para desplegar la ventana de ajustes.
-
Escribe tu clave secreta de API dentro del recuadro
API Key. -
Enciende los mecanismos de defensa alternando los conmutadores para
Block Signups(Registros),Block Logins(Logins) y/oBlock All Site Access(Cualquier acceso a web). -
Agrega direcciones IP fiables o rangos CIDR por línea dentro del área de
IP Whitelist. - (Opcional) Ajusta los parámetros del tiempo de espera y duración de la caché para moldearlos a los patrones y caudal habitual de tus usuarios.
- (Opcional) Personaliza el mensaje del rechazo (Block Message) que se muestra en las exclusiones. Entre otras cosas, puedes sugerir métodos de contacto directos por si un usuario opina que el rechazo obedece a un malentendido o falsa VPN.

Configuración de red: Cloudflare y proxys inversos
Por favor sigue con cuidado los métodos especificados debajo en consonancia con la estructura técnica de tu entorno web y red para encaminar certeramente la IP original.
Integración directa con Cloudflare (instalación estándar)
Si el servidor web de Flarum conecta hacia internet solo usando los DNS o escudo proxy en red Cloudflare, dispones del lector automático ya integrado en este plugin.
Bajo las opciones del complemento en Flarum, enciende el interruptor etiquetado Extract IPs from Cloudflare Headers.
ProxyTracer pasará a sustraer la IP real gracias al encabezado original CF-Connecting-IP remitido de forma oficial. Atención: Aplica este ajuste exclusivamente en servidores conectados frontalmente a Cloudflare. Activarlo sobre esquemas con otros entornos podría facultar a ciberataques la suplantación de la IP real alterando su propio encabezado.
Arquitectura de proxy multicapa (Cloudflare + proxy inverso local)
Esto aplica si tu foro Flarum corre envuelto bajo el mando de un panel para hosts o proxy inverso en red local (tal y como Nginx Proxy Manager, CloudPanel, Traefik, Plesk) situado de espaldas tras la red Cloudflare. Al emplearse una infraestructura de doble proxy o multiniveles no bastará activar el conmutador por cuanto es tu tarjeta y servidor interno el que retransmite la información hacia Flarum, no Cloudflare de manera directa.
Necesitas instruir a tu proxy inverso local para descodificar la dirección genuina del usuario amparándose tras CF-Connecting-IP, aunque limitándose estrictamente cuando la señal procede confirmada desde servidores de rango en Cloudflare. Admitir este parámetro sin contrastar si procede desde centros Cloudflare validados propiciará elusiones ilegales alterando la información introducida por el cibernavegante.
# IPv4 Cloudflare IPs, see [https://www.cloudflare.com/ips/](https://www.cloudflare.com/ips/)
set_real_ip_from 173.245.48.0/20;
set_real_ip_from 103.21.244.0/22;
set_real_ip_from 103.22.200.0/22;
set_real_ip_from 103.31.4.0/22;
set_real_ip_from 141.101.64.0/18;
set_real_ip_from 108.162.192.0/18;
set_real_ip_from 190.93.240.0/20;
set_real_ip_from 188.114.96.0/20;
set_real_ip_from 197.234.240.0/22;
set_real_ip_from 198.41.128.0/17;
set_real_ip_from 162.158.0.0/15;
set_real_ip_from 104.16.0.0/13;
set_real_ip_from 104.24.0.0/14;
set_real_ip_from 172.64.0.0/13;
set_real_ip_from 131.0.72.0/22;
# IPv6 Cloudflare IPs
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2c0f:f248::/32;
set_real_ip_from 2a06:98c0::/29;
real_ip_header CF-Connecting-IP;Luego acércate al segmento interno asignado para location /. Merced a los comandos antes dispuestos de exclusión Nginx asumirá confiada en $remote_addr la huella genuina exclusivamente una vez constatada la emisión legítima cruzando Cloudflare. Adopta bajo tu bloque esta distribución:
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
...
}Guarda de manera definitiva tus alteraciones y recarga el demonio web en tu host Nginx (systemctl reload nginx).
Acceso de Emergencia
cd /var/www/flarum
php flarum extension:disable proxytracer-proxytracer
php flarum cache:clearsettings, localiza el campo rotulado proxytracer.block_all, reasígnale de inmediato el valor neutro 0 por defecto y finaliza limpiando todo remanente al correr el mandato php flarum cache:clear.Licencia
El software de referencia se publica regulado y concedido conforme a la Licencia GNU Affero General Public License v3.0 (AGPLv3). Revisa tu documento local en el archivo LICENSE al consultar los detalles normativos de la licencia.