
- AWSAvailable on Amazon Web Services
- AzureAvailable on Microsoft Azure
- GCP· nextGoogle Cloud is next on the roadmap
VPN Server with Web Admin Panel
A personal and team VPN server on Ubuntu 24.04 LTS using the modern WireGuard protocol, managed from wg-easy 15.5.0, an open source web admin panel. Create a client in the browser, scan its QR code with the free WireGuard app on a phone or import its config file on a laptop, and the device connects. Use it to protect traffic on public Wi-Fi, give remote staff one fixed exit IP address, or reach private resources in your cloud. The VPN endpoint follows the instance's public IP at every boot.
- Version
- v15.5.0
- Operating system
- Ubuntu 24.04 LTS
- Architecture
- x86_64
- Support
- Email support
What's installed
Every package and version on the image, identical on every cloud it ships on. Nothing else is installed.
- wg-easy 15.5.0 (pinned by digest)
- WireGuard kernel module and tools
- Docker CE 29.9.2
- nginx 1.24.0
- Webmin 2.670
LicensingOpen source (AGPL-3.0 for wg-easy; WireGuard GPL-2.0), no licence key required
Deploy anywhere
VPN Server with Web Admin Panel on AWS and Azure.
Google Cloud is next on the roadmap. One clean-room build, one first-boot credential model, one patch cadence — identical on every cloud you run. Every identifier below is the real one; copy it and launch.
- AWSAvailable
Amazon Web Services
AMI · v15.5.0
AWS AMI IDShown for your region on the AWS Marketplace launch page once you subscribe.
- Released
- Root volume
- gp3 · 20 GiB
Instance types- t3a.small
- t3.small
- t3a.medium
- m6a.large
Regions34 regions· show all· hide
- us-east-1
- af-south-1
- ap-east-1
- ap-east-2
- ap-northeast-1
- ap-northeast-2
- ap-northeast-3
- ap-south-1
- ap-south-2
- ap-southeast-1
- ap-southeast-2
- ap-southeast-3
- ap-southeast-4
- ap-southeast-5
- ap-southeast-6
- ap-southeast-7
- ca-central-1
- ca-west-1
- eu-central-1
- eu-central-2
- eu-north-1
- eu-south-1
- eu-south-2
- eu-west-1
- eu-west-2
- eu-west-3
- il-central-1
- me-central-1
- me-south-1
- mx-central-1
- sa-east-1
- us-east-2
- us-west-1
- us-west-2
5-day free trial, then from $0.03/hr software charge (larger instance sizes cost more) plus your own EC2 costs, billed by AWS.
Subscriptions are open to AWS India (AISPL) accounts. Outside India? Ask us for a private build.
- AzureAvailable
Microsoft Azure
Compute Gallery image · v15.5
Azure Compute Gallery image IDSelected for you when you create the VM from the Azure Marketplace listing.
- Released
- OS disk
- Premium_LRS · 30 GiB
VM sizes- Standard_D2as_v7
- Standard_D2as_v5
- Standard_B2ms
- Standard_D4as_v7
Regions50 regions· show all· hide
- eastus
- australiacentral
- australiaeast
- australiasoutheast
- austriaeast
- belgiumcentral
- brazilsouth
- canadacentral
- canadaeast
- centralindia
- centralus
- chilecentral
- denmarkeast
- eastasia
- eastus2
- francecentral
- germanywestcentral
- indiasouthcentral
- indonesiacentral
- israelcentral
- italynorth
- japaneast
- japanwest
- jioindiawest
- koreacentral
- koreasouth
- malaysiawest
- mexicocentral
- newzealandnorth
- northcentralus
- northeurope
- norwayeast
- polandcentral
- qatarcentral
- southafricanorth
- southcentralus
- southeastasia
- southindia
- spaincentral
- swedencentral
- switzerlandnorth
- uaenorth
- uksouth
- ukwest
- westcentralus
- westeurope
- westindia
- westus
- westus2
- westus3
Getting started on Amazon Web Services
From launch to signed in, step by step.
Subscribe on AWS Marketplace and launch in your region with UDP
51820(the VPN tunnel) and TCP22,80,443and8000open; wait about two minutes for first boot.Open
https://<instance-public-ip>/, accept the one-time self-signed certificate warning and sign in with usernameadminand your EC2 Instance ID, lowercase exactly as the console shows it (for examplei-0123456789abcdef0).Click New client and name it. On a phone, scan its QR code with the WireGuard app; on a computer, download its configuration file and import it. Turn the tunnel on and your traffic leaves from this server's IP.
Webmin is on port
8000with the same username and password. SSH asubuntuwith your key pair. Change passwords withsudo bash /home/ubuntu/iscripts/pass_vpnadmin.shorpass_webmin.sh; see connected clients withsudo bash /home/ubuntu/iscripts/vpn_status.sh.A stop/start changes the public IP: the server follows it, but re-download client configs, or attach an Elastic IP so they never change.
Security posture
What this AWS image does and does not ship with, one fact per line.
Clean-room build on Canonical's official Ubuntu 24.04 LTS image: every component comes from its own official source, and nothing is copied from any third-party image. wg-easy is the unmodified upstream release, pinned by image digest.
No key or password ships in the image: on first boot every instance generates its own VPN server key pair, admin password, HTTPS certificate and Webmin password from EC2 instance metadata (IMDSv2).
The admin panel listens only on the server itself behind nginx and is served over HTTPS only (port 80 redirects).
SSH is key-only, and build-time SSH keys, host keys, machine ID, shell history and logs were removed before imaging.
The bundled password tools enforce at least 10 characters with upper- and lower-case letters, a number and a symbol.
Restrict ports 22 and 8000 to trusted IP ranges in your security group. wg-easy's source code: github.com/wg-easy/wg-easy.
WireGuard is a registered trademark of Jason A.
Donenfeld.
Getting started on Microsoft Azure
From launch to signed in, step by step.
Create the VM from the Azure Marketplace listing with UDP
51820and TCP22,80,443and8000open in your network security group. Chooseubuntuas the administrator username so SSH and the script paths match, and wait a few minutes for first boot to finish.Open
https://<vm-public-ip>/and sign in asadmin. The password is your VM ID (Azure portal > the virtual machine > Properties > VM ID, for example02aab8a4-74ef-476e-8182-f6d2ba4166a6). Add a client, then scan its QR code with the WireGuard app or download its config file. Webmin (port 8000, useradmin) uses the same password.For production, limit admin ports to your own IP address.
Security posture
What this Azure image does and does not ship with, one fact per line.
Clean-room build on Canonical's official Ubuntu 24.04 LTS image from the Azure Marketplace: every component comes from its own official source and no third-party image was launched or copied.
No two VMs share a login: first boot sets every password and secret key from the new VM's own vmId (read from Azure IMDS) or from fresh random values, and creates new SSH host keys.
The ubuntu login account ships password-locked with an empty authorized_keys, and Azure installs your own SSH key at deploy time.
Shell history, logs and cloud-init state are cleared before capture, and the image carries every Ubuntu 24.04 LTS security update with nothing pending.
Each gallery version is deployed as a Trusted Launch VM and checked against Microsoft's documented Linux certification test cases, the product's own end-to-end login tests and a stop/start cycle before it is published.
Restrict port 22 and the admin consoles to trusted IP ranges, and put public web consoles behind HTTPS with your own certificate.