Menu
User

DropVPS Team

Writer: Cooper Reagan

How to install proton vpn on Centos 8

How to install proton vpn on Centos 8

Publication Date

10/18/2025

Category

Articles

Reading Time

3 Min

Table of Contents

Proton VPN installation on CentOS 8 involves several key steps. The process begins with fixing end-of-life repository issues, followed by installing all required dependencies and configuring the Proton VPN CLI. After setup, the secure connection, kill switch, and DNS leak protection are tested. An alternative configuration method using NetworkManager is also provided.

Update CentOS 8 and fix EOL repositories

CentOS 8 is EOL. Switch to vault repositories and fully update the system to prevent package errors.

sudo sed -i 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/CentOS-*.repo
sudo sed -i 's|^#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*.repo
sudo dnf clean all
sudo dnf -y update
sudo reboot

Install OpenVPN and required packages

Proton VPN CLI relies on OpenVPN and a few utilities. Install EPEL, OpenVPN, pip, and helpers.

sudo dnf -y install epel-release
sudo dnf -y install openvpn dialog python3-pip NetworkManager-openvpn wireguard-tools
sudo systemctl enable --now NetworkManager

Install Proton VPN CLI (Python)

Install the Proton VPN CLI via pip system-wide, then verify the version.

sudo pip3 install --upgrade pip
sudo pip3 install protonvpn-cli
protonvpn --version
ProtonVPN-CLI v3.x.x

Initialize Proton VPN CLI

Run the initializer to set protocol, DNS behavior, and authenticate. Your Proton account may require 2FA.

sudo protonvpn init
Choose a default protocol [OpenVPN]:
Enable DNS leak protection? [Y/n]:
Do you want to enable autoconnect? [y/N]:
Username (Proton): ********
Password: ********
Initialization successful.

Connect to a Proton VPN server

Connect to the fastest server or pick a specific endpoint. Check status after connecting.

sudo protonvpn c -f
sudo protonvpn status
Status: Connected
Server: NL#12
Protocol: OpenVPN (UDP)
IP: 185.xxx.xxx.xxx
Kill Switch: Off

List servers and connect to a chosen one if needed.

sudo protonvpn s -r NL
sudo protonvpn c NL#12

Enable kill switch, DNS protection, and autoconnect

Increase privacy by toggling kill switch and DNS leak protection. Adjust autoconnect if desired.

sudo protonvpn ks --on
sudo protonvpn dns --on
sudo protonvpn configure
Autoconnect [On/Off]: On
Default connection: Fastest
DNS Leak Protection: On
Kill Switch: On
Saved.

Verify tunnel and DNS

Confirm your public IP is from Proton VPN and DNS resolvers are not your ISP.

curl -4 ifconfig.io
nmcli dev show | grep -i 'IP4.DNS'
sudo protonvpn status
198.xxx.xxx.xxx
IP4.DNS[1]:  10.x.x.x
IP4.DNS[2]:  10.x.x.x
Status: Connected (Kill Switch: On, DNS: On)

Optional: Use NetworkManager with Proton VPN .ovpn files

If you prefer GUI/NM control, import a Proton .ovpn profile and bring it up with nmcli.

mkdir -p ~/protonvpn
# Download a ProtonVPN OpenVPN (.ovpn) file into ~/protonvpn
nmcli connection import type openvpn file ~/protonvpn/ProtonVPN-NL-UDP.ovpn
nmcli con up "ProtonVPN-NL-UDP"

Disconnect with:

nmcli con down "ProtonVPN-NL-UDP"

Troubleshooting on CentOS 8

If package installs fail, recheck vault repo changes and EPEL status. For OpenVPN errors, enable verbose logging.

sudo dnf repolist
openvpn --version
sudo protonvpn d && sudo protonvpn c -f -v

Upgrade or uninstall Proton VPN CLI

Keep the CLI current. Disconnect before uninstalling.

sudo pip3 install --upgrade protonvpn-cli
protonvpn --version
sudo protonvpn d
sudo pip3 uninstall protonvpn-cli
sudo rm -rf ~/.pvpn-cli /root/.pvpn-cli

For more guides, server purchases, and support, visit dropvps.com.

Linux VPS
U
Loading...

Related Posts

How to install proton vpn on Centos 8