ProtonVPN is a VPN provider that utilizes OpenVPN protocol.
In order to use this tutorial, one must have a protonvpn account.
Log into ProtonVPN and download one or more OpenVPN configuration files.
Copy the *.ovpn files into
Pick the corresponding .ovpn that will be used (ca.protonvpn.com.tcp443.ovpn is used as an example)
Copy the file with a new extension (this is just so you keep the original ovpn file intact)
# cp /etc/openvpn/client/ca.protonvpn.com.tcp443.ovpn /etc/openvpn/client/protonvpn.conf
Install the openvpn-update-resolv-conf script. It needs to be saved for example at
/etc/openvpn/update-resolv-conf and made executable with chmod. There is also an AUR package: AUR[broken link: package not found] which will take care of the script installation for you. This script ensures that all traffic to/from the internet goes through the VPN and protects you against DNS leaks.
# chmod 755 /etc/openvpn/update-resolv-conf
Modify the .conf file to use the update-resolv-conf.sh script.
script-security 2 up /etc/openvpn/update-resolv-conf down /etc/openvpn/update-resolv-conf down-pre
Start your VPN:
# openvpn /etc/openvpn/client/protonvpn.conf
Ctrl+C to close the VPN connection.
Saving OpenVPN Authentication
If you get tired of punching in your username and password, you may save your OpenVPN credentials in a separate file and read them automatically.
Enable VPN on Boot
For systemd service configuration, see OpenVPN#systemd service configuration.