- JavaScript 60.9%
- CSS 22.6%
- HTML 12.6%
- Python 2.8%
- SCSS 1%
| accounts | ||
| api | ||
| api_v2 | ||
| app_gateway | ||
| cluster | ||
| console | ||
| containers | ||
| dns | ||
| docs | ||
| firewall | ||
| gatekeeper | ||
| intl_tools | ||
| locale | ||
| routing_templates | ||
| scheduler | ||
| screenshots | ||
| static_files | ||
| templates | ||
| user_manager | ||
| vpn_invite | ||
| vpn_invite_public | ||
| wgrrd | ||
| wgwadmlibrary | ||
| wireguard | ||
| wireguard_peer | ||
| wireguard_tools | ||
| wireguard_webadmin | ||
| .dockerignore | ||
| .env.cluster_example | ||
| .env.example | ||
| .gitignore | ||
| build_and_push.sh | ||
| cluster_node-dev.yml | ||
| cluster_node.yml | ||
| docker-compose-build.yml | ||
| docker-compose-caddy.yml | ||
| docker-compose-dev.yml | ||
| docker-compose-no-caddy.yml | ||
| Dockerfile | ||
| Dockerfile_nginx | ||
| entrypoint.sh | ||
| init.sh | ||
| LICENSE | ||
| manage.py | ||
| nginx_entrypoint.sh | ||
| README.md | ||
| requirements.txt | ||
| update_messages.sh | ||
| virtualhost.conf | ||
🌍 Read this in other languages:
✨ If you find any issues with the translation or would like to request a new language, please open an issue.
wireguard_webadmin
Self-hosted VPN management and Zero Trust access control — all on your infrastructure.
More than a WireGuard panel: manage peers, firewall rules, DNS, port forwarding, and publish internal apps with proper authentication — without relying on third-party services. Runs on any Linux machine with Docker. Free, open source, nothing leaves your server.
- ⚙️ Manage — Multiple WireGuard instances, peer traffic graphs, firewall, DNS blacklists, VPN invite links with QR code
- 🔒 Protect — Zero Trust application gateway with TOTP, IP ACL, and anti-brute-force (Altcha PoW)
- ⚡ Automate — Scheduled peer access, routing templates, expiring invite links, REST API v2
📖 Full documentation, installation guide and tips at wireguard-webadmin.com
Quick Install
mkdir wireguard_webadmin && cd wireguard_webadmin
wget -O docker-compose.yml https://raw.githubusercontent.com/eduardogsilva/wireguard_webadmin/main/docker-compose-caddy.yml
# edit .env with your SERVER_ADDRESS
docker compose up -d
For detailed instructions, upgrade guide, and configuration tips visit wireguard-webadmin.com.
Screenshots
Peer List
Real-time status and live bandwidth graphs for every peer across all WireGuard instances.

Peer Details
Traffic history, last handshake, allowed IPs, and QR code — all in one place.

Zero Trust Application Gateway
Publish internal apps like Proxmox or Grafana with TOTP authentication in front — no open ports needed.

Firewall Management
Per-instance iptables rules, port forwarding, and outbound ACLs managed from the UI.

VPN Invite
Generate a shareable invite with QR code and config file. The user scans or imports it directly into their WireGuard client.

License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
Contributions are welcome and greatly appreciated. Feel free to open issues or pull requests on GitHub.