Hacker La Red OscuraHacker La Red Oscura

Loading

Cuando se producen bloqueos hacia servicios protegidos por Cloudflare, muchos usuarios optan por activar una VPN global. El inconveniente es claro: todo el tráfico pasa por el túnel, afectando rendimiento y latencia.

La solución que vamos a implementar aquí consiste en aplicar policy routing, enviando exclusivamente el tráfico cuyo destino sean redes de Cloudflare a través de una VPN WireGuard, manteniendo el resto del tráfico por la salida WAN habitual.

El procedimiento está probado sobre:

  • pfSense CE 2.8.1
  • pfSense Plus
  • OPNsense
  • RouterOS

Nivel técnico requerido

Esta configuración no es básica. Es necesario conocer:

  • Creación de interfaces virtuales
  • Gestión avanzada de gateways
  • Reglas de firewall con gateway específico
  • Conceptos de WireGuard
  • Alias dinámicos

Se recomienda probar primero en laboratorio.

1. Requisitos previos

Router compatible

No es viable en routers domésticos convencionales. Se requiere:

  • Cliente WireGuard u OpenVPN
  • Soporte de interfaz virtual del túnel
  • Creación de alias
  • Policy routing por gateway

Hardware mínimo recomendado

ElementoMínimoRecomendado
CPUx86-64 1 GHzIntel i5 o superior
RAM2 GB4–8 GB
Disco32 GB256 GB
Interfaces23 o más

2. Servicio VPN

Necesitamos un proveedor que ofrezca configuración WireGuard descargable.

Opciones habituales:

AlternativaProtocoloCosteUso recomendado
Cloudflare WARPWireGuardGratisPruebas

3. Instalación de WireGuard en pfSense

Acceder a:

System → Package Manager → Available Packages

Instalar paquete WireGuard.

4. Configuración del túnel WireGuard

Ir a:

VPN → WireGuard → Add Tunnel

Ejemplo de archivo de configuración

Este sería un ejemplo típico proporcionado por el proveedor:

[Interface]
PrivateKey = xxxxx
Address = 10.10.0.2/32
DNS = 1.1.1.1[Peer]
PublicKey = yyyyy
PresharedKey = zzzzz
AllowedIPs = 0.0.0.0/0
Endpoint = vpn.ejemplo.com:51820
PersistentKeepalive = 25

Parámetros del túnel

En la sección Add Tunnel:

  • Enable → activado
  • Description → WG_TUNEL
  • Listen Port → opcional
  • Interface Keys → pegar PrivateKey

Guardar.

Configuración del Peer

Seleccionar Add Peer y definir:

  • Enable → activado
  • Tunnel → WG_TUNEL
  • Dynamic Endpoint → desactivado
  • Endpoint → vpn.ejemplo.com
  • Port → 51820
  • Keepalive → 25
  • Public Key → yyyyy
  • Preshared Key → zzzzz (si existe)
  • Allowed IPs → 0.0.0.0 / 0

Guardar.

Activar servicio

Ir a:

VPN → WireGuard → Settings

Marcar Enable.

Verificar estado en:

Status → WireGuard

Debe existir intercambio de handshake.

5. Asignación de interfaz

Ruta:

Interfaces → Assignments

En Available Network Ports seleccionar:

tun_wg0

Add → Save → Apply.

Editar interfaz creada:

  • Enable
  • Description → WG_TUNEL
  • IPv4 Configuration Type → Static IPv4
  • IPv6 → None
  • IPv4 Address → 10.10.0.2 /32

Guardar y aplicar.

6. Configuración del Gateway

Ir a:

System → Routing → Gateways → Add

Definir:

  • Interface → WG_TUNEL
  • Address Family → IPv4
  • Name → GW_WIREGUARD
  • Gateway → 10.10.0.2
  • Monitor IP → 10.10.0.1
  • Gateway Monitoring → desactivado
  • Gateway Action → desactivado

En Advanced activar:

✔ Use non-local gateway through interface specific route

Guardar y aplicar cambios.

7. Creación de Alias

Ir a:

Firewall → Aliases

Alias de origen

Nombre: ORIGEN_VPN
Tipo: Host(s)

Añadir IPs locales que queremos que puedan tunelizar tráfico hacia Cloudflare.

Guardar.

Alias de destino (Cloudflare)

Obtener listado oficial de redes IPv4 desde:

Cloudflare

URL:

https://www.cloudflare.com/ips-v4/

Crear alias:

  • Nombre → REDES_CLOUDFLARE
  • Tipo → Network(s)

Importar todas las subredes manualmente
o usar tipo URL con actualización cada 1 día.

Guardar y Apply Changes.

8. Creación de regla de firewall

Acceder a:

Firewall → Rules → LAN

Crear nueva regla (Add, al final inicialmente):

  • Action → Pass
  • Interface → LAN
  • Address Family → IPv4
  • Protocol → any
  • Source → ORIGEN_VPN
  • Destination → REDES_CLOUDFLARE

En Advanced Options:

  • Gateway → GW_WIREGUARD

Guardar.

⚠ Reordenar la regla y colocarla en segunda posición.

Si permanece al final, quedará anulada por reglas superiores.

9. Comprobación del funcionamiento

Ejecutar desde un equipo cliente:

tracert 104.16.0.1

La ruta debe salir por el túnel VPN.

Probar con otro destino fuera de Cloudflare: debe salir por WAN.

Problemas frecuentes

SíntomaPosible causa
No pasa tráfico por VPNRegla mal posicionada
Gateway aparece DownMonitor IP incorrecta
Sin handshakeEndpoint o claves erróneas
Todo el tráfico usa VPNAllowedIPs mal definido

Resultado final

Tras completar la configuración:

  • Solo tráfico con destino a Cloudflare se enruta por VPN
  • El resto mantiene la salida normal
  • Se minimiza impacto en latencia
  • No se altera geolocalización general