WireGuard funciona de forma nativa en OpenWrt, lo que convierte un solo router en una puerta de enlace VPN para toda la red o en un servidor de acceso remoto a tu casa. Esta guía configura WireGuard en un router OpenWrt de principio a fin en 2026: instalar el paquete y luego dos configuraciones reales — OpenWrt como cliente (sacar todo el LAN por un par remoto) y OpenWrt como servidor (llegar a tu red de casa desde cualquier sitio).
Respuesta rápida: OpenWrt puede ejecutar WireGuard de forma nativa. Instala el paquete luci-proto-wireguard y luego crea una interfaz WireGuard en Network > Interfaces en LuCI. Ejecuta OpenWrt como cliente para enviar todo el tráfico del LAN por un par VPN remoto, o como servidor para dar a los dispositivos remotos acceso a tu red de casa. Lo difícil rara vez son las claves — es la zona de firewall y el enrutamiento, así que la mayoría de los problemas de « sin handshake » o « sin internet » se resuelven ahí.

Lo que necesitas antes de empezar
- Un router con OpenWrt con suficiente flash y RAM libres para los paquetes de WireGuard. Los dispositivos de muy poca flash (4/32 MB) pueden no tener espacio — comprueba primero el almacenamiento libre de tu equipo.
- Un par WireGuard al que conectarte. En modo cliente es el servidor remoto por el que sales; en modo servidor son los dispositivos remotos que se reconectarán. Un servidor autoalojado en un VPS Contabo es un par fiable que controlas por completo.
- Las claves y el endpoint del otro lado: en modo cliente, la clave pública del servidor y su
host:puertoalcanzable. Cada par tiene su propio par de claves — reutilizar una clave entre dispositivos rompe el handshake.
Si el protocolo en sí es nuevo para ti, nuestra explicación qué es WireGuard cubre la criptografía y por qué es más rápido que OpenVPN.
Paso 1 — Instalar el soporte de WireGuard
WireGuard no siempre viene preinstalado, así que añade los paquetes. Por SSH:
opkg update
opkg install luci-proto-wireguard wireguard-tools
luci-proto-wireguard añade el protocolo WireGuard a la interfaz web LuCI, y wireguard-tools te da el comando wg para generar claves e inspeccionar túneles. También puedes instalarlos desde System > Software en LuCI si prefieres la interfaz. Tras instalar, recarga LuCI para que aparezca el nuevo protocolo.
Paso 2 — Generar las claves
Cada extremo de un túnel WireGuard tiene un par de claves privada/pública. En OpenWrt, genera una con wireguard-tools:
wg genkey | tee privatekey | wg pubkey > publickey
Guarda la clave privada en este router y comparte solo la clave pública con el otro par. Si OpenWrt es el cliente, también necesitarás la clave pública del servidor; si OpenWrt es el servidor, reúnes la clave pública de cada cliente que se vaya a conectar.
Caso A — OpenWrt como cliente WireGuard (sacar todo el LAN)
En modo cliente, cada dispositivo del LAN sale por el par remoto — un túnel completo para toda la red de casa.
- Crea la interfaz. En LuCI ve a Network > Interfaces > Add new interface, dale un nombre (p. ej.
wg0) y elige WireGuard VPN como protocolo. - Rellena la interfaz. Pon la Private Key (la clave de este router) y la dirección IP que este router toma dentro del túnel (la dirección que asignó tu servidor, p. ej.
10.0.0.2/24). - Añade el par. En la pestaña Peers añade el servidor: su Public Key, su Endpoint host y su Endpoint port, Allowed IPs =
0.0.0.0/0(y::/0para IPv6) para un túnel completo, y Persistent Keepalive =25para que el camino sobreviva al NAT. - Zona de firewall. Asigna la interfaz
wg0a una zona de firewall. La configuración más simple que funciona es ponerla en la zona wan (o una zona dedicada con permiso para reenviar desde lan y con el masquerading activado), para que el tráfico del LAN salga con NAT por el túnel. - DNS. Pon el DNS del túnel en tu servidor o en un resolutor de confianza para que las consultas no se filtren a tu proveedor.
Cuando funciona, la IP pública de cada dispositivo del LAN pasa a ser la del servidor.
Caso B — OpenWrt como servidor WireGuard (acceso remoto a tu red de casa)
En modo servidor, OpenWrt escucha conexiones entrantes para que tu móvil o portátil llegue al LAN de casa desde cualquier sitio.
- Crea la interfaz de la misma forma (Network > Interfaces, protocolo WireGuard VPN), dale al router su Private Key y una dirección IP del lado VPN (p. ej.
10.0.0.1/24), y fija un Listen Port (normalmente51820). - Abre / reenvía el puerto UDP. Permite el puerto UDP elegido de entrada en el firewall. Si OpenWrt está detrás de otro módem/router, reenvía ese puerto UDP al equipo OpenWrt; si tu proveedor usa CGNAT, lo entrante puede ser totalmente inalcanzable — consulta el DNS dinámico para autoalojamiento.
- Añade cada cliente como par. Para cada dispositivo remoto añade un Peer con su Public Key y las Allowed IPs puestas en la IP de túnel de ese cliente (p. ej.
10.0.0.2/32). Para que los clientes lleguen a todo el LAN de casa, incluye tu subred LAN (p. ej.192.168.1.0/24) en la config del cliente y permite el reenvío. - Reenvío del firewall. Pon la interfaz WireGuard en una zona con permiso para reenviar hacia lan, para que los clientes conectados lleguen a los dispositivos locales.
Anatomía de la configuración
OpenWrt lo guarda en /etc/config/network, pero la forma refleja una configuración WireGuard estándar. Aquí está con marcadores explícitos — nunca pegues claves reales sacadas de una guía; cada dispositivo genera las suyas:
[Interface]
PrivateKey = <clave-privada-de-este-router>
Address = 10.0.0.1/24
ListenPort = 51820
[Peer]
PublicKey = <clave-publica-del-otro-par>
Endpoint = <host-o-ip-del-par>:51820
AllowedIPs = 10.0.0.2/32
PersistentKeepalive = 25
PrivateKey— la clave secreta de este router, guardada localmente.Address— la IP del router dentro del túnel.ListenPort— solo necesaria cuando OpenWrt es el servidor.PublicKey— la clave pública del otro par (la del servidor, en modo cliente).Endpoint— elhost:puertoalcanzable del par (solo el lado cliente lo necesita para un túnel saliente).AllowedIPs— lo que pasa por el túnel:0.0.0.0/0para un túnel completo (cliente), o una subred de túnel/LAN concreta (servidor).PersistentKeepalive = 25— mantiene el camino activo detrás de un NAT.
Solución de problemas en OpenWrt
- Sin handshake: casi siempre un problema de firewall — la interfaz WireGuard no está en una zona, o la zona no puede reenviar. Revisa el Endpoint (host/puerto) y que el puerto UDP del servidor esté abierto; confirma que las claves públicas coinciden; recuerda que un servidor casero detrás de CGNAT puede ser inalcanzable de entrada. Más en nuestra guía de solución de problemas de handshake.
- Conectado pero sin internet (modo cliente): la zona WireGuard necesita masquerading, y el reenvío lan → wg debe estar permitido; si no, el tráfico LAN con NAT no tiene salida.
- MTU: WireGuard usa por defecto 1420; en un WAN PPPoE, 1412 es un valor que funciona a menudo. Si unos sitios se cuelgan, baja el MTU de la interfaz paso a paso — consulta nuestra guía de MTU de WireGuard.
- El DNS no se aplica: pon el DNS en la interfaz WireGuard (o empújalo vía firewall/DHCP) para que los clientes del LAN usen el resolutor del túnel en lugar del del proveedor.
- Kill-switch: enruta todo el LAN solo por la zona WireGuard y bloquea lan → wan directo, para que el tráfico se detenga si el túnel cae en vez de filtrarse por el WAN normal.
Cliente vs servidor de un vistazo
| OpenWrt como cliente | OpenWrt como servidor | |
|---|---|---|
| Objetivo | Sacar todo el LAN por un par remoto | Permitir que dispositivos remotos lleguen al LAN de casa |
| AllowedIPs | 0.0.0.0/0 (túnel completo) | IP de túnel del cliente + subred LAN |
| Listen port | No requerido | Requerido (p. ej. 51820, abierto de entrada) |
| Firewall | zona wg → wan, masquerade, reenvío lan→wg | zona wg con permiso de reenvío hacia lan |
| Endpoint | Apunta al servidor remoto | Los clientes apuntan al router OpenWrt |
En resumen
OpenWrt convierte WireGuard en una función a nivel de router: instala luci-proto-wireguard, crea la interfaz en Network > Interfaces y elige cliente (VPN para todo el LAN) o servidor (acceso remoto). Casi todos los fallos vienen de la zona de firewall o el enrutamiento, no de las claves. Para el par del otro extremo, un VPS Contabo a 5,50 €/mes ejecuta un servidor WireGuard personal al que tu router OpenWrt puede marcar, sin claves compartidas y con control total.
Guía editorial basada en el comportamiento documentado del soporte WireGuard de OpenWrt (luci-proto-wireguard / LuCI). Los menús exactos varían ligeramente según la versión de OpenWrt. Los enlaces comerciales llevan el atributo rel="sponsored nofollow"; puede aplicarse una comisión de afiliación sin coste adicional para ti.
★ Datacenter Núremberg GDPR · ✓ IPv4 dedicada incluida · 200+ Mbps garantizados
Aloja tu VPN en tu propio VPS → ContaboAcceso root completo · IPv4 pública · elige tu región→
