# Cómo configurar una VPN con WireGuard en Linux

**Categoría:** Linux · **Nivel:** Intermedio · **Lectura:** 19 min
**Publicada:** 2026-07-28 · **Actualizada:** 2026-07-28 · **Autoría:** Underc0de
**Versión HTML (canónica):** https://underc0de.org/guias/linux/como-configurar-una-vpn-con-wireguard-en-linux/

## Respuesta rápida

**WireGuard** es una **VPN** (red privada virtual) moderna que se ha convertido en el nuevo estándar por tres virtudes: **simplicidad, rendimiento y seguridad**. Una VPN crea un **túnel cifrado** entre dos puntos por una red no confiable (internet), de modo que el tráfico viaja protegido, como si los equipos estuvieran en la misma red privada. Las VPN tradicionales como **OpenVPN** e **IPsec** hacen esto bien, pero son **complejas de configurar** —muchas opciones, certificados, archivos largos—. WireGuard le dio la vuelta con un diseño **minimalista**: está **integrado en el kernel de Linux** (no es un programa aparte, es parte del sistema), su código es diminuto comparado con las alternativas (más fácil de auditar y con menos superficie de fallos), y su configuración cabe en **unas pocas líneas**. El modelo mental clave es el de **pares** (*peers*): en WireGuard no hay un «servidor» y un «cliente» en sentido rígido, sino **pares que se conocen entre sí**. Cada par tiene un **par de claves** —una privada (secreta) y una pública (que comparte)—, exactamente como el [cifrado asimétrico](../../seguridad-informatica/cifrado-simetrico-y-asimetrico-desde-cero/index.md). Para conectar dos equipos, cada uno conoce la **clave pública** del otro y qué IPs le corresponden dentro del túnel. Eso es casi todo: con las claves intercambiadas y unas pocas líneas de configuración por lado, el túnel cifrado queda establecido. En Linux, montar un túnel WireGuard es: generar las claves de cada par, escribir un archivo de configuración corto en cada uno (con su clave privada, la pública del otro, y las IPs del túnel), y levantar la interfaz. Los usos legítimos son muchos: acceder de forma segura a tu red doméstica o a tu servidor desde fuera, conectar oficinas, o proteger tu tráfico en redes no confiables —siempre en **equipos propios o con autorización**—. Frente a OpenVPN/IPsec, WireGuard gana en simplicidad, velocidad de conexión y rendimiento; las otras conservan ventaja en ciertos escenarios corporativos muy específicos.

## Qué es WireGuard

**WireGuard** es un software de **VPN** —red privada virtual— que crea túneles cifrados entre equipos. Da por sabido [qué es una VPN](../../redes/que-es-una-vpn-como-configurarla/index.md) (un túnel cifrado que protege el tráfico y conecta equipos como si estuvieran en la misma red local) y aporta una **forma nueva de hacerlo**. Su gran mérito es haber logrado que una VPN sea a la vez **simple, rápida y segura**, tres cosas que antes parecían difíciles de conjugar. Está **integrado en el kernel de Linux** desde hace varias versiones, lo que significa que forma parte del propio sistema operativo y funciona con mucho rendimiento, y su diseño es deliberadamente **minimalista**.

> **Por qué la simplicidad es una virtud de seguridad**
>
> El diseño minimalista de WireGuard no es solo por comodidad: es una **decisión de seguridad**. Su código es una fracción del de OpenVPN o IPsec —miles de líneas frente a cientos de miles—. Menos código significa **menos superficie donde puede haber fallos** y que es **más fácil de auditar**: revisores independientes pueden leerlo entero y buscar problemas, algo inviable en un proyecto enorme. Además, WireGuard no ofrece un menú interminable de opciones criptográficas configurables (donde es fácil elegir mal), sino que usa un **conjunto fijo de criptografía moderna**, ya elegida por sus autores. Eso elimina toda una clase de errores de configuración —el usuario no puede «configurar mal el cifrado» porque no hay nada que elegir—. La lección es contraintuitiva pero potente: en seguridad, **menos opciones bien elegidas** suele ser más seguro que muchas opciones mal usadas.

