Comandos básicos para WireGuard
Llevamos algunos artículos dedicados a la instalación y configuración de un servidor WireGuard, que nos permita crear una VPN. De este modo, podremos realizar conexiones seguras a nuestra red local desde entornos que nos resulten no confiables.
Hoy ha llegado el momento de que empecemos a ver cómo administrar las configuraciones de los equipos que actuarán como clientes de la red (los que usaremos para conectarnos de forma remota) y otras configuraciones, que pueden hacerse de una forma sencilla desde la línea de comandos del servidor.
Para ello, comenzaremos ofreciéndote un cuadro resumen de los comandos que podemos usar y, más adelante, comprobaremos el funcionamiento de algunos de ellos, para que veas lo fácil que resulta utilizarlos.
El cuadro resumen es este:
Crear el archivo de configuración de un cliente
Una de las mayores ventajas de WireGuard es que facilita mucho la tarea de configuración de equipos deban conectarse desde fuera de la red local. Para lograrlo, el servidor dispone de un mecanismo que permite generar archivos de configuración personalizados para cada uno de esos clientes.
Se trata de una tarea muy sencilla que se puede hacer con una orden en la terminal del servidor, o desde la interfaz web que aprendimos a instalar hace unos días. Hoy aprenderemos el primer método.
Para conseguirlo, usaremos este comando:
pivpn add
o bien,
pivpn -a
Al hacerlo, deberemos escribir un nombre para el cliente y, solo con eso, habremos completado la tarea.
El nombre del archivo generado estará formado por el texto anterior y la extensión .conf. En nuestro ejemplo, prueba01.conf.
En cuanto al lugar donde se almacena el archivo, podremos encontrarlo en dos lugares:
-
En una carpeta llamada configs, dentro del perfil de la cuenta de usuario que se creó durante el proceso de instalación de PiVPN (Puedes consultar el artículo Instalar WireGuard en un contenedor Proxmox VE. Parte 2).
En mi caso, esa cuenta se llamaba, precisamente, usuario, por lo que, para ver su contenido, podremos usar un comando como este:
ls -l /home/usuario/configs
De este modo, los archivos que deberán enviarse a los usuarios, estarán en un lugar accesible.
-
En una carpeta llamada configs, dentro de la carpeta /etc/wireguard.
Como antes, puedes consultar su contenido contenido con este comando:
ls -l /etc/wireguard/configs
En realidad, estos son los archivos originales y podemos considerar los anteriores como meras copias de trabajo.
Además, puedes ver en la imagen anterior un archivo llamado clientx.txt, que contiene la configuración específica de todos los clientes en PiVPN. Cada vez que creamos un nuevo archivo de configuración, para un cliente, se añqade su información específica a este archivo.
Por otro lado, los certificados y claves relacionados con la infraestructura de seguridad se almacenan en /etc/wireguard/keys, para asegurar su integridad y confidencialidad.
Obtener los archivos de configuración
Para que un cliente pueda conectarse a la VPN, necesitará su archivo de configuración correspondiente.
Una forma sencilla de obtenerlo es, desde otro ordenador de la red local, usando el comando scp, cuando estamos usando GNU/Linux, o con el programa WinSCP, si somos usuarios de Windows.
Ambas opciones las hemos tratado ya en SomeBooks.es. Puedes consultar, por ejemplo, los artículos siguientes artículos:
Una vez descargados en un ordenador con un sistema operativo de escritorio, solo tendríamos en enviarlos, por ejemplo usando correo electrónico, al usuario que vaya a utilizarlos.
De cualquier modo, si el usuario en cuestión piensa utilizar un dispositivo móvil, tenemos la opción de realizar una configuración rápida usando un código QR. Este código podemos obtenerlo directamente en el servidor, escribiendo el siguiente comando:
pivpn qrcode prueba01
O bien,
pivpn -qr prueba01
Lógicamente, en ambos casos deberás cambiar el texto prueba01 por el nombre que le hayas dado a tu cliente.
La terminal mostrará una salida como esta, que podrá escanearse directamente desde la aplicación cliente del dispositivo.
(Hablaremso más detenidamente de esta opción, en los artículos dedicados a pa parte cliente de esta instalación.
Comprobar la lista completa de clientes
En nuestra instalación inicial, solo tenemos un cliente, pero lo normal es que, según avance el tiempo, su número vaya creciendo.
Si en un momento necesitamos comprobar qué usuarios hemos configurado, basta con usar un comando como este.
pivpn list
Y, como antes, también tenemos la versión reducida:
pivpn -l
En ambos casos, obtendremos una lista como la siguiente…
Eliminar conexiones de clientes
Si, en algún momento, necesitamos eliminar la conexión de uno de los clientes, bastará con ejecutar un comando como este:
pivpn remove prueba01
Que también tiene una versión abreviada
pivpn -r prueba01
Como ves en la tabla de arriba, aún nos quedan algunos comandos más, pero considero que estos son los más importantes. Espero que te haya resultado útil la explicación.
Puedes consultar todos los artículo publicados en SomeBooks.es sobre WireGuard en este enlace.