Go to file
2024-04-27 02:53:33 +03:30
.changeset feat: dark mode (#10) 2024-04-27 02:53:33 +03:30
.github/workflows chore: changeset integration (#8) 2024-04-27 01:06:57 +03:30
assets feat: dark mode (#10) 2024-04-27 02:53:33 +03:30
bin fix 2024-04-01 17:04:50 +03:30
config Fix: the issue of regenerating the config file without filling the placeholders. 2024-02-15 11:12:05 +03:30
web feat: dark mode (#10) 2024-04-27 02:53:33 +03:30
.dockerignore Update deps and add action for publishing on dockerhub 2023-12-01 18:38:50 +03:30
.gitignore init with Bun + SvelteKit 2023-11-02 14:34:25 +03:30
.prettierignore chore: changeset integration (#8) 2024-04-27 01:06:57 +03:30
.prettierrc chore: fix lint scripts (#4) 2024-04-20 23:36:45 +03:30
docker-compose.dev.yml chore: fix lint scripts (#4) 2024-04-20 23:36:45 +03:30
docker-compose.yml chore: fix lint scripts (#4) 2024-04-20 23:36:45 +03:30
docker-entrypoint.sh fix: Improve password hasher and env loader (#6) 2024-04-26 23:16:07 +03:30
Dockerfile chore: changeset integration (#8) 2024-04-27 01:06:57 +03:30
Dockerfile-Dev chore: changeset integration (#8) 2024-04-27 01:06:57 +03:30
LICENSE Updates dependencies and License from MIT to GPLv3 2023-10-08 11:47:00 +03:30
package.json chore: changeset integration (#8) 2024-04-27 01:06:57 +03:30
pnpm-lock.yaml chore: fix lint scripts (#4) 2024-04-20 23:36:45 +03:30
README.md feat: dark mode (#10) 2024-04-27 02:53:33 +03:30

WireGuard (Easy Admin UI)

CI GPL-3.0 Licensed

Screenshot

screenshot screenshot screenshot

Features

  • Simple and friendly UI
  • Support for multiple users and servers
  • Support for Tor for anonymized connections
  • Server connection statistics
  • List, create, delete, or modify any server or user
  • Create QR codes
  • Easily download the client configurations.
  • Automatic Light/Dark Mode

Installation

1. Prerequisites

2. Docker Image

git clone https://github.com/shahradelahi/wireadmin
docker buildx build --tag litehex/wireadmin ./wireadmin

Pull from Docker Hub

docker pull litehex/wireadmin # OR ghcr.io/shahradelahi/wireadmin

3. Persistent Data

WireAdmin store configurations at /data. It's important to mount a volume at this location to ensure that your data is not lost during container restarts or updates.

Create a docker volume

docker volume create wireadmin-data --driver local

4. Run WireAdmin

When creating each server, ensure that you add the port exposure through Docker. In the below command, the port 51820 is added for the WireGuard server.

💡 The port 3000 is for the WebUI, and can be changed with PORT environment variable, but for security reasons, it's recommended to NOT expose any kind of WebUI to the public. It's up to you to remove it after configuring the Servers/Peers.

docker run --detach \
 --name wireadmin \
 -e WG_HOST=<YOUR_SERVER_IP> \
 -e UI_PASSWORD=<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" \
  litehex/wireadmin

💡 Replace <YOUR_SERVER_IP> with the IP address of your server.

💡 Replace <ADMIN_PASSWORD> with the password for the admin UI.

The Web UI will now be available on http://0.0.0.0:3000.

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. insecure-password
HOST The hostname for the WebUI. 127.0.0.1 ✔️
PORT The port for the WebUI. 3000 ✔️
TOR_USE_BRIDGES Set this to 1 and then mount the bridges file at /etc/torrc.d/bridges.conf. - ✔️
TOR_* The Torrc proxy configuration. (e.g. SocksPort as TOR_SOCKS_PORT="9050") - ✔️

Reporting

For bug reports, and feature requests, please create an issue on GitHub.

License

GPL-3.0 © Shahrad Elahi