selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
SwizGuard logo

Self-host SwizGuard

Stealth VPN that looks like HTTPS traffic

BetaOpen SourceMIT
Updated6 months ago
LanguageShell
Setup difficultyModerate
Stars
232
Ports
443 (Xray VLESS+REALITY+Vision inbound (HTTPS camouflage)), 51821 (WireGuard server (internal, localhost only))
Requires
WireGuard, Xray-core
Install with Linux
Plain WireGuard traffic in Wireshark showing WireGuard protocol labelsSwizGuard traffic in Wireshark showing TLSv1.2/TCP port 443 Application Data

What is SwizGuard?

SwizGuard is a self-hosted stealth VPN that makes your traffic look like ordinary HTTPS to Microsoft.com. It conceals a WireGuard tunnel within VLESS+REALITY and Vision flow so the connection appears identical to a real HTTPS session. The server runs on a low-cost VPS using Debian or Ubuntu and is set up with a single command. Client configurations for macOS, Linux, Windows, iOS, and Android are created automatically as Xray or sing-box files. You control the VPS and the keys — no third-party VPN provider is involved. The code is MIT-licensed and builds on Xray-core, sing-box, and WireGuard.

Should you self-host SwizGuard?

SwizGuard scores 42/100 on selfhost.directory (how scoring works) and ranks #46 of 56 in VPN. It has 232 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is moderate: expect some configuration beyond a single command. It is MIT-licensed and written mostly in Shell.

Its closest alternative on selfhost.directory is Tailscale (84/100, 38 215 stars). It scores higher overall, so compare the two before you pick. See SwizGuard vs Tailscale side by side.

Features

  • Automatic client config generation
  • Client management CLI
  • Cross-Platform Clients
  • One-command server deployment
  • REALITY key rotation
  • Single-process client
  • Stealth VPN (VLESS+REALITY+Vision)
  • Vision flow (xtls-rprx-vision)
  • VPS hardening integration
  • Zero access logs

SwizGuard README

How to install SwizGuard

Install SwizGuard with Linux

git clone https://github.com/YOUR_USER/swizguard.git cd swizguard sudo ./swizguard setup

Requires Debian 12/13 or Ubuntu 22.04/24.04 (amd64/arm64), root access, port 443/tcp open

How to configure SwizGuard

  • CAMOUFLAGE_DESTwww.microsoft.comCamouflage destination domain for REALITY (default: www.microsoft.com)

    Camouflage destination domain for REALITY (default: www.microsoft.com)

  • WG_MTU1280WireGuard MTU reduced for tunnel-in-tunnel overhead (default: 1280)

    WireGuard MTU reduced for tunnel-in-tunnel overhead (default: 1280)

  • WG_PORT51821Port for WireGuard server (default: 51821, internal only)

    Port for WireGuard server (default: 51821, internal only)

  • WG_SUBNET10.7.0WireGuard IPv4 subnet (default: 10.7.0)

    WireGuard IPv4 subnet (default: 10.7.0)

  • WG_SUBNET6fd07::7WireGuard IPv6 subnet (default: fd07::7)

    WireGuard IPv6 subnet (default: fd07::7)

  • XRAY_PORT443Port for Xray inbound (default: 443)

    Port for Xray inbound (default: 443)

More in VPN

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…