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.
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.