Linux requirements
What a machine needs to run VpnHood! CLIENT or VpnHood! CONNECT on Linux: one of the systems below, with systemd, and an x64 or ARM64 processor.
Distributions
The apps run on x64 and ARM64. They install and start on these distributions; the ones built on them, and others with systemd and glibc, should also work:
| Distribution | Versions |
|---|---|
| Ubuntu | 22.04, 24.04, 26.04 |
| Debian | 12, 13 |
| AlmaLinux | 8, 9, 10 |
| Rocky Linux | 9 |
| CentOS Stream | 9, 10 |
| Fedora | 43, 44 |
| openSUSE Leap | 16.0 |
| Amazon Linux | 2023 |
| Arch Linux | Rolling release, kept up to date |
Not supported: Alpine and the other distributions built on musl instead of glibc. The installer finishes there, but the app cannot start.
What the system needs
- Root access to install the app, and systemd, which runs its VPN service.
- An administrator's account to use it: root, or a member of the
sudo,wheeloradmingroup. A line in the sudoers file is not enough. - A TUN device for the VPN, which nearly every machine has.
- A way to set the VPN's DNS, which the installer does not add:
systemd-resolved, turned on, orresolvconf. Without one, the app cannot connect, and its error says what to do. Many systems havesystemd-resolvedturned off, so check this first. - For the kill switch,
nftables, which the installer adds, and cgroup v2. Without them, the app says so and does not connect while the kill switch is on. - For QUIC, MsQuic, which the installer adds. Where it cannot, as on Amazon Linux 2023, the app connects without QUIC.
- For the window, a desktop. The installer adds the libraries the window needs. Without a desktop, you get the VPN service and the commands.
- VpnHood! CONNECT signs in from its window, so for now it needs a desktop.
Processor
An ARM64 processor, or an x64 processor with SSE4.2 and POPCNT, as .NET 11 requires. Every x64 processor from the last ten years has them, but some VPS providers hide them behind a basic virtual processor, which Linux names Common KVM processor. On such a machine the server stops as soon as it starts, with the error The current CPU is missing one or more of the following instruction sets.
To check an x64 Linux machine, run this on it:
grep -qw sse4_2 /proc/cpuinfo && grep -qw popcnt /proc/cpuinfo && echo Supported || echo "Not supported"If it prints Not supported, ask your provider to change the machine's CPU type to host or x86-64-v2. If they cannot, choose another provider.