mirror of
https://github.com/wireadmin/wireadmin
synced 2025-01-22 20:15:29 +00:00
78 lines
3.3 KiB
Markdown
78 lines
3.3 KiB
Markdown
# WireGuard GUI (Easy Admin UI)
|
|
|
|
![Screenshot](assets/screenshot-1.png)
|
|
|
|
| | |
|
|
|:------------------------------------------------------------------------------------------:|:------------------------------------------------------------------------------------------:|
|
|
| <img src="assets/screenshot-2.png" alt="screenshot" style="width:100%;max-height:300px;"/> | <img src="assets/screenshot-3.png" alt="screenshot" style="width:100%;max-height:300px;"/> |
|
|
|
|
## 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.
|
|
|
|
- [Install Docker Engine](https://docs.docker.com/engine/install/)
|
|
|
|
### 2. Run WireAdmin
|
|
|
|
Install WireAdmin using the command line:
|
|
|
|
```bash
|
|
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
|
|
```
|
|
|
|
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](LICENSE) file for more info.
|