footer-logofooter-logo
VPN de sitio a sitio segura con WireGuard en VyOS 1.5 para conectividad entre sitiosVolver

VPN de sitio a sitio segura con WireGuard en VyOS 1.5 para conectividad entre sitios

Conectar varios sitios de oficina o centros de datos de forma segura y eficiente es un reto fundamental para las empresas modernas. Las soluciones VPN tradicionales como IPsec u OpenVPN pueden ser complejas de configurar y mantener, sobre todo en entornos con varios sitios. WireGuard ofrece una alternativa ligera y rápida, más sencilla de configurar. VyOS 1.5 admite WireGuard por completo, lo que lo convierte en una excelente opción para organizaciones que buscan interconectar varios centros de datos o sitios. En esta guía te mostramos cómo configurar un túnel WireGuard de sitio a sitio en VyOS 1.5. Cubrimos el enrutamiento, la configuración del firewall y las buenas prácticas. Al final, tus sitios estarán conectados de forma segura a través de internet, con el tráfico enrutado eficazmente entre las LAN.

29 de octubre de 2025

por Lachlan Roche

VyOS

WireGuard

VPN

Security

Loading...

Requisitos previos

Antes de empezar, asegúrate de tener lo siguiente:

  • VyOS 1.5 instalado en cada router perimetral que actúe como extremo de la VPN
  • Direcciones IP públicas en cada sitio/servidor
  • Acceso administrativo para configurar reglas de firewall en VyOS
  • Conocimientos básicos de enrutamiento y conceptos de redes en Linux

Topología de red

Partimos de la siguiente disposición de red:

SitioSubred LANIP del túnel WireGuardIP pública
Site A10.10.1.0/2410.200.1.1198.51.100.1
Site B10.10.2.0/2410.200.1.2203.0.113.2

Diagrama ASCII

   |   10.10.1.0/24   |        | 10.200.1.1 <--> 10.200.1.2 |       |  10.10.2.0/24   |
   |    Site A LAN   |                WireGuard Tunnel              |   Site B LAN    |
   -------------------           -------------------------          -------------------
   | VyOS Router A   |-----------|      UDP Port 51820        |-----| VyOS Router B   |
   | Public IP:      |                                              | Public IP:      |
   | 198.51.100.1    |                                              | 203.0.113.2     |
   -------------------                                              -------------------

Este diagrama muestra la conectividad lógica: el túnel WireGuard conecta de forma segura las LAN de ambos sitios, lo que permite enrutar el tráfico entre ellas a través de internet.


Paso 1: generar las claves de WireGuard

WireGuard usa pares de claves pública y privada para la autenticación. Genera las claves en cada extremo VyOS:

lachlanr@ams-01:~$ generate pki wireguard key-pair
Private key: UBpynSyGezhb9pp3Bddk/g/gdl3SM+oai02HeQ5a11E=
Public key: a/oSvpcQ3BFzmtavPT+D8Rukdc7L+eYLig3zr0wnMGU=

Este comando genera una clave privada y una clave pública. Guarda ambas de forma segura. La clave privada permanece en el router local, mientras que la clave pública se comparte con el peer remoto.

No uses estas claves exactas; usa las que genere la salida cuando ejecutes tú mismo los comandos.


Paso 2: configurar las interfaces WireGuard

En Site A, crea una interfaz WireGuard wg0 con la IP de túnel local y el puerto de escucha:

set interfaces wireguard wg0 address '10.200.1.1/24'
set interfaces wireguard wg0 listen-port '51820'
set interfaces wireguard wg0 private-key '<Site A Private Key>'

Añade Site B como peer:

set interfaces wireguard wg0 peer office-b allowed-ips '10.10.2.0/24'
set interfaces wireguard wg0 peer office-b address '203.0.113.2'
set interfaces wireguard wg0 peer office-b port '51820'
set interfaces wireguard wg0 peer office-b public-key 'a/oSvpcQ3BFzmtavPT+D8Rukdc7L+eYLig3zr0wnMGU='

