¿Cómo enrutar el tráfico a través de la VPN Wireguard?

En el post anterior aprendimos como instalar y configurar Wireguard en Debian GNU/Linux y como establecer una comunicación segura entre 2 nodos con direcciones IP fijas o sea cuando cada nodo “ve” la dirección IP del otro nodo. En el día de hoy aprenderemos a como enrutar el tráfico a través Wireguard, esta configuración es útil para acceder a recursos bloqueados para nuestra región, también podemos usarla para evitar la censura y vigilancia de nuesto proveedor de Internet o del proveedor del servicio al cual accedemos, para ello debemos tener un VPS accesible vía SSH.

El procedimiento de instalación y configuración es el mismo que el descrito en el post anterior, solo debemos hacer pequeños ajustes para que nuestra PC o laptop pueda conectarte a la VPN.

Antes de continuar recomiendo ver el video:

YouTube video

Paso 1: Modificar la configuración del nodo destino

Aúnque Wireguard no maneja el concepto cliente/servidor, asumiremos el nodo destino como servidor para darle claridad al ejemplo.

Nos conectamos al nodo destino vía SSH, luego modificamos la configuración de Wireguard, la sección [Interface] y agregamos estás 2 líneas

PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

La primera línea se ejecuta cuando iniciamos la interfaz de red de Wireguard (PostUp) mientras que la segunda cuando detenemos/quitamos la interfaz de red de Wireguard (PostDown). La primera crea una regla en el muro cortafuegos iptables que permite enrutar y enmascarar todo el tráfico proveniente desde el cliente (nuestra PC) mientras que la segunda elimina dicha regla.

Luego debemos buscar la configuración de nuestro [Peer] y comentar o eliminar la directiva EndPoint.

Paso 2: Habilitar ip_forward

Este paso debemos ejecutarlo tanto en el cliente como en el servidor, si la salida del comando:

# cat /proc/sys/net/ipv4/ip_forward

es:

Paso 3: Enrutar tráfico

En la configuración Wireguard cliente, buscamos la sección [Peer] del nodo servidor y modificamos la directiva AllowedIPs y establecemos su valor a:

AllowedIPs = 0.0.0.0/0

Paso 4: Reiniciar Wireguard

Debemos reiniciar la interfaz de Wirguard tanto en el servidor con el cliente con el siguiente comando.

# systemctl restart wg-quick@wg0.service

wg0 es el nombre de la interfaz de red Wireguard en caso de que haya usado otro nombre sustitúyalo por wg0.

Enlaces de interés

YouTube video

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.