## El modelo de pares

El concepto que hay que interiorizar es el de **pares** (*peers*). A diferencia de otras VPN con una jerarquía rígida servidor-cliente, WireGuard piensa en **pares que se conocen mutuamente**. La base criptográfica es la del [cifrado asimétrico](../../seguridad-informatica/cifrado-simetrico-y-asimetrico-desde-cero/index.md):

| Elemento | Qué es |
|---|---|
| Clave privada | El secreto de cada par; nunca sale de su equipo |
| Clave pública | Se comparte; identifica al par ante los demás |
| IPs permitidas | Qué direcciones del túnel corresponden a cada par |
| Endpoint | Dónde encontrar a un par (su IP y puerto públicos), si aplica |

> **Atención**
>
> La mecánica es elegante. Cada par genera su **par de claves** (privada y pública). Para que dos equipos se conecten por el túnel, cada uno debe **conocer la clave pública del otro** y saber qué **IPs del túnel** le corresponden. Es como intercambiar tarjetas de visita: «esta es mi clave pública, y dentro del túnel yo soy esta dirección». Una vez que ambos tienen la información del otro, WireGuard establece el túnel cifrado: el tráfico que va de uno a otro se cifra con la clave pública del destinatario, y solo su clave privada puede descifrarlo. En la práctica, uno de los pares suele tener una IP pública fija y hace de «punto de encuentro» (el rol de servidor), mientras que los demás (portátiles, móviles) se conectan a él, pero el modelo subyacente sigue siendo de pares iguales. Esta simetría es lo que hace a WireGuard tan flexible: sirve igual para conectar un portátil a tu servidor que para enlazar varias oficinas en malla.

## Configurar el túnel

Montar un túnel WireGuard en Linux se reduce a unos pocos pasos, gracias a esa simplicidad de diseño:

- **1. Instalar WireGuard.** Con el gestor de paquetes de tu distribución; al estar en el kernel, la parte pesada ya viene con el sistema.
- **2. Generar las claves.** En cada par, crear su par de claves (privada y pública). La privada se guarda con cuidado; la pública se comparte.
- **3. Escribir la configuración.** Un archivo corto en cada par: su clave privada, la IP que tendrá en el túnel, y por cada otro par, su clave pública, sus IPs permitidas y su endpoint si lo tiene.
- **4. Levantar la interfaz.** Activar el túnel; a partir de ahí, el tráfico hacia las IPs del túnel viaja cifrado.
- **5. Comprobar.** Verificar que los pares se ven y que el tráfico pasa por el túnel.

> **Atención**
>
> WireGuard tiene muchos usos legítimos y valiosos: acceder de forma **segura a tu red doméstica o a tu servidor desde fuera** (como si estuvieras en casa), **conectar oficinas o ubicaciones** en una red privada, o **proteger tu tráfico** cuando usás una red no confiable, cifrándolo hasta un punto de confianza. Como toda herramienta de red que crea túneles y conecta sistemas, se configura sobre **equipos propios o con autorización** del responsable de la red: montar un túnel hacia una red ajena sin permiso no es distinto de cualquier otro acceso no autorizado. Dos buenas prácticas de seguridad: la **clave privada de cada par es un secreto** —protegerla como tal, nunca compartirla ni versionarla—; y conviene combinar la VPN con el resto de medidas de [endurecimiento del servidor](../administracion-de-servidores-linux-desde-cero/index.md), porque una VPN protege el *tránsito*, pero no sustituye a asegurar los propios servicios. WireGuard y [SSH con claves](../conexion-remota-segura-con-ssh-y-claves/index.md) se complementan muy bien: la VPN da la capa de red privada, SSH el acceso administrativo dentro de ella.

## Errores frecuentes

