¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Fundamentos de WireGuard

Aquí está la lección completa para leer. Crea una cuenta gratuita para practicarla en un laboratorio en vivo.

Laboratorio de máquina virtual6 min de lectura4 comandos

Qué vas a hacer

Dos oficinas tienen, cada una, una red privada que la otra no puede ver. Un túnel VPN las une a través de internet envolviendo cada paquete en otro cifrado, y WireGuard es una forma pequeña y moderna de crear uno. Vas a recorrer dos sedes y ver qué hay antes de que exista ningún túnel. No vas a montarlo: eso es la tarea del propio laboratorio.

Antes de empezar

Nota

Pulsa Iniciar el laboratorio en la barra superior de esta lección. Este laboratorio es una máquina Ubuntu entera, solo para ti, con dos sedes construidas dentro, así que tarda un poco más en arrancar que un contenedor. Cada botón Ejecutar de más abajo escribe su comando en el terminal de la máquina, uno detrás de otro. Si alguno dice que la máquina aún está arrancando, espera unos segundos y vuelve a pulsarlo. Para ver los comandos en directo, o para escribir los tuyos, pulsa Abrir el terminal (pestaña nueva) en la barra.

1. Conoce las máquinas

Todo está construido dentro de tu única máquina Ubuntu: cada ordenador y cada puerta de enlace es un espacio de nombres de red (network namespace) separado, con sus propias direcciones. wglab status los lista. a1 es un ordenador de la sede A y gwA es su puerta de enlace; b1 y gwB son lo mismo en la sede B. Cada puerta de enlace tiene una segunda dirección en wan0, el enlace que representa internet, dentro de 203.0.113.0/24.

Comando
wglab status

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

2. Intenta llegar a la otra sede

ping envía un paquete pequeño y espera una respuesta. Pregunta por b1, en la otra sede, 10.2.0.2. No llega nada, y la puerta de enlace que está junto a a1 explica por qué: Destination Net Unreachable (red de destino inalcanzable), que quiere decir «no conozco ningún camino a esa red». Las dos redes privadas nunca han oído hablar una de la otra.

Comando
sudo ip netns exec a1 ping -c 2 -W 1 10.2.0.2

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

3. Lee las rutas de la puerta de enlace

Una ruta dice por dónde enviar los paquetes de una red. gwA tiene exactamente dos: la de su propia sede, 10.1.0.0/24, y la del enlace de internet, 203.0.113.0/24. No hay ninguna línea para 10.2.0.0/24, y por eso el ping del paso 2 se quedó aquí.

Comando
sudo ip netns exec gwA ip route

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

4. ¿Hay un túnel?

wg show lista las interfaces de WireGuard con sus claves y sus pares (los otros extremos del túnel). No muestra nada en absoluto: todavía no hay túnel ni claves. A menudo, un comando que no encuentra nada no muestra nada, y eso también es una respuesta.

Comando
sudo ip netns exec gwA wg show

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Ahora haz el laboratorio

Consejo

Ya has descubierto lo que falta: claves, una configuración en cada puerta de enlace y rutas hacia un túnel. Crearlas es la tarea de este laboratorio: abre README.md, que está en tu carpeta personal, con cat README.md en el terminal. Te explica qué hacer y no da ninguna de las soluciones.

Para el profesorado

Consejo

Esta lección es un pequeño ejemplo de una lección practicada en un laboratorio: los pasos y los botones Ejecutar son la lección, y el laboratorio es la copia propia de cada alumno. Esta lección se practica en un laboratorio de máquina virtual: cada alumno tiene su propia máquina Ubuntu con dos sedes pequeñas dentro, y un botón Ejecutar escribe en su terminal y muestra lo que salió. El propio laboratorio incluye una comprobación que evalúa el túnel a partir de lo que se guardó: un acuerdo de conexión (handshake), el tráfico en el enlace de internet, las rutas y las claves. Cópiela en su propio módulo y modifíquela, o cree una desde cero con el menú Laboratorio del constructor de lecciones.

Sobre este laboratorio y su código: Laboratorio WireGuard: construye un túnel VPN entre dos sedes en el navegador

¿Enseñas a una clase? Asigna estas lecciones a tus estudiantes con calificación y un laboratorio para cada uno.