Go to file
2023-11-07 22:31:12 +03:30
.github/workflows fix 2023-10-03 11:40:52 +03:30
assets updates docs 2023-09-29 09:25:40 +03:30
config fix 2023-09-27 10:31:52 +03:30
web (fix): watchdog for conf health and, if the wg instance is down, don't restart 2023-11-07 22:31:12 +03:30
.dockerignore add tailwindcss and shadcn 2023-11-03 18:29:09 +03:30
.gitignore init with Bun + SvelteKit 2023-11-02 14:34:25 +03:30
docker-compose.dev.yml (chore): revert to nodejs and update dependencies 2023-11-05 19:50:21 +03:30
docker-compose.yml fix 2023-09-27 05:30:23 +03:30
docker-entrypoint.sh (fix): watchdog for conf health and, if the wg instance is down, don't restart 2023-11-07 22:31:12 +03:30
Dockerfile (fix): watchdog for conf health and, if the wg instance is down, don't restart 2023-11-07 22:31:12 +03:30
Dockerfile-Dev (fix): watchdog for conf health and, if the wg instance is down, don't restart 2023-11-07 22:31:12 +03:30
LICENSE Updates dependencies and License from MIT to GPLv3 2023-10-08 11:47:00 +03:30
package.json add tailwindcss and shadcn 2023-11-03 18:29:09 +03:30
pnpm-lock.yaml add tailwindcss and shadcn 2023-11-03 18:29:09 +03:30
README.md (chore): revert to nodejs and update dependencies 2023-11-05 19:50:21 +03:30

WireGuard GUI (Easy Admin UI)

Screenshot

screenshot screenshot

Features

  • Easy-to-use web-based admin UI
  • Support for multiple users and servers
  • Support for Tor to anonymize connections
  • List, create, delete, or modify any server or user
  • Scan QR codes or easily download the client configurations.

Requirements

  • A host with a kernel that supports WireGuard.
  • A host with Docker installed.

Installation

1. Install Docker

To install Docker, go to the official documentation and install a version that meets your environment's requirements.

2. Run WireAdmin

Install WireAdmin using the command line:

docker run -d \
 --name wireadmin \
 --restart unless-stopped \
 -e WG_HOST="🚨YOUR_SERVER_IP" \
 -e UI_PASSWORD="🔐OPTIONAL_ADMIN_PASSWORD" \
 -p "3000:3000/tcp" \
 -p "51820:51820/udp" \
 -v "~/wireadmin-data:/data" \
 --cap-add=NET_ADMIN \
 --cap-add=SYS_MODULE \
 --sysctl="net.ipv4.conf.all.src_valid_mark=1" \
 --sysctl="net.ipv4.ip_forward=1" \
  ghcr.io/shahradelahi/wireadmin:latest

Please note that the port 3000 is for the UI and it is up to you to remove it after configuring the Servers/Peers.

IMPORTANT: When creating each server, ensure that you add the port exposure through Docker. (The port 51820 is added as an example.)

3. Enjoy

Please feel free to open an issue if you have any questions or suggestions.

Environment Options

These options can be configured by setting environment variables using -e KEY="VALUE" in the docker run command.

Option Description Default Optional
WG_HOST The public IP address of the WireGuard server. ""
UI_PASSWORD The password for the admin UI. "" ✔️
TOR_USE_BRIDGES Set this to true for quick setup of obfs4 Tor bridges. You have to mount the bridges file at /etc/tor/bridges. "" ✔️
TOR_* The Torrc proxy configuration. (e.g. SocksPort as TOR_SOCKSPORT="9050") "" ✔️

Support the Project

Seriously, this project is free and open-source, and all I ask for as support is for you to give a star to the repository.

License

This project is licensed under the GPL-3.0 license. See the LICENSE file for more info.