- **Compartir o versionar la clave privada.** Es el secreto de cada par; debe protegerse y nunca salir del equipo.
- **Configurar mal las IPs permitidas.** Determinan qué tráfico va por el túnel; un error deja el túnel sin enrutar bien.
- **Olvidar abrir el puerto en el cortafuegos.** El par que hace de punto de encuentro necesita su puerto UDP accesible.
- **Esperar que la VPN asegure los servicios.** Protege el tránsito, no sustituye a endurecer lo que corre dentro.
- **Montar túneles hacia redes ajenas sin permiso.** Solo sobre equipos propios o con autorización del responsable.
- **Copiar la misma configuración en todos los pares.** Cada par tiene su clave y sus IPs; no son intercambiables.
- **Complicarla como si fuera OpenVPN.** Su gracia es la simplicidad; no hace falta añadir capas innecesarias.

## Preguntas frecuentes

**¿Qué es WireGuard?**
WireGuard es un software de red privada virtual, conocida por sus siglas como VPN, que permite crear túneles cifrados entre equipos a través de redes no confiables como internet, y que se ha convertido en el nuevo estándar de facto para las VPN gracias a tres virtudes que combina de forma sobresaliente: la simplicidad, el rendimiento y la seguridad. Una VPN, en general, crea un túnel cifrado entre dos o más puntos, de manera que el tráfico que circula por él viaja protegido y los equipos conectados pueden comunicarse como si estuvieran en la misma red privada local, aunque en realidad estén separados y conectados a través de internet. WireGuard aporta una forma nueva y notablemente mejorada de conseguir esto. Su primera gran característica es la simplicidad, ya que frente a las VPN tradicionales, que suelen ser complejas de configurar, con numerosas opciones, certificados y archivos de configuración extensos, WireGuard tiene un diseño minimalista cuya configuración cabe en unas pocas líneas, lo que facilita enormemente su puesta en marcha y su mantenimiento. Su segunda característica es el rendimiento, favorecido por el hecho de estar integrado en el núcleo del sistema operativo Linux desde hace varias versiones, lo que significa que forma parte del propio sistema y opera con gran eficiencia y velocidad. Su tercera característica es la seguridad, que se apoya tanto en el uso de criptografía moderna como en su diseño reducido. Precisamente su código es una fracción del de las alternativas tradicionales, lo que tiene una consecuencia importante para la seguridad: al haber mucho menos código, hay menos superficie donde puedan existir fallos y resulta mucho más fácil de auditar por revisores independientes. Además, en lugar de ofrecer un abanico de opciones criptográficas configurables, en las que es fácil elegir mal, WireGuard emplea un conjunto fijo de criptografía moderna ya seleccionada por sus autores, lo que elimina toda una categoría de errores de configuración. Su funcionamiento se basa en un modelo de pares, en el que cada equipo tiene un par de claves y conoce la clave pública de los demás, y es especialmente adecuado para usos como acceder de forma segura a la propia red o servidor desde el exterior, conectar distintas ubicaciones o proteger el tráfico en redes no confiables, siempre sobre equipos propios o con la debida autorización.

**¿Cómo funciona el modelo de pares de WireGuard?**
El modelo de pares de WireGuard es el concepto fundamental sobre el que se organiza su funcionamiento, y consiste en que la VPN no se estructura mediante una jerarquía rígida de servidor y clientes, sino como un conjunto de pares que se conocen mutuamente e intercambian tráfico cifrado entre sí, apoyándose en el mismo principio que el cifrado asimétrico de claves pública y privada. En este modelo, cada equipo que participa en la VPN es un par, y dispone de un par de claves criptográficas: una clave privada, que mantiene en secreto y que nunca debe salir de su equipo, y una clave pública, derivada de la anterior, que puede compartir libremente y que sirve para identificarlo ante los demás pares. Para que dos pares se puedan comunicar a través del túnel cifrado, cada uno debe conocer la clave pública del otro y saber qué direcciones dentro del túnel le corresponden a ese otro par. El intercambio de esta información funciona de forma parecida a intercambiar tarjetas de visita, en las que cada par comunica su clave pública y las direcciones que va a tener dentro del túnel. Una vez que ambos pares disponen de la información del otro, WireGuard puede establecer el túnel cifrado entre ellos, de modo que el tráfico que va de un par a otro se cifra utilizando la clave pública del destinatario y solo puede ser descifrado con la clave privada correspondiente, garantizando así la confidencialidad de la comunicación. Aunque conceptualmente todos los pares son iguales, en la práctica es habitual que uno de ellos disponga de una dirección pública fija y actúe como punto de encuentro al que se conectan los demás, desempeñando así un papel similar al de un servidor, mientras que los otros pares, como portátiles o móviles con direcciones cambiantes, se conectan a él. No obstante, el modelo subyacente sigue siendo de pares iguales, lo que confiere a WireGuard una gran flexibilidad, ya que sirve tanto para conectar un dispositivo a un servidor como para enlazar varias ubicaciones entre sí en distintas topologías. Esta simetría y sencillez del modelo de pares, combinada con la base criptográfica de las claves públicas y privadas, es una de las razones por las que WireGuard resulta tan potente y a la vez tan fácil de entender y configurar en comparación con las VPN tradicionales de estructura más compleja.

