ProtonVPN, install the CLI of this VPN service in Ubuntu

about protonvpn

In the next article we are going to take a look at ProtonVPN. This is a VPN service provider based in Switzerland. In the following lines we are going to see how to install and use ProtonVPN from the Ubuntu, Debian or Linux Mint desktop.

For those who don't know, VPN stands for Virtual Private Network, and with this service a secure and encrypted 'tunnel' is configured between our device and the VPN server. Keep in mind that using a VPN service is not a silver bullet to protect our privacy and security online. For those looking for greater security, perhaps it is a better option to use the browser Tor en Tail Linux. However, I think most users don't need to go that far.

General characteristics of ProtonVPN

protonvpn

  • El full disk encryption it is implemented on all ProtonVPN servers.
  • All client applications are open source.
  • In the paid version we can route all your traffic through the Tor network and access the Onion sites.
  • Supports IKEv2 / IPSec and OpenVPN secure protocols.
  • DNS leak protection and IPv6 leak protection.
  • Graphical VPN Client available for Android, iOS, Mac OS X, and Windows. In Gnu / Linux we can use the terminal client.
  • In the paid version we can use ProtonVPN to browse anonymously on multiple devices at the same time.
  • ProtonVPN has more than 1076 servers in 54 different countries.
  • No registration policy. ProtonVPN does not collect, record, or store any browsing activity, data, or IP addresses.
  • The torrent function in the paid version.
  • VPN kill switch. If the VPN connection drops, our computer will revert to the original public IP by default.

These are just some of the features. They can consult all of it in detail from the project website.

Install ProtonVPN on Ubuntu / Debian / Mint

First of all, we will need go to the official website of ProtonVPN and sign up for a free account. With the free version that we are going to use in this example we will get 1 VPN connection, servers in 3 countries, an average speed and we will get a service without registrations or ads.

web log

It is necessary to mention that ProtonVPN supports IKEv2 / IPSec and OpenVPN protocols. For this example we will use OpenVPN, since it is very secure and easy to configure:

protonvpn requirements

sudo apt install openvpn dialog python3-pip python3-setuptools

Next we need install ProtonVPN client for Gnu / Linux. We will achieve this by typing in a terminal (Ctrl + Alt + T):

pip3 install protonvpn

sudo pip3 install protonvpn-cli

Using the ProtonVPN client in Ubuntu

After installation, we will have to log in to our ProtonVPN account with the following command:

login user password terminal

sudo protonvpn init

Username and password can be found at account we just created.

user password protonvpn

Back at the terminal, we will have to select our ProtonVPN plan (in this case free) and choose UDP or TCP as the transport layer protocol. As indicated on their website, it is advisable to use UDP first, if there is a problem establishing the VPN connection, we can use the TCP protocol.

vpn terminal configuration

Keep in mind that ProtonVPN client for Gnu / Linux does not support IPv6. It is recommended to disable IPv6 on our Gnu / Linux device to avoid IPv6 address leakage. We will achieve this by editing /etc/sysctl.conf with a text editor:

sudo vim /etc/sysctl.conf

Y adding the following lines at the end of this file.

disable ipv6

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.tun0.disable_ipv6 = 1

Save and close the file. Now we can now establish the VPN connection to the ProtonVPN server:

sudo protonvpn connect

It will ask us to choose a country. Free users will have 3 countries to choose from.

select connection countries

The next screen it will ask us to choose a server from the selected country.

select server within country

Then we will have to choose TCP or UDP as the transport layer protocol. After a few seconds, VPN connection should be established.

established connection

IPv6, DNS and WebRTC leak test

Once the connection is established, we can direct us to ipleak.net. If everything works correctly, we should see something like the following:

IP adress

This page will show us that our team will have a new IP address, so from the Internet you should no longer be able to see our real public IP address.

As you can see from the screenshot above, there is no IPv6 address in the test result, which means that the IPv6 address is also hidden from the Internet. There is also no IP address in the detection section of WebRTC and no IP address in the DNS addresses section. If your ISP's DNS server shows up in the test results, it means we have a DNS leak, which means that your ISP's DNS server is translating domain names to IP addresses, so the ISP knows which websites you are visiting.

How to disconnect ProtonVPN

We just have to run the following command to disconnect ProtonVPN:

sudo protonvpn disconnect

uninstall

If we want uninstall this client through the package manager that we use for the installation:

uninstall

sudo pip3 uninstall protonvpn-cli

For learn more about prontonvpn-cli installation and how to use it, users can consult the help offered on the project website.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.

  1.   mig said

    Thanks for this article introducing Proton VPN access with Linux.

    In my case I use Ubuntu even though I don't handle commands, could you know how to use this application?
    What steps would be taken after downloading https://protonvpn.com/es/download-linux ?

    I have a Proton Plus account, but I often find guides, tutorials and suggestions for use that start from knowing how to write "sudo ...". Wouldn't there be a version - even if it is simpler in scope - that I can handle and thus use VPN of a certain quality?

    Thank you for helping in that difficult point of wanting to take care of Internet access with VPN but not knowing how.

    1.    Damien A. said

      Hi there. If you mean if there is any graphical interface for Ubuntu from ProtonVPN, then the truth is that I do not know.

      I just saw the project web page, and for Ubuntu 20.04 they indicate that you can install an app to use from the desktop, but you will have to install using the commands offered on that page. I hope this helps you. Salu2.