LinuxCommandLibrary

ivpn

Connect to the IVPN service

TLDR

Print the current state of IVPN, including the connection and firewall status

$ ivpn status
copy

List available servers to connect to
$ ivpn servers
copy

SYNOPSIS

ivpn [-h|--help] [-v|--version] [--json] [--color=auto|always|never] <command> [<args>...]

PARAMETERS

-h, --help
    Print help and exit

-v, --version
    Print version info

--json
    Output in JSON format

--color={auto|always|never}
    Control colored output

account {login|logout|status}
    Manage IVPN account authentication

connect [{location}|{host}|{ip}|--fastest]
    Connect to VPN server

disconnect
    Disconnect VPN

service {go|nog|start|stop|status|logs}
    Control IVPN daemon

status
    Show VPN status

get {account|daemon-version|...}
    Retrieve settings

set {protocol|killswitch|...}
    Update settings

killswitch {enable|disable|status}
    Manage killswitch

antitracker {enable|disable|status}
    Manage DNS anti-tracker

wireguard {addkey|delkey|listkeys}
    Manage WireGuard keys

DESCRIPTION

The ivpn command is the official CLI tool for the IVPN VPN service on Linux. It enables users to authenticate accounts, connect/disconnect to VPN servers worldwide, manage the background daemon service, and configure advanced features like killswitch, multi-hop, anti-tracker, and split tunneling.

IVPN supports both WireGuard (default, fastest) and OpenVPN protocols. The tool runs a system daemon (ivpn-service) for handling tunnels securely. Usage starts with ivpn account login, followed by ivpn service go to start the daemon, then ivpn connect for quick setup.

Ideal for servers, scripts, or terminal enthusiasts, it outputs in human-readable or JSON format. Features include fastest server selection, location-based connects, port forwarding, and WireGuard key management. Ensures privacy with no-logs policy and perfect forward secrecy.

CAVEATS

Requires active IVPN subscription and daemon service. Runs as user service via systemd. Not for unprivileged users without setup. WireGuard needs kernel module.

INSTALLATION

Download AppImage/DEB from IVPN site or sudo apt install ivpn on supported repos. Run ivpn service fix-dns post-install.

CONFIG

Settings in ~/.config/ivpn/ivpn.conf. Logs at ~/.cache/ivpn/ivpn.log.

DAEMON

Uses ivpn.service user unit. Enable with systemctl --user enable --now ivpn.service.

HISTORY

Released by IVPN in 2020 as open-source CLI (GPLv3). Evolved from early beta with WireGuard focus; v3+ adds multi-hop, anti-tracker. Actively maintained for Linux distros.

SEE ALSO

systemctl(1), wg(8), wg-quick(8), openvpn(8)

Copied to clipboard