Per gestionar WireGuard gràficament, hi ha una interfície web creada en Go que ens permet crear usuaris nous, eliminar-los, etc. En aquest tutorial us expliquem com configurar-la a Ubuntu 20.04.
Instal·lació prèvia de WireGuard
Per utilitzar WireGuard-UI cal tenir instal·lat WireGuard. Per fer-ho, executarem les ordres següents:
# apt install wireguard
# modprobe wireguardInstal·lació amb el binari compilat
El primer que farem serà anar a l'apartat de Releases de GitHub per descarregar la versió més recent. En el moment d'escriure aquest tutorial, la versió més recent és la v0.3.7.
# wget https://github.com/ngoduykhanh/wireguard-ui/releases/download/v0.3.7/wireguard-ui-v0.3.7-linux-amd64.tar.gzI descomprimim l'arxiu:
# tar zxf wireguard-ui-v0.3.7-linux-amd64.tar.gzAra executem el binari descarregat:
# ./wireguard-uiI ens apareixerà el següent:
Wireguard UI
App Version : v0.2.7
Git Commit : b8142b80c235753e501376e21d3694cd066d977c
Git Ref : refs/tags/v0.3.7
Build Time : 02-03-2021 10:46:34
Git Repo : https://github.com/ngoduykhanh/wireguard-ui
Authentication : true
Bind address : 0.0.0.0:5000
⇨ http server started on [::]:5000Ara podrem accedir al tauler amb l'adreça IP pública del servidor i el port 5000:
Important
Per poder accedir al port 5000, heu de tenir aquest port obert al vostre perfil de Firewall.
Les credencials d'accés a WireGuard-UI són les següents:
- Usuari: admin
- Contrasenya: admin
És molt recomanable canviar la contrasenya d'accés. Ho podeu fer modificant el fitxer db/server/users.json
Important!
Recordeu que, un cop configurats els clients, heu de finalitzar el procés de WireGuard-UI.
Instal·lació des del codi font
Per compilar manualment WireGuard-UI, cal instal·lar els paquets següents:
- Primer cal tenir Yarn:
# curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
# echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
# apt update
# apt install yarn- En segon lloc, cal tenir instal·lat Go
# apt-get install golang-rice golang-go gcc g++ make- En tercer lloc, també cal tenir NodeJS
# curl -sL https://deb.nodesource.com/setup_15.x | bash -
# apt-get install -y nodejsDescarreguem el repositori de GitHub:
# git clone https://github.com/ngoduykhanh/wireguard-ui.gitI executem l'script per preparar els recursos:
# ./prepare_assets.shI compilem el codi font:
# rice embed-go
# go build -o wireguard-uiUn cop acabat el procés, tindrem el binari a punt per executar-lo.
# ./wireguard-uiImportant!
Recordeu que, un cop configurats els clients, heu de finalitzar el procés de WireGuard-UI.
Configurar WireGuard des de WireGuard-UI
Anem a l'apartat WireGuard Server i hi configurem el següent:
Haurem d'afegir la interfície web privada del servidor 10.0.8.1/24, obrir el port 51820 UDP al perfil de Firewall del servidor i, a continuació, afegir el Post Up Script i el Post Down Script:
- PostUp Script: iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
- PostDown Script: iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
Fem clic a Save i després, a la part superior dreta, a Apply Config i reiniciem el servei de WireGuard.
Crear un client de WireGuard
Anem a WireGuard Client i després fem clic a New Client:
A Allowed IPs haurem d'afegir les dues rutes 10.0.8.0/24 i 10.20.10.0/24. Un cop enviats els canvis, hem de fer clic a la part superior dreta a Apply Config. Després de crear l'usuari, podrem escanejar el codi QR per configurar el dispositiu o descarregar el fitxer de configuració per importar-lo al client de WireGuard.