Repite la configuración en Site B, intercambiando las direcciones y claves locales y remotas.


Paso 3: configurar rutas estáticas

Asegúrate de que el tráfico destinado a la LAN remota se enrute a través de la interfaz WireGuard.

  • En Site A:
set protocols static route 10.10.2.0/24 next-hop 10.200.1.2
  • En Site B:
set protocols static route 10.10.1.0/24 next-hop 10.200.1.1

Diagrama ASCII: flujo de tráfico

Site A LAN 10.10.1.0/24
       |
       |---[WireGuard wg0 10.200.1.1]---> Tunnel ---> [wg0 10.200.1.2]---|
                                                                          |
                                                                  Site B LAN 10.10.2.0/24

Esto garantiza que el tráfico LAN a LAN pase por el túnel en lugar de ir directamente por internet público.


Paso 4: configurar reglas de firewall (opcional, según la configuración)

WireGuard requiere que el tráfico UDP atraviese tu firewall, siguiendo el mismo enfoque de denegación por defecto con lista blanca que usarías en cualquier servidor. En cada sitio:

  1. Permite el tráfico UDP en el puerto de WireGuard desde la IP pública del sitio remoto
  2. Permite el tráfico entre las LAN a través de la interfaz WireGuard

Ejemplo para Site A:

set firewall name WAN_LOCAL rule 10 action accept
set firewall name WAN_LOCAL rule 10 protocol udp
set firewall name WAN_LOCAL rule 10 destination port 51820
set firewall name WAN_LOCAL rule 10 source address 203.0.113.2

Aplica las reglas de firewall a la interfaz WAN:

set interfaces ethernet eth0 firewall in name WAN_LOCAL

Paso 5: comprobar que el túnel está activo

Comprueba el estado de la interfaz WireGuard:

show interfaces wireguard

Comprueba la conectividad haciendo ping a hosts de la LAN remota:

ping 10.10.2.1

Si los pings fallan:

  • Verifica que las claves públicas y las IP de túnel sean correctas
  • Comprueba las reglas de firewall para asegurarte de que el tráfico UDP esté permitido
  • Asegúrate de que las rutas estáticas apunten a la interfaz WireGuard

También puedes configurar PMTU (Path MTU Discovery), que determina el valor de MSS correcto para el clamping.

set interfaces wireguard wg0 ip adjust-mss 'clamp-mss-to-pmtu'

Opcional: ajusta el MTU/MSS si experimentas fragmentación:

set interfaces wireguard wg0 mtu 1420

Paso 6: buenas prácticas de seguridad

  • Activa opcionalmente una clave precompartida para mayor seguridad (lo veremos en una próxima entrada)
  • Restringe allowed-ips estrictamente a las subredes necesarias
  • Monitoriza el túnel con regularidad para garantizar la conectividad y el rendimiento (con herramientas como tcpdump)

Conclusión

WireGuard en VyOS 1.5 ofrece una solución VPN ligera y de alto rendimiento para la conectividad entre sitios y centros de datos. Tras este tutorial, tus sitios ya están conectados de forma segura, con el tráfico enrutado eficazmente entre las LAN.

La simplicidad de WireGuard, el mismo protocolo detrás de las VPN mesh como Tailscale, Headscale y NetBird, combinada con las sólidas capacidades de enrutamiento de VyOS, garantiza una arquitectura de red segura y fácil de mantener, adecuada para organizaciones modernas con varios sitios.


Lachlan Roche

Escrito por

Lachlan Roche

Network Engineer, Serverside.com

Lachlan is a network engineer at Serverside.com, where he works on the Arista backbone, public IPv4/IPv6 address space and real-time gNMI network telemetry. He also operates his own autonomous system (AS25735) and writes hands-on guides on routing, VPNs and network automation on bare metal.