[HowTo] Installation and usage of ProtonVPN

Proton VPN

Installation on Manjaro

AUR

RECOMMENDED: Build the command line client using AUR build script.

pamac build protonvpn-cli-ng

Python PIP

NOTE: Manjaro does not recommend installing system wide Python packages using PIP as it often creates file conflicts during updates. The following is ProtonVPN installation method is using Python PIP.

sudo pacman -Syu openvpn dialog python-pip python-setuptools --needed
sudo pip3 install  protonvpn-cli

Usage

To get an overview of available commands

protonvpn --help

And you can get detailed help on a command by entering this

protonvpn --help connect

Examples

You can get some command line examples - see Output details below.

protonvpn examples
Output
❯ protonvpn examples
protonvpn connect
               Display a menu and select server interactively.

protonvpn c BE-5
               Connect to BE#5 with the default protocol.

protonvpn connect NO#3 -p tcp
               Connect to NO#3 with TCP.

protonvpn c --fastest
               Connect to the fastest VPN Server.

protonvpn connect --cc AU
               Connect to the fastest Australian server
               with the default protocol.

protonvpn c --p2p -p tcp
               Connect to the fastest torrent server with TCP.

protonvpn c --sc
               Connect to the fastest Secure-Core server with
               the default protocol.

protonvpn reconnect
               Reconnect the currently active session or connect
               to the last connected server.

protonvpn disconnect
               Disconnect the current session.

protonvpn s
               Print information about the current session.

Configure

You can only configure one item at a time so you need to rerun the configure command if you want to change several options.

sudo protonvpn configure

Username and password

Login to your Proton VPN account and navigate to your Account page and scroll down to OpenVPN / IKEv2 username and keep the page open.

Press 1Enter

Copy and paste the username from your account page and press Enter
Do the same with your password (TIP: you can't see the password) copy and paste then press Enter
Repeat the password by copy/paste and press Enter the last time.

Sample configure command
❯ sudo protonvpn configure
What do you want to change?

1) Username and Password
2) ProtonVPN Plan
3) Default Protocol
4) DNS Management
5) Kill Switch
6) Split Tunneling
7) Purge Configuration

Please enter your choice or leave empty to quit: 1

Enter your ProtonVPN OpenVPN username: some.username.from.account.page
Enter your ProtonVPN OpenVPN password: 
Confirm your ProtonVPN OpenVPN password: 
Username and Password has been updated!

Default protocol

Selecting between TCP or UDP is a matter of choice. Selecting TCP will make use of other ports than the dedicated OpenVPN port 1194 like 443 and this will make the encrypted traffic appear like any other encrypted traffic. In other words - to an eventual monitoring entity - it is not apparent that it is VPN traffic.

Killswitch

The kill switch can also be configured - ensuring that you do not fallback to your ISP should the connection to the VPN drop for any reason.

DNS management

The recommended DNS management is to prevent DNS leak. Should you prefer some other DNS it can be changed.

Split Tunneling

This is a feature where you exclude certain applications or IP addresses from the VPN endpoint.

One example of such use could be work VPN which expect a certain point of origin like your home IP.

Connect

Connecting is simple. Using below command launches a dialog based UI where you select country and server. The server list displays the current load on a given server so you can choose the server with the least load.

sudo protonvpn c

But you can as well connect if you know the id of the server. If you are using zsh as your shell - wrap your server id in single qoutes e.g.

sudo protonvpn c 'IS-DE#1'

Disconnect

sudo protonvpn d

Conclusion

Proton VPN provides a free service which is limited to servers from three (3) countries and one (1) connection. The free account does not include P2P, Tor over VPN or the Secure core.

From time to time you can get a bargain deal - I got a Black Friday deal on my Proton Mail account with 50% off on a 2 year Proton VPN Plus.

8 Likes

I hope you don't mind, but I'd like to share what I've been working on. It is a unofficial reccomended GUI by and for ProtonVPN. It is available on aur, pip and github and works on most DE.

AUR: https://aur.archlinux.org/packages/protonvpn-linux-gui/
Github: https://github.com/ProtonVPN/linux-gui

1 Like

Forum kindly sponsored by