WireGuard & Tailscale
VPN Setup Guide
Connect securely to your home servers, Proxmox lab, or local devices from remote networks using Tailscale or self-hosted WireGuard.
1. Option 1: Tailscale Setup
Install Tailscale on your Linux server:
curl -fsSL https://tailscale.com/install.sh | sh
Authenticate your server with your Tailscale account:
sudo tailscale up
Open the printed URL in your browser to authorize your machine. Install the Tailscale app on your client devices to access your server via its Tailscale IP (e.g. 100.x.y.z).
2. Option 2: WG-Easy WireGuard Setup
Create a directory and docker-compose.yml file for WG-Easy:
mkdir -p ~/wg-easy && cd ~/wg-easy
nano docker-compose.yml
Paste the WG-Easy Docker compose file:
version: "3.8"
services:
wg-easy:
environment:
- WG_HOST=your-domain.com # Your public IP or Dynamic DNS domain
- PASSWORD=YourSecurePassword
image: ghcr.io/wg-easy/wg-easy
container_name: wg-easy
volumes:
- ~/.wg-easy:/etc/wireguard
ports:
- "51820:51820/udp"
- "51821:51821/tcp"
restart: unless-stopped
cap_add:
- NET_ADMIN
- SYS_MODULE
sysctls:
- net.ipv4.conf.all.src_valid_mark=1
- net.ipv4.ip_forward=1
Start the container and ensure port 51820 UDP is forwarded in your router:
docker compose up -d
Access the WG-Easy admin dashboard at
http://your-server-ip:51821 to generate clients and scan QR codes with the WireGuard app.