Prerequisites for Installation
Before you start installing ProtonVPN on your Linux machine, make sure that you have the updated versions of OpenVPN, python3.5+, and pip for python3. Downloading Dialog is an optional dependency if you prefer interactive selecting. Press Ctrl + Alt + T and type in sudo apt-get install openvpn. This opens a terminal to install the OpenVPN package. Enter your password when prompted. Press Y and Enter when it asks for confirmation. Also type sudo apt-get install network-manager-openvpn-gnome to install the network-manager-openvpn-gnome package. Press Y and Enter to confirm. Also, type sudo apt install resolvconf to install resolvconf.
Note : If you this in protonvpn black friday sale like me last year means then the upcoming black friday is the right time for you to renew.
Download the ProtonVPN Config Files
On the left navigation bar of your ProtonVPN dashboard, select Downloads. You will see a section named OpenVPN Configuration Files. Choose Linux as the Platform and UDP as Protocol. Choose TCP as Protocol only you usually have slow VPN speed. Select the server and click its download icon. Extract the zip file and save it at your preferred location. Also, configure your OpenVPN credentials by clicking on the Accounts tab on the ProtonVPN dashboard. The ProtonVPN login credentials will be used for applications while OpenVPN/IKEv2 username will be used for manual connections.
You can set up either by using the Network Manager or the Terminal (CLI).
Using the Network Manager for Setup
You can add a new connection by clicking on the connection symbol on the top right of your system menu. Select Edit Connections and click Add. This will create a new connection. In the drop-down menu select Import a Saved VPN Configuration and click Create. Navigate to the location of the configuration file or the extracted configuration .zip file of your preferred server and import it. The file names contain two-letter abbreviations of the country names and the number of servers in that country. The ProtonVPN servers page has all the abbreviations for reference. Secure core servers are named with two country abbreviations. A new window will open. Type in your OpenVPN username and password and click Save. Again click on the connection symbol on the top right of your system menu. Select VPN Connections and move your mouse over the entry of the config file you just added and click on it. This will connect to the ProtonVPN server that you have chosen. A confirmation message will popup once the connection is established.
Using the Terminal for Setup
This option is recommended if you are affected by DNS leaks issues. Type sudo wget https://raw.githubusercontent.com/ProtonVPN/scripts/master/update-resolv-conf.sh -0 “/etc/openvpn/update-resolv-conf” and sudo chmod +x “/etc/openvpn/update-resolv-conf” to ensure that your device has the resolv-conf script properly downloaded. Press Ctrl + Alt + T. This opens a terminal. Go to the location of the extracted config files using cd <path> or you can use any file manager, right-click on the file and click Open in Terminal. Type sudo openvpn <config file name.ovpn> to initialize a new connection. You will be prompted to enter your device’s administrator password and OpenVPN credentials to authenticate the connection. A message Initialization Sequence Completed will be displayed on the screen confirming the connection.