VpnHood!

Install VpnHood! CONNECT on Linux

One command installs the app, with its window and a set of commands. Sign in once from the window, then connect from either.

Before you start

Install

Run this command, and answer its one question: whether the VPN service starts at boot. It picks the right build for your processor.

sudo su -c "bash <( wget -qO- https://github.com/vpnhood/VpnHood.App.Connect/releases/latest/download/VpnHoodConnect-linux.sh)"

It installs the VPN service and the vhconnect command. On a machine with a desktop, it also adds VpnHood! CONNECT to the application menu.

Connect

Open VpnHood! CONNECT from the application menu, sign in to your Premium account and connect.

Once you have signed in, you can also connect from a terminal, and check the connection:

vhconnect connect
vhconnect status

Signing in needs the app's window, so a machine with no desktop cannot use VpnHood! CONNECT yet. There you can use VpnHood! CLIENT with your own server.

Commands

They work from any administrator's terminal, without sudo. vhconnect --help lists them all, and vhconnect connect --help explains one.

CommandWhat it does
vhconnect connectConnects, and waits for the result. --location chooses a location, as vhconnect locations lists them.
vhconnect disconnectDisconnects. The service keeps running.
vhconnect statusShows the connection and any update on its way. --watch keeps printing it.
vhconnect locationsLists the server locations you can connect to.
vhconnect uiOpens the app's window.
vhconnect service statusShows whether the service is running.
vhconnect service logShows the service's log. -f follows it.
vhconnect service restartRestarts the service, which disconnects the VPN. It asks for your password.

Connect at startup

With Always On, the VPN connects as the computer starts, before anyone signs in. While the server is out of reach it tries again, waiting longer each time. It stops when you disconnect, when another VPN app takes over, or when the server refuses the connection. Switch it on in the app's Settings, or with this command:

vhconnect always-on on

Always On needs Premium.

Kill switch

The kill switch lets nothing out but the VPN tunnel, through an error, a crash and a reboot. With until-disconnect the block ends when you disconnect, and with lockdown it stays after a disconnect too:

vhconnect kill-switch until-disconnect

To lift the block, run vhconnect kill-switch off. With the service stopped, run it with sudo.

Updates

The app updates itself: at boot and every 12 hours it looks for a newer version, downloads it, and installs it while the VPN is disconnected. Automatic Updates in the app's Settings turns this off. This command installs a newer version at once, even with updates off, and the VPN disconnects while it installs:

vhconnect update

Installer options

For a script, or a machine with no desktop, add these to the install command, after its closing bracket:

OptionWhat it does
-qAsks no questions. A new install starts at boot and updates itself; an update keeps the choices you made.
-noautostartDoes not start the service at boot.
-noautoupdateDoes not update the app by itself.
-autoupdateUpdates the app by itself again, after -noautoupdate.
-nodesktopInstalls the service and the commands only: no menu entry and no libraries for the window.
-desktopInstalls the menu entry and the window's libraries even where no desktop is found.
-helpLists the options.

For example, with no questions and no desktop:

sudo su -c "bash <( wget -qO- https://github.com/vpnhood/VpnHood.App.Connect/releases/latest/download/VpnHoodConnect-linux.sh) -q -nodesktop"

Uninstall

Right-click VpnHood! CONNECT in the application menu and choose Uninstall, or run this command:

sudo /opt/VpnHoodConnect/vhuninstall

It keeps your settings in /opt/VpnHoodConnect/storage for a later install. Add -purge to delete them too.

When something is wrong

What you seeWhat to do
The VpnHoodConnect service is not running. Run sudo vhconnect service start, then read vhconnect service log.
The menu entry does nothingRun vhconnect ui in a terminal to see why. It is usually a library missing after an install with -nodesktop.
The window says only an administrator can use the appAdd your account to the sudo group, or to wheel where the system uses that one, then sign in again.
The app says another VPN app took overOnly one app made with VpnHood! connects at a time, so connecting another one disconnects this one. It stays off, even with Always On, until you connect it again.
Could not set the VPN's DNS servers. Run sudo systemctl enable --now systemd-resolved, then link /etc/resolv.conf to /run/systemd/resolve/stub-resolv.conf, as the message says.
The kill switch needs nftables (nft), which is not installed. Install the nftables package, or turn the kill switch off.
Connected, but nothing loadsRead vhconnect service log -n 100.
The VPN cannot use its interface name Another VPN has an interface called VpnHoodConnect, and the message says whose it is. Stop that VPN, or if it is gone and left the interface behind, run sudo ip link delete VpnHoodConnect.

Next steps