Un service de gestion de base et autonome pour Wireguard avec une interface utilisateur Web en libre-service.
Sortie stable actuelle: v1.3.0

Le moyen le plus simple d'exécuter WG-UI est d'utiliser l'image du conteneur. Pour le tester, exécutez:
docker run --rm -it --privileged --entrypoint "/wireguard-ui" -v /tmp/wireguard-ui:/data -p 8080:8080 embarkstudios/wireguard-ui:latest --data-dir=/data --log-level=debug
Lorsque nous courons en production, nous vous recommandons d'utiliser la dernière version par opposition aux latest .
Il est important de savoir que vous devez faire installer Wire Guélectricité sur la machine pour que cela fonctionne, car c'est «juste» une interface utilisateur pour gérer les configurations WireGuard.
Vous pouvez configurer WG-UI à l'aide de drapeaux de ligne de commande ou de variables d'environnement. Pour voir tous les drapeaux disponibles courir:
docker run --rm -it embarkstudios/wireguard-ui:latest -h
./wireguard-ui -h
Vous pouvez alternativement spécifier chaque drapeau via une variable d'environnement du formulaire WIREGUARD_UI_<FLAG_NAME> , où <FLAG_NAME> est remplacé par le nom de l'indicateur transformé en CONSTANT_CASE , par exemple
docker run --rm -it embarkstudios/wireguard-ui:latest --log-level=debug
et
docker run --rm -it -e WIREGUARD_UI_LOG_LEVEL=debug embarkstudios/wireguard-ui:latest
sont les mêmes.
Vous pouvez configurer l'authentification de base à l'aide des variables Flags / Environment --auth-basic-user=<user> et --auth-basic-pass=<bcrypt hash> Le mot de passe est un hachage BCrypt que vous pouvez générer vous-même à l'aide du conteneur Docker:
$ docker run -it embarkstudios/wireguard-ui:latest passwd mySecretPass
INFO[0001] Password Hash: $2a$14$D2jsPnpJixC0U0lyaGUd0OatV7QGzQ08yKV.gsmITVZgNevfZXj36
Il existe deux façons d'exécuter WG-UI aujourd'hui, vous pouvez l'exécuter avec un module de noyau installé sur votre hôte, ce qui est la meilleure façon de le faire si vous voulez des performances.
docker pull embarkstudios/wireguard-ui:latest
Si vous n'avez cependant pas la possibilité ou l'intérêt de faire charger le module de noyau sur votre hôte, il existe maintenant une solution pour celle en utilisant une image Docker basée sur Wireguard-Go. Gardez à l'esprit que cela s'exécute dans l'espace utilisateur et non dans le module du noyau.
docker pull embarkstudios/wireguard-ui:userspace
Les deux images sont conçues pour linux/amd64 , linux/arm64 et linux/arm/v7 . Si vous en avez besoin pour toute autre plate-forme, vous pouvez créer des binaires WG-UI avec l'aide de la documentation.
Vous devez installer Wireguard sur la machine exécutant wg-ui .
À moins que vous n'utilisiez la version Userspace avec Docker, vous devez installer WireGuard sur votre machine hôte.
Quelques guides d'installation:
Ubuntu 20.04 LTS
Centos 8
Debian 10
Installez la dernière version de Go from (https://golang.org/dl/)
sudo tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
Bash: ~ / .bash_profile
Zsh: ~ / .zshrc
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
export GOPATH=$HOME/go
sudo apt-get install curl software-properties-common
curl -sL https://deb.nodesource.com/setup_12.x | sudo bash -
sudo apt-get install nodejs
git clone https://github.com/EmbarkStudios/wg-ui.git && cd wg-ui
make build
make build-amd64
make build-armv5
make build-armv6
make build-armv7
make ui
make build
npm install --prefix=ui
npm run --prefix=ui dev
make build
sudo ./bin/wireguard-ui --log-level=debug --dev-ui-server http://localhost:5000
Nous accueillons les contributions communautaires à ce projet.
Veuillez lire notre guide des contributeurs pour plus d'informations sur la façon de commencer.
Sous licence sous l'un ou l'autre des
à votre option.