**¿Cómo configuro un túnel WireGuard en Linux?**
Configurar un túnel WireGuard en Linux es un proceso sencillo, gracias al diseño minimalista de la herramienta, que se reduce a unos pocos pasos consistentes en instalar el software, generar las claves de cada par, escribir un archivo de configuración corto en cada uno y levantar la interfaz de red del túnel. El primer paso es instalar WireGuard, lo que se hace mediante el gestor de paquetes de la distribución de Linux que se utilice, y resulta muy ligero porque, al estar WireGuard integrado en el núcleo del sistema desde hace varias versiones, la parte fundamental ya viene con el propio sistema operativo y solo hace falta instalar las herramientas de configuración. El segundo paso es generar las claves en cada uno de los pares que van a formar parte de la VPN, creando para cada uno su par de claves formado por una clave privada y una clave pública. La clave privada debe guardarse con cuidado y mantenerse en secreto, mientras que la clave pública es la que se compartirá con los demás pares. El tercer paso es escribir el archivo de configuración en cada par, que es breve y contiene la información esencial: la clave privada del propio par, la dirección que ese par tendrá dentro del túnel, y, por cada uno de los otros pares con los que se va a comunicar, la clave pública de ese otro par, las direcciones que le corresponden dentro del túnel y, cuando proceda, su punto de contacto, es decir, la dirección y el puerto públicos donde se le puede encontrar. El cuarto paso es levantar la interfaz de red del túnel, es decir, activar WireGuard con la configuración creada, tras lo cual el túnel cifrado queda establecido y el tráfico dirigido a las direcciones del túnel comienza a viajar cifrado entre los pares. El quinto paso es comprobar que todo funciona correctamente, verificando que los pares se ven entre sí y que el tráfico efectivamente pasa por el túnel. Durante la configuración conviene tener en cuenta algunos aspectos importantes, como asegurarse de configurar correctamente las direcciones permitidas de cada par, que determinan qué tráfico se enruta por el túnel, abrir en el cortafuegos el puerto que utiliza el par que actúa como punto de encuentro, y proteger adecuadamente las claves privadas. La brevedad y claridad de la configuración de WireGuard, comparada con la de las VPN tradicionales, es una de sus grandes ventajas, ya que permite montar un túnel funcional en poco tiempo y con poco margen de error.

