Skip to main content

Instalación de Wireguard cliente

Ahora que ya dispone de servidor VPN, es momento de crear la configuración para los clientes, esto se puede realizar de varias formas.

  • Crear la configuración desde el cliente
  • Crear la configuración desde el servidor y enviarla al usuario

Prerequisitos

  • Conocer la IP pública del servidor VPN
  • Servidor VPN encendido y accesible

Crear configuración desde el cliente

Desde un sistema Linux

Escale privilegios

sudo su -

Genere una carpeta para guardar la clave privada.

mkdir /root/wg0/client -p
cd /root/wg0/client

Genere la clave privada y la pública del cliente

wg genkey | tee wg0_private.key
cat wg0_private.key | wg pubkey | tee wg0_public.key

Introduzca la IP pública del servidor en la siguiente variable, cambie el valor 127.0.0.1 por la IP pública del servidor VPN. Introduzca también la IP que tendrá el cliente en la red, esto debe preguntarlo al administrador de la VPN. En este caso, usaremos la IP acabado en .2.

server_ip="127.0.0.1"
server_port="58270"
client_ip="10.16.0.2/24"
client_priv_key=`cat wg0_private.key`

Genere el fichero de configuración

cat <<endblock >  /etc/wireguard/wg0.conf
[Interface]
PrivateKey = $client_priv_key
Address = $client_ip


[Peer]
PublicKey = U9uE2kb/nrrzsEU58GD3pKFU3TLYDMCbetIsnV8eeFE=
AllowedIPs = 10.16.0.0/24
Endpoint = $server_ip:$server_port

endblock

Ahora necesitará que el servidor autorice la comunicación. Autorizar cliente en servidor VPN

Crear configuración desde el servidor

Puede crear la configuración desde el servidor y proporcionarla al usuario (mediante fichero, codigo QR), facilitandole así la tarea. Por cada cliente, genere una carpeta para guardar los ficheros. Puede usar client1 o bien el login como carpeta, eso queda a su gusto. Simplemente aseguresé de no sobreescribir los ficheros por si los necesita en un futuro.

mkdir /root/wg0/client1 -p && cd /root/wg0/client1
wg genkey | tee client1_wg0_private.key
chmod 600 client1_wg0_private.key

Exportando configuración del cliente

Acceda de nuevo al servidor y instale la dependencia que permitirá generar códigos QR.

apt install qrencode

A continuación puede generar el código QR, ejecutando el siguiente comando

qrencode -t png -o wg0-client1-qr.png -r wg0-client1.conf

Se generará una imágen que podrá enviar al cliente. Si el usuario está a su lado también puede generarlo para mostrarlo en la consola de Linux con el comando.

qrencode -t ansiutf8 wg0-client1.conf

Este código es único y exclusivamente para ese cliente, no lo comparta con otro cliente. Simplemente, genere otra configuración para otro cliente.

Fuente: Cyberciti - How to generate Wireguard QR