• 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Wireguard easy con gestión gráfica
#1
Brick 
Hola

Voy a describir como instalar y configurar un docker con servicio VPN de Wireguard y una gestión visual de usuarios.


La cadena de creación por consola es la siguiente:
Código:
docker run -d --name=wg-easy --network=Dockers -e WG_HOST=ip_de_la_nas -e PASSWORD=claveEasy -v /share/DockerData/wg-easy:/etc/wireguard -p 51111:51820/udp -p 51821:51821/tcp --cap-add=NET_ADMIN --cap-add=SYS_MODULE --sysctl="net.ipv4.conf.all.src_valid_mark=1" --sysctl="net.ipv4.ip_forward=1" --restart unless-stopped -e WG_HOST="midominio_o_ddns.duckdns.org" -e WG_PORT="51111" -e WG_PERSISTENT_KEEPALIVE="25" weejewel/wg-easy

En la cadena he definido los siguientes parámetros:
  • "--network=Dockers" que me lo agrega a una red de docker. Si no la tenéis definida, no pongáis esa cadena de texto.
  • "-e PASSWORD=claveEasy" donde ponemos la clave de la web de gestión de usuarios.
  • "-v /share/DockerData/wg-easy:/etc/wireguard"  donde definimos una carpeta persistente donde se guardarán configuraciones que se mantienen por eliminación del docker o actualizaciones del mismo.
  • "-p 51111:51820/udp" donde 51111 es el puerto UDP que deberemos abrir en nuestro router hacia la ip de la nas. El 51820 es el puerto interno del docker.
  • "-p 51821:51821/tcp" donde 51821 es el puerto TCP de acceso web. Este tipo de accesos web no recomiendo dejarlo accesible externamente.
  • "-e WG_HOST="midominio_o_ddns.duckdns.org" y "-e WG_PORT="51111" " son variables que me sirven para dejar predefinido las dirección y puertos de acceso público que se muestran en las configuraciones cuando creamos clientes. 
  • "-e WG_PERSISTENT_KEEPALIVE="25" " indica el tiempo en segundos en que se envía un paquete para no cerrar la comunicación por inactividad.

Hay mas variables posibles que tal vez nos pueden interesar:

WG_MTU longitud del paquete
WG_DEFAULT_ADDRESS rango de ips de los clientes
WG_DEFAULT_DNS servidores DBNS que usarán los clientes
WG_ALLOWED_IPS rangos de IP de clientes permitidos

Si ya tenemos el docker levantado, podemos ir a su web con ip_nas:51821
   

Tecleamos nuestra clave "claveEasy"

Se nos presenta la pantalla de gestión de usuarios
   

Agregamos uno nuevo pulsando sobre el botón de "New Client"
   

Damos el nombre y ya lo tenemos creado. Bien fácil  Big Grin
   

Las opciones de gestión del usuario son muy sencillas
   

Ahora hemos de instalarlo en nuestro equipo remoto, para ello podemos usar el código bidimensional o el archivo de configuración
   

Una vez agregado a nuestro equipo remoto, ya podremos conectar sin problemas.

Y desde la web podremos ver si hay actividad del usuario
   


He comprobado que la web mantiene mucho tiempo a los clientes como conectados, cuando en realidad ya no lo están. 
Entiendo que es un fallo y que según vayan sacando versiones mas nuevas, esto será corregido.

En cuanto esté corregido, pondré una forma un poco casera de crear logs de actividad de WireGuard.
No tiene mucho sentido que la exponga aquí si el docker no lo hace correctamente  Sad


Agradezco a Yeraycito que me haya mostrado la existencia de este docker  Wink
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny, TS-453Be, TR-002 y QHora-301w) Ʀɐɯ0η
  Responder
#2
De nada, a mandar
  Responder
#3
La verdad que este método simplifica mucho la vida (comparado con el de http://www.qnapclub.es/showthread.php?tid=4068) para que podamos usar WireGuard aquellos que no tenemos la posibilidad por app QNAP.
Mil gracias!
TS-253A 2x4TB RAID1 8GB RAM
“La inteligencia es la habilidad de evitar hacer trabajo y conseguir que el trabajo se haga.” (Linus Torvalds)
  Responder




Usuarios navegando en este tema: 1 invitado(s)