**¿En qué se diferencia WireGuard de OpenVPN e IPsec?**
WireGuard se diferencia de las VPN tradicionales como el protocolo abierto de VPN y el conjunto de protocolos de seguridad de red principalmente en su simplicidad, su rendimiento y su enfoque de diseño, aunque las tecnologías tradicionales conservan ventajas en ciertos escenarios corporativos muy específicos. La diferencia más notable es la simplicidad de configuración. Las VPN tradicionales son potentes y flexibles, pero esa flexibilidad conlleva una gran complejidad, con numerosas opciones que configurar, la gestión de certificados y archivos de configuración extensos, lo que hace que montarlas y mantenerlas correctamente requiera bastante conocimiento y esfuerzo, y que sea relativamente fácil cometer errores. WireGuard, en cambio, tiene un diseño deliberadamente minimalista, con una configuración que cabe en unas pocas líneas basada en el modelo de pares y claves, lo que la hace mucho más rápida y sencilla de poner en marcha y de mantener. La segunda diferencia es el rendimiento. WireGuard está integrado en el núcleo del sistema operativo Linux, lo que le permite operar con gran eficiencia y velocidad, y sus conexiones se establecen muy rápidamente, superando en rendimiento a las soluciones tradicionales en muchos escenarios. La tercera diferencia tiene que ver con la seguridad y el enfoque de diseño. El código de WireGuard es una fracción del de las alternativas tradicionales, lo que reduce enormemente la superficie donde pueden existir fallos y facilita su auditoría por parte de revisores independientes, algo prácticamente inviable en proyectos con cientos de miles de líneas de código. Además, mientras que las VPN tradicionales ofrecen muchas opciones criptográficas configurables, en las que es posible elegir combinaciones inseguras, WireGuard emplea un conjunto fijo de criptografía moderna ya seleccionada por sus autores, eliminando así toda una clase de errores de configuración relacionados con el cifrado. No obstante, las tecnologías tradicionales conservan algunas ventajas en contextos específicos, como una mayor flexibilidad para adaptarse a requisitos corporativos complejos, un ecosistema más maduro de herramientas y compatibilidades, y ciertas capacidades avanzadas que pueden ser necesarias en entornos empresariales concretos. En resumen, para la mayoría de los usos, especialmente los personales y los de pequeñas y medianas infraestructuras, WireGuard es hoy la opción recomendada por su combinación de simplicidad, rendimiento y seguridad, mientras que las soluciones tradicionales pueden seguir siendo preferibles en determinados entornos corporativos con necesidades muy específicas.

**¿Por qué la simplicidad de WireGuard mejora su seguridad?**
La simplicidad de WireGuard mejora su seguridad porque un diseño reducido y con menos opciones implica menos superficie donde pueden existir errores, mayor facilidad para auditar el código y menos posibilidades de que el usuario cometa errores de configuración, lo que en conjunto se traduce en un sistema más robusto y fiable. Esta idea puede resultar contraintuitiva, ya que a veces se asocia la seguridad con tener muchas opciones y capacidades, pero en realidad, en el ámbito de la seguridad, la simplicidad bien entendida es una virtud muy importante. El primer motivo es que el código de WireGuard es mucho más reducido que el de las VPN tradicionales, del orden de unos pocos miles de líneas frente a las cientos de miles de las alternativas. Cuanto menor es la cantidad de código, menor es la superficie en la que pueden ocultarse fallos de programación que se conviertan en vulnerabilidades, por lo que un código pequeño tiende a tener menos errores explotables. El segundo motivo, estrechamente relacionado, es que un código reducido es mucho más fácil de auditar. La auditoría de seguridad consiste en que expertos independientes revisen el código en busca de fallos, y esta tarea es viable cuando el código es pequeño, pudiendo llegar a revisarse por completo, mientras que resulta prácticamente imposible de hacer de forma exhaustiva en proyectos enormes. El hecho de que WireGuard pueda ser auditado en su totalidad aumenta la confianza en su seguridad. El tercer motivo es que WireGuard no ofrece un menú extenso de opciones criptográficas configurables, sino que utiliza un conjunto fijo de algoritmos de criptografía moderna, cuidadosamente elegidos por sus autores. Esto elimina toda una categoría de problemas de seguridad, que son los errores de configuración del cifrado, ya que en las VPN tradicionales con muchas opciones es posible seleccionar combinaciones débiles o incompatibles, mientras que en WireGuard el usuario simplemente no puede equivocarse al elegir el cifrado, porque no hay nada que elegir. La lección de fondo es que, en seguridad, disponer de menos opciones pero bien elegidas suele ser más seguro que disponer de muchas opciones que pueden usarse mal, ya que reduce la complejidad, la superficie de ataque y las oportunidades de error humano. Por todo ello, la simplicidad de WireGuard no es solo una cuestión de comodidad, sino una decisión de diseño con importantes beneficios de seguridad.

