Go to file
Khanh Ngo 211304173d
Update README.md
2020-04-25 11:16:20 +07:00
db Add empty db directory in vcs 2020-04-23 23:47:19 +07:00
handler Add authentication 2020-04-24 18:14:54 +07:00
model Add authentication 2020-04-24 18:14:54 +07:00
router Add authentication 2020-04-24 18:14:54 +07:00
templates Add docker build 2020-04-25 00:33:22 +07:00
util Fix endpoint address in InitDB 2020-04-25 09:37:12 +07:00
.dockerignore Add docker build 2020-04-25 00:33:22 +07:00
.gitignore Add docker build 2020-04-25 00:33:22 +07:00
Dockerfile Change docker image in release to alpine 3.11 2020-04-25 08:36:19 +07:00
LICENSE Create LICENSE 2020-04-25 11:07:12 +07:00
README.md Update README.md 2020-04-25 11:16:20 +07:00
docker-compose.yaml Update docker-compose example 2020-04-25 10:53:14 +07:00
go.mod Add authentication 2020-04-24 18:14:54 +07:00
go.sum Add authentication 2020-04-24 18:14:54 +07:00
main.go Add docker build 2020-04-25 00:33:22 +07:00
package.json Add docker build 2020-04-25 00:33:22 +07:00
yarn.lock Add docker build 2020-04-25 00:33:22 +07:00

README.md

wireguard-ui

A web user interface to manage your WireGuard setup.

Features

  • Friendly UI
  • Authentication
  • Manage extra client's information (name, email, etc)
  • Retrieve configs using QR code / file

Run WireGuard-UI

Only docker option for now, please refer to this example of docker-compose.yml.

Please adjust volume mount points to work with your setup. Then run it:

docker-compose up

Default username and password are admin.

Auto restart WireGuard daemon

WireGuard-UI only takes care of configuration generation. You can use systemd to watch for the changes and restart the service. Following is an example:

Create /etc/systemd/system/wgui.service

[Unit]
Description=Restart WireGuard
After=network.target

[Service]
Type=oneshot
ExecStart=/usr/bin/systemctl restart wg-quick@wg0.service

Create /etc/systemd/system/wgui.path

[Unit]
Description=Watch /etc/wireguard/wg0.conf for changes

[Path]
PathModified=/etc/wireguard/wg0.conf

[Install]
WantedBy=multi-user.target

Apply it

systemctl enable wgui.{path,service}
systemctl start wgui.{path,service}

Screenshot

wireguard-ui

License

MIT. See LICENSE.