CypherGate

Anyone can hide. Few remain hidden.

Linux First Open Source v2.1.0


A Linux-first VPNGate client that automates server discovery, repairs broken configurations, and removes the manual work traditionally required to connect to VPNGate servers.

Showcase

Recorded on Arch Linux Hyprland

What is CypherGate?

VPNGate provides thousands of publicly accessible VPN servers maintained by volunteers around the world.

While useful, many VPNGate profiles require manual fixes before they work reliably with modern OpenVPN installations.

CypherGate automates that process by retrieving live servers, repairing outdated configurations, and managing connections through a simple graphical interface.

Features

Live VPNGate Integration

Retrieves live VPNGate servers directly from the official API.

Automatic Configuration Repair

Fixes outdated ciphers and compatibility issues before connection.

Fastest Server Selection

Sorts servers by latency and supports one-click automatic connection.

Modern Qt Interface

Built with PySide6 and designed around simplicity.

Offline Cache

Stores previously downloaded server lists for improved reliability.

Connection Logging

Detailed logs for diagnostics and troubleshooting.

Configurable Settings

Customize table columns, sorting, interface behavior, and other application settings through a user-editable JSON configuration.

Themeable Interface

Customize the Qt interface with QSS themes, including live hot-reloading while developing or editing themes.

Secure Daemon Architecture

Communicates with a hardened root daemon through a Unix socket protected by Linux group permissions.

Signed Releases

Official releases are cryptographically signed using GnuPG.

Why CypherGate Exists

The project started because manually working with VPNGate became annoying.

  • Download a server profile
  • Discover it doesn't work
  • Fix cipher settings
  • Repair compatibility issues
  • Try again

After repeating that workflow enough times, automating it became the obvious solution.

Platform Support

Linux

  • Fully supported and actively maintained.
  • All new development happens on Linux first.

Windows

  • Available through version 1.0.1.
  • Future development is Linux-only.
  • Windows maintainers welcome.

Installation

Select the installation method appropriate for your platform.

1. FIRST TIME ONLY — Import the CypherGate release signing key:


gpg --keyserver hkps://keys.openpgp.org \
    --recv-keys 9ED87F6065033606670941AAC6C9B498797C980E


2. Install using your favourite AUR helper:


yay -S cyphergatevpn-bin

curl -fsSL https://github.com/Cypher-Monarch/CypherGate/releases/latest/download/install.sh > install.sh
sudo bash install.sh
      

Installer

Standard Windows installation experience.

Download Installer

Portable

No installation required.

Download Portable

Customization

CypherGate v2.1 supports configurable application settings and QSS-based themes.

See the dedicated documentation for the complete configuration and theming reference:

How It Works


VPNGate API
      │
      ▼
Configuration Repair
      │
      ▼
Qt Frontend
      │
      ▼
Unix Socket
      │
      ▼
cyphergated
      │
      ▼
OpenVPN

CypherGate retrieves live VPNGate servers, repairs compatibility issues automatically, and launches OpenVPN through a dedicated privileged helper when elevated operations are required.

File Locations

~/.config/cyphergate
  • cache/ — Cached VPNGate server lists
  • servers/ — Generated OpenVPN profiles
  • countries.conf — Country filter configuration
  • settings.json — User application settings

/run/cyphergate
  • config.ovpn — Runtime OpenVPN configuration
  • cyphergated.sock — Unix socket used for privileged daemon operations

/var/log/cyphergate
  • Connection logs generated by OpenVPN

/usr/share/cyphergate/themes
  • *.qss — Builtin CypherGate themes

Final Note

It looks how it should. It works how it should. The "should" is yours