TiloBox
Back to directory
Wg-Easy project preview

Wg-Easy

The easiest way to run WireGuard VPN + Web UI on your own server.

LicenseAGPL-3.0
GitHub stars26.7k
Last commit1 weeks ago
Tags6 topics
WireguardQr CodeWeb UiSelf HostedVpnDocker
Overview

Why consider Wg-Easy?

Wg-Easy is an all-in-one WireGuard VPN server and web dashboard. It features one-click client configuration generation, QR codes for mobile devices, and bandwidth statistics.

Guided learning

Learn Wg-Easy by building

Practical setup notes, real use cases, and copy-ready examples in one focused guide.

3 min read 10 sections
In this guide10 sections

What is Wg-Easy?

Wg-Easy is an all-in-one, open-source WireGuard VPN server and management web interface packed into a single Docker container. It serves as an effortless, self-hosted alternative to proprietary VPN services (NordVPN, ExpressVPN) and complex commercial VPN gateways like OpenVPN Access Server.

Wg-Easy eliminates the complexity of configuring WireGuard cryptographic key pairs, IP routing tables, and iptables firewall rules manually. Through a clean web dashboard, administrators can create new VPN clients in one click, download configuration files, and display QR codes for mobile setup.

Who Is It For?

  • Homelabbers & Self-Hosters: Setting up a personal home VPN in under 5 minutes to access local network devices remotely.
  • Remote Workers & Travelers: Securing public Wi-Fi connections in cafes and airports by routing traffic through a trusted personal VPS.
  • Small Teams: Providing team members with secure VPN access to internal staging servers without complicated enterprise software.

Key Features

  • Single all-in-one Docker image containing the WireGuard VPN server and web administration portal.
  • One-click client creation with automatic cryptographic key pair and IP allocation.
  • QR code display for instant mobile client onboarding using the official WireGuard iOS and Android apps.
  • Real-time client connection metrics: View active connected clients, transfer rates, and total data usage.
  • One-click client disabling or deletion to instantly revoke VPN access for decommissioned devices.

Deploying Wg-Easy with Docker Compose

yaml
1version: "3.8"
2
3services:
4 wg-easy:
5 environment:
6 - PASSWORD_HASH=$$2a$$12$$generate_bcrypt_password_hash_here
7 - WG_HOST=vpn.example.com
8 - WG_PORT=51820
9 - WG_DEFAULT_ADDRESS=10.8.0.x
10 - WG_DEFAULT_DNS=1.1.1.1,8.8.8.8
11 - WG_ALLOWED_IPS=0.0.0.0/0, ::/0
12 image: ghcr.io/wg-easy/wg-easy:latest
13 container_name: wg-easy
14 volumes:
15 - ./etc_wireguard:/etc/wireguard
16 ports:
17 - "51820:51820/udp"
18 - "51821:51821/tcp"
19 restart: unless-stopped
20 cap_add:
21 - NET_ADMIN
22 - SYS_MODULE
23 sysctls:
24 - net.ipv4.ip_forward=1
25 - net.ipv4.conf.all.src_valid_mark=1

Generate a password hash:

bash
1docker run --rm ghcr.io/wg-easy/wg-easy:latest wgpw 'YourSecurePasswordHere'

Copy the generated hash into PASSWORD_HASH and launch the container:

bash
1docker compose up -d

Navigate to http://vpn.example.com:51821 in your browser, log in with your password, and click New Client to generate your first VPN configuration.

Practical Use Cases

1. Mobile Phone Wi-Fi Security

A user creates a client named "iPhone", scans the generated QR code using the official WireGuard iOS app, and activates on-demand VPN encryption on public hotel networks.

2. Remote Homelab Management

A sysadmin connects a laptop to Wg-Easy to securely SSH into home servers and access NAS management interfaces from anywhere in the world.

3. Family Privacy Shield

A household configures family devices to route internet traffic through a home Wg-Easy server connected to Pi-hole for network-wide ad blocking on mobile data.

Troubleshooting and Limitations

  • UDP Port 51820 Forwarding: WireGuard operates strictly over UDP; ensure port 51820/udp is forwarded in your router/firewall to the host machine.
  • Linux Kernel Cap Add: Wg-Easy requires NET_ADMIN and SYS_MODULE capabilities in Docker to manage host network interfaces and forwarding rules.

Official Resources

Related tools

More options with a similar category or technology profile.

Wg-Easy FAQs

Wg-Easy is listed as a Security tool on TiloBox. Review the overview, features, and official documentation on this page to decide whether it solves your specific workflow.

Start with the project's GitHub repository for supported installation and deployment instructions. Test the setup with representative data or a small project before rolling it out more widely.

Wg-Easy is listed under the AGPL-3.0 license. Read the complete license text and the project's notices before using, modifying, or distributing the software.

Production readiness depends on your requirements. Review maintenance activity, security practices, documentation, backup and upgrade procedures, and compatibility with your stack; then validate it in a non-production environment.

Wg-Easy is listed as an alternative to NordVPN. Compare the core workflow, deployment model, integrations, and licensing against your must-have requirements before switching.