IVPN for Linux
Supports 64-bit Linux 3.10+
Features
- WireGuard or OpenVPN protocols.
- GUI or CLI (command-line interface).
- WireGuard privacy controls - Define automatic key and IP address rotation schedule.
- AntiTracker that blocks ads, adware, malicious websites and data harvesting trackers.
- Firewall / kill switch - Ability to configure as on-demand or always-on. Offers comprehensive protection against DNS, IPv6, disconnection and WebRTC leaks.
- Ability to define trusted Wi-Fi networks and create rules for automatic VPN connection/disconnection.
- Multi-hop VPN routes. Connect through multiple servers in separate jurisdictions for enhanced privacy.
- Allow LAN traffic when connected to VPN.
- Pause VPN for when disabling VPN connection temporarily is required.
- Obfsproxy option to circumvent censorship.
- Custom DNS servers, with DoH.
- Split Tunnel to allow designated apps to bypass the VPN tunnel.
Packages
Base Package
Base package contains everything you need to connect to IVPN with command line interface. IVPN GUI app is provided as a separate package you can find below.
Changelog
IVPN GUI App
Please note: base package is required to be installed prior to installing GUI app.
Changelog
Install from IVPN Repository
Ubuntu
# Add IVPN's GPG key
curl -fsSL https://repo.ivpn.net/stable/ubuntu/generic.gpg | gpg --dearmor > ~/ivpn-archive-keyring.gpg
sudo mv ~/ivpn-archive-keyring.gpg /usr/share/keyrings/ivpn-archive-keyring.gpg
# Set Appropriate Permissions for GPG key
sudo chown root:root /usr/share/keyrings/ivpn-archive-keyring.gpg && sudo chmod 644 /usr/share/keyrings/ivpn-archive-keyring.gpg
# Add the IVPN repository
curl -fsSL https://repo.ivpn.net/stable/ubuntu/generic.list | sudo tee /etc/apt/sources.list.d/ivpn.list
# Set Appropriate Permissions for Repository
sudo chown root:root /etc/apt/sources.list.d/ivpn.list && sudo chmod 644 /etc/apt/sources.list.d/ivpn.list
# Update APT repo info
sudo apt update
# To install IVPN software (CLI and UI)
sudo apt install ivpn-ui
# To install only IVPN CLI
sudo apt install ivpn
Debian
# Add IVPN's GPG key
curl -fsSL https://repo.ivpn.net/stable/debian/generic.gpg | gpg --dearmor > ~/ivpn-archive-keyring.gpg
sudo mv ~/ivpn-archive-keyring.gpg /usr/share/keyrings/ivpn-archive-keyring.gpg
# Set Appropriate Permissions for GPG key
sudo chown root:root /usr/share/keyrings/ivpn-archive-keyring.gpg && sudo chmod 644 /usr/share/keyrings/ivpn-archive-keyring.gpg
# Add the IVPN repository
curl -fsSL https://repo.ivpn.net/stable/debian/generic.list | sudo tee /etc/apt/sources.list.d/ivpn.list
# Set Appropriate Permissions for Repository
sudo chown root:root /etc/apt/sources.list.d/ivpn.list && sudo chmod 644 /etc/apt/sources.list.d/ivpn.list
# Update APT repo info
sudo apt update
# To install IVPN software (CLI and UI)
sudo apt install ivpn-ui
# To install only IVPN CLI
sudo apt install ivpn
Mint
# Add IVPN's GPG key
curl -fsSL https://repo.ivpn.net/stable/mint/generic.gpg | gpg --dearmor > ~/ivpn-archive-keyring.gpg
sudo mv ~/ivpn-archive-keyring.gpg /usr/share/keyrings/ivpn-archive-keyring.gpg
# Set Appropriate Permissions for GPG key
sudo chown root:root /usr/share/keyrings/ivpn-archive-keyring.gpg && sudo chmod 644 /usr/share/keyrings/ivpn-archive-keyring.gpg
# Add the IVPN repository
curl -fsSL https://repo.ivpn.net/stable/mint/generic.list | sudo tee /etc/apt/sources.list.d/ivpn.list
# Set Appropriate Permissions for Repository
sudo chown root:root /etc/apt/sources.list.d/ivpn.list && sudo chmod 644 /etc/apt/sources.list.d/ivpn.list
# Update APT repo info
sudo apt update
# To install IVPN software (CLI and UI)
sudo apt install ivpn-ui
# To install only IVPN CLI
sudo apt install ivpn
Fedora
# [Fedora 40 and below] Add the IVPN repository
sudo dnf config-manager --add-repo https://repo.ivpn.net/stable/fedora/generic/ivpn.repo
# [Fedora 41+] Add the IVPN repository
sudo dnf config-manager addrepo --from-repofile=https://repo.ivpn.net/stable/fedora/generic/ivpn.repo
# [Fedora 42+]
sudo dnf install iptables-legacy
# To install IVPN software (CLI and UI)
sudo dnf install ivpn-ui
# To install only IVPN CLI
sudo dnf install ivpn
CentOS/Alma/Rocky
# Install Extra packages
sudo dnf install epel-release
# Install OpenVPN
sudo dnf install openvpn
# Add the IVPN repository
sudo dnf config-manager --add-repo https://repo.ivpn.net/stable/centos/generic/ivpn.repo
# To install IVPN software (CLI and UI)
sudo dnf install ivpn-ui
# To install only IVPN CLI
sudo dnf install ivpn
# Required for CentOS 8
sudo dnf install libXScrnSaver
Arch Linux
AUR - ArchLinux User Repository. Can be used by distributions based on ArchLinux: (e.g. ArchLinux, Manjaro …)
Base package: ivpn
UI package: ivpn-ui
Using a AUR helper/Pacman wrapper automates the installation process:
yay -S ivpn
yay -S ivpn-ui
Note: Other AUR helper/Pacman wrapper utilities are available.
Fedora Silverblue
IVPN client can be installed on Fedora Silverblue.
Install from Binaries
.DEB
Base package
SHA256: b22e0eae6ed88229aee3493d9ec939700de8b44b1e22a692a9e624ed4147160f
UI package
SHA256: 4cf591cb6a390bf8b0a6b8b59af65dbb83d0cd5928831a13fe066392990204e8
.DEB arm64
Base package
SHA256: 4e3ad741fed94a4c2aab2a7ec5ddc29e9b879199e6c5e32829b96ab132b9c590
UI package
SHA256: da5ad7e74c995e8a5dc9a6625ffed2fab6ef0193223545ead0557ec0f2f4b6fa
.RPM
Base package
SHA256: e375db89cbdd5953e553505c30cd6f88bdc51fd391e0647202bdadca5c013e1e
UI package
SHA256: ec296f9dff5bc7800eff5dd0c3f83dd93a9fadcc62704a0c36b13523d212349d
.RPM arm64
Base package
SHA256: 500683bb10a246f205656bdc8b045828cb5abf26efd8b3761c196670961770fd
UI package
SHA256: 5026d2e6aa64b24dbdcc308ce53b22514cc258d74002071b89c2cad18d08ba50
Install from Source Code
Install the Snap
Get the IVPN App from the Snap Store by typing sudo snap install ivpn.
Snap Notes:
- The snapd daemon is required.
- Uninstall prior versions (DEB, RPM, etc.) of the IVPN App before switching to the snap release channel and vice versa.
- The Split Tunnel feature is not available due to strong restrictions of the snap environment.
Useful Links
If you prefer not to use the IVPN app please follow the relevant setup guide below.
Suggest an edit on GitHub.