Añadir un cliente a WireGuard
Si ya esta el servidor encendido y no queremos pararlo, podemos añadir clientes/pares con el siguiente comando.
Creamos las claves privadas y publicas del cliente (necesitamos entrar en root)
wg genkey > /etc/wireguard/keys/cliente.key
cat /etc/wireguard/keys/cliente.key | wg pubkey
Y lo añadimos con lo siguiente.
sudo wg set wg0 peer [CLAVE_PUBLICA_CLIENTE] allowed-ips [IP_CIP_CLIENLIENTE_VPN]TE_VPN]
Para empezar vamos a crear una carpeta que almacene las claves.
Y dentro del directorio le otorgamos permisos predeterminados para que solo el usuario pueda entrar a los documentos.
Creamos las claves privadas y publicas del cliente (necesitamos entrar en root)
wg genkey > /etc/wireguard/keys/cliente.key
cat /etc/wireguard/keys/cliente.key | wg pubkey
Ahora nos vamos al archivo wg0.conf y añadimos lo siguiente.
Ahora encendemos el servidor y comprobamos el estado.
Ahora tenemos que irnos al cliente e instalar wireguard, en mi caso iré a un iphone.
Al instalar la aplicación y entrar nos dirá de agregar un tunel.
Ahora tenemos que rellenar los siguientes puntos.
Las claves son las generadas en el servidor.
La dirección es la que le asignamos en el servidor.
Puerto de escucha la misma que el servidor y en mi caso puse el DNS de google.
En la parte de abajo tenemos que poner la clave pública del servidor, donde pone punto final se refiere a la ip pública del servidor junto al puerto, el IPs permitidas recomiendo siempre dejarlo en 0.0.0.0/0 a no ser que queramos otra cosa y el Keepalive nos recomienda wireguard 25 segundos pero yo pongo 35, esto sirve para que cada 35 segundos compruebe si la conexión sigue activa. Las dos opciones ultimas "Celular" y "Wi-Fi" es para que pongamos si queremos que la vpn se active automaticamente al utilizar datos o wifi.
Una vez conectados veremos lo siguiente en el apartado par.
Y si en el servidor ponemos el siguiente comando veremos como llegan las solicitudes al servidor.
Y ya tendríamos todo listo, y si haces un script que automáticamente añada el par en el servidor y le mande al usuario un archivo zip para añadirlo a la aplicación sin tocar nada?