WireGuard en MikroTik RouterOS 7: acceso seguro a tu red desde fuera

Captura real de WinBox en la documentación oficial de MikroTik
WinBox de MikroTik: captura real de la documentación oficial

Acceder a la red de casa o de la oficina desde fuera es una necesidad cada vez más habitual: consultar un NAS, entrar a Home Assistant, revisar una cámara, administrar un servidor interno o conectarse a recursos de trabajo. La tentación rápida es abrir puertos hacia esos servicios. La opción más segura suele ser otra: entrar primero por una VPN.

En MikroTik, desde RouterOS 7, una de las mejores opciones para este escenario es WireGuard. Es rápido, moderno, relativamente sencillo de mantener y funciona muy bien en móviles, portátiles y conexiones entre sedes. En este artículo vemos cómo plantear una configuración básica para acceder a una red privada desde Internet sin exponer servicios internos directamente.

Captura real de WinBox en la documentación oficial de MikroTik
Captura real y genérica de WinBox tomada de la documentación oficial de MikroTik. Aunque no muestra WireGuard, sirve como referencia visual del entorno de administración.

Por qué WireGuard en MikroTik

WireGuard parte de una idea simple: cada dispositivo tiene un par de claves criptográficas. El router conoce la clave pública de cada cliente y cada cliente conoce la clave pública del router. No hay usuarios y contraseñas tradicionales para fuerza bruta, sino pares de claves y reglas de red.

  • Reduce la superficie expuesta a Internet.
  • Permite acceder a servicios internos sin publicarlos uno a uno.
  • Es más ligero que muchas VPN clásicas.
  • Encaja muy bien con reglas de firewall por IP, interfaz o usuario.
  • Funciona en Windows, macOS, Linux, iOS y Android.

Escenario de ejemplo

Tomemos como ejemplo una red doméstica avanzada o una pequeña oficina:

  • LAN principal: 192.168.100.0/24.
  • Router MikroTik: 192.168.100.1.
  • Red WireGuard: 10.50.0.0/24.
  • IP del router en WireGuard: 10.50.0.1.
  • Primer cliente VPN: 10.50.0.2.
  • Puerto WireGuard: 51820/udp.

Los rangos son solo un ejemplo. Conviene adaptarlos a cada instalación, especialmente para evitar solapamientos con otras redes desde las que te puedas conectar.

Terminal RouterOS con comandos de ejemplo para WireGuard
Terminal RouterOS de ejemplo no real

1. Crear la interfaz WireGuard

En RouterOS la configuración empieza creando una interfaz WireGuard:

/interface wireguard
add name=wg-roadwarrior listen-port=51820 mtu=1420

Después se asigna una IP a esa interfaz:

/ip address
add address=10.50.0.1/24 interface=wg-roadwarrior comment="WireGuard Road Warrior"

El router generará la clave pública de la interfaz. Esa clave será la que usaremos en la configuración del cliente como clave pública del servidor.

2. Añadir un cliente o peer

Cada dispositivo que se conecte debe tener su propia clave. No es recomendable reutilizar la misma configuración en varios móviles o portátiles, porque después será más difícil revocar accesos o auditar qué dispositivo está conectado.

/interface wireguard peers
add interface=wg-roadwarrior public-key="CLAVE_PUBLICA_DEL_CLIENTE" allowed-address=10.50.0.2/32 comment="Portatil Antonio"

Para clientes individuales, usar /32 en allowed-address ayuda a mantener el control: una IP concreta para un peer concreto.

3. Abrir el puerto en el firewall

Crear la interfaz no significa que Internet pueda llegar a ella. Hay que permitir el puerto UDP elegido en la cadena input del firewall:

/ip firewall filter
add chain=input action=accept protocol=udp dst-port=51820 in-interface-list=WAN comment="Permitir WireGuard desde Internet"

El orden es importante. Esta regla debe estar antes de la regla general que bloquea tráfico entrante desde la WAN. Si tu configuración no usa in-interface-list=WAN, tendrás que adaptarla a la interfaz real de Internet.

4. Definir qué puede ver el cliente VPN

Una vez conectado, el cliente no debería tener acceso ilimitado por defecto. Puedes permitir acceso a toda la LAN:

/ip firewall filter
add chain=forward action=accept src-address=10.50.0.0/24 dst-address=192.168.100.0/24 comment="VPN WireGuard hacia LAN"

Pero muchas veces es mejor limitarlo a servicios concretos. Por ejemplo, permitir que un portátil acceda solo a un NAS:

/ip firewall filter
add chain=forward action=accept src-address=10.50.0.2 dst-address=192.168.100.105 comment="Portatil VPN hacia NAS"

Este enfoque de mínimo privilegio es especialmente importante si vas a crear peers para familiares, colaboradores o dispositivos que no controlas al 100%.

5. Configuración del cliente

En el móvil o portátil, la configuración tendría esta forma:

[Interface]
PrivateKey = CLAVE_PRIVADA_DEL_CLIENTE
Address = 10.50.0.2/32
DNS = 192.168.100.1

[Peer]
PublicKey = CLAVE_PUBLICA_DEL_MIKROTIK
Endpoint = tu-dominio-o-ip-publica:51820
AllowedIPs = 192.168.100.0/24
PersistentKeepalive = 25

AllowedIPs define qué tráfico se enviará por el túnel. Si solo quieres entrar a la red de casa, basta con el rango interno. Si quieres que todo el tráfico del cliente salga por casa, usarías 0.0.0.0/0, pero entonces hay que revisar NAT, DNS y rendimiento.

Errores habituales

  • Crear la interfaz pero olvidar abrir el puerto UDP en el firewall.
  • Poner la regla de aceptación por debajo del bloqueo general de WAN.
  • Usar rangos de red solapados con la red desde la que te conectas.
  • Dar acceso a toda la LAN cuando solo hace falta un servicio concreto.
  • Reutilizar claves en varios dispositivos.
  • No documentar qué IP y qué peer corresponde a cada usuario.

Buenas prácticas antes de dejarlo en producción

  • Haz un backup y un export de la configuración antes de tocar firewall.
  • Actualiza RouterOS a una versión estable reciente.
  • Usa una IP distinta por peer.
  • Revoca peers que ya no se usen.
  • Limita el tráfico con reglas de forward específicas.
  • Evita exponer NAS, cámaras o paneles de domótica directamente a Internet.
  • Si tienes IP dinámica, usa DDNS o un dominio actualizado automáticamente.

Conclusión

WireGuard en MikroTik RouterOS 7 es una solución muy práctica para acceder a tu red de forma segura desde fuera. La configuración básica es relativamente corta, pero los detalles marcan la diferencia: reglas en el orden correcto, rangos bien elegidos, claves separadas por dispositivo y permisos mínimos.

Mi recomendación es empezar con un único cliente, probar desde una red externa —por ejemplo datos móviles— y limitar el acceso a los servicios que realmente necesitas. A partir de ahí puedes añadir más dispositivos, perfiles por usuario o incluso túneles entre sedes.

Referencia técnica: documentación oficial de MikroTik RouterOS sobre WireGuard.