Free censorship circumvention VPN app for Android, iOS, Windows, macOS and Linux, aimed at speed, privacy and bypassing internet blocks.
amnezia-vpn/amnezia-client
Open-source VPN client that deploys and connects to your own self-hosted VPN server over SSH, across desktop and mobile.
Open-source alternative to:NordVPN
ExpressVPN
- Stars
- 15,797
- Forks
- 1,267
- Open issues
- 1,191
- Last commit
- 22 hours ago
What is it?
Amnezia is an open-source VPN client whose main purpose is to let you run your own VPN server. You enter a server's IP address and SSH credentials, and the client installs the VPN containers on that server through Docker and then connects to it.
The client supports classic protocols such as OpenVPN, WireGuard and IKEv2, as well as traffic-obfuscating options including OpenVPN over Cloak, Shadowsocks, AmneziaWG and XRay. Split tunneling lets you route only selected sites or, on Android and desktop, selected apps through the VPN.
Builds are provided for Windows, macOS, Linux, Android and iOS. The project is written in C++ with Qt 6 and uses CMake, Conan and bundled scripts in the deploy directory for building.
Key features
- 01Deploys VPN containers to your server automatically over SSH.
- 02Supports OpenVPN, WireGuard and IKEv2.
- 03Offers obfuscated options including Cloak, Shadowsocks, AmneziaWG and XRay.
- 04Provides split tunneling by site or app on Android and desktop.
- 05Runs on Windows, macOS, Linux, Android and iOS.
Use cases
- Running a personal VPN on a VPS you control.
- Connecting to a self-hosted VPN from networks that block standard VPN protocols.
- Routing only selected apps or sites through the VPN while the rest of traffic goes direct.
Quick start
- 1
Download the app from the Amnezia website or the releases page
- 2
Clone the repository and pull its submodules
git submodule update --init --recursive - 3
Build the executables for your host platform on Linux or macOS
deploy/build.sh
Things to know
- Building from source requires Qt 6.10+, CMake and Conan, which is a heavy setup.
- You need your own server with SSH access, since Amnezia deploys the VPN server there.
- Licensed under GPL-3.0, a copyleft license that requires derivative works to remain open source.
In collections
Topics
FAQ
- What is amnezia-client?
- Open-source VPN client that deploys and connects to your own self-hosted VPN server over SSH, across desktop and mobile. Amnezia is an open-source VPN client whose main purpose is to let you run your own VPN server. You enter a server's IP address and SSH credentials, and the client installs the VPN containers on that server through Docker and then connects to it.
- Is amnezia-client free to use? What license does it have?
- amnezia-client is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is amnezia-client still maintained?
- Actively maintained. The last commit to amnezia-client was on Nov 6, 2026.
- What can I use amnezia-client for?
- Running a personal VPN on a VPS you control. Connecting to a self-hosted VPN from networks that block standard VPN protocols. Routing only selected apps or sites through the VPN while the rest of traffic goes direct.
- How do I install amnezia-client?
- Download the app from the Amnezia website or the releases page Clone the repository and pull its submodules: git submodule update --init --recursive Build the executables for your host platform on Linux or macOS: deploy/build.sh
- Where can I get amnezia-client?
- The source code and installation instructions are on GitHub: https://github.com/amnezia-vpn/amnezia-client
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A shell script that sets up a WireGuard VPN server on Linux in minutes and manages its clients.
Ansible scripts that deploy a personal WireGuard and IPsec VPN server to your own cloud account in minutes.
Shell script that installs and manages an OpenVPN road warrior server on Ubuntu, Debian and RHEL-family distros.
Android app combining a DNS-over-HTTPS/TLS/DNSCrypt client, a per-app firewall and network monitor, and a split-tunnel WireGuard/SOCKS5 proxifier, without requiring root.
Outline Server is a Shadowsocks-based proxy server with a REST API for managing access keys, developed by Jigsaw.