**¿Para qué usos legítimos sirve WireGuard?**
WireGuard sirve para numerosos usos legítimos relacionados con la creación de conexiones cifradas y redes privadas, siendo los principales acceder de forma segura a la propia red o servidor desde el exterior, conectar distintas ubicaciones entre sí y proteger el tráfico en redes no confiables, siempre realizados sobre equipos propios o con la debida autorización. Un primer uso muy habitual es el acceso remoto seguro a la propia red doméstica o a un servidor propio desde el exterior. Mediante un túnel WireGuard, una persona puede conectarse desde fuera, por ejemplo desde un portátil o un móvil, a su red de casa o a su servidor como si estuviera físicamente en ella, accediendo de forma segura y cifrada a sus recursos, servicios y dispositivos, lo que resulta muy útil para administrar sistemas, acceder a archivos o usar servicios domésticos de forma remota sin exponerlos directamente a internet. Un segundo uso es la interconexión de distintas ubicaciones o redes, como enlazar las redes de varias oficinas o sedes de modo que se comporten como una única red privada, permitiendo que los equipos de unas y otras se comuniquen de forma segura a través del túnel cifrado, lo que es valioso para organizaciones con presencia en varios lugares. Un tercer uso es la protección del tráfico cuando se utiliza una red en la que no se confía, como una red inalámbrica pública, ya que estableciendo un túnel WireGuard hasta un punto de confianza se consigue que todo el tráfico viaje cifrado a través de la red no confiable, protegiéndolo de posibles interceptaciones en ese tramo. Además de estos, WireGuard puede emplearse en múltiples escenarios de conectividad segura entre sistemas. En todos los casos, es fundamental que estos usos se realicen sobre equipos propios o con la autorización del responsable de la red correspondiente, ya que montar un túnel hacia una red ajena sin permiso constituiría un acceso no autorizado, del mismo modo que cualquier otra forma de acceso no consentido a sistemas de terceros. Asimismo, conviene seguir buenas prácticas de seguridad, como proteger cuidadosamente las claves privadas de cada par, que son secretas y no deben compartirse, y combinar la VPN con otras medidas de endurecimiento de los sistemas, ya que una VPN protege el tráfico en tránsito pero no sustituye a la necesidad de asegurar adecuadamente los propios servicios y equipos que se conectan a través de ella.

## Fuentes

Documentación oficial y material de la comunidad consultados para esta guía. Fecha de consulta: 28 de julio de 2026.

### Aportes de la comunidad Underc0de

1. **Underc0de, foro.** [GNU/Linux](https://underc0de.org/foro/gnu-linux/). Redes y servidores.
2. **Underc0de, foro.** [Redes y servidores](https://underc0de.org/foro/redes-y-servidores/). VPN y túneles cifrados.

### Documentación oficial

1. **WireGuard.** [WireGuard](https://www.wireguard.com/). Sitio y documentación oficial.
2. **WireGuard.** [Quick Start](https://www.wireguard.com/quickstart/). Guía de inicio rápido.
3. **The Linux Documentation Project.** [TLDP](https://tldp.org/). Redes en Linux.
4. **IETF.** [RFC 8446 (TLS 1.3)](https://www.rfc-editor.org/rfc/rfc8446). Criptografía moderna de referencia.

## Guías relacionadas

- [Qué es una VPN](../../redes/que-es-una-vpn-como-configurarla/index.md)
- [SSH con claves](../conexion-remota-segura-con-ssh-y-claves/index.md)
- [Administración de servidores](../administracion-de-servidores-linux-desde-cero/index.md)
- [Cifrado simétrico y asimétrico](../../seguridad-informatica/cifrado-simetrico-y-asimetrico-desde-cero/index.md)
- [Índice de Linux](../index.md)
