LinuxCommandLibrary

nordvpn

Connect to NordVPN servers

TLDR

Interactively log into a NordVPN account

$ nordvpn login
copy

Display the connection status
$ nordvpn status
copy

Connect to the nearest NordVPN server
$ nordvpn [[c|connect]]
copy

List all available countries
$ nordvpn countries
copy

Connect to a NordVPN server in a specific country
$ nordvpn [[c|connect]] [Germany]
copy

Connect to a NordVPN server in a specific country and city
$ nordvpn [[c|connect]] [Germany] [Berlin]
copy

Set autoconnect option
$ nordvpn [[s|set]] autoconnect on
copy

SYNOPSIS

nordvpn command [options] [arguments]

PARAMETERS

login
    Authenticates your NordVPN account. Typically opens a browser window for authentication.

connect []
    Establishes a VPN connection. You can specify a country (e.g., 'us'), city (e.g., 'new york'), or a specific server ID. Supports options like --group (e.g., 'double_vpn', 'p2p') and --protocol (e.g., 'nordlynx', 'openvpn_udp').

disconnect
    Terminates the active VPN connection.

status
    Displays the current VPN connection status, including the connected server, IP address, and protocol.

settings
    Shows the current NordVPN application settings. Use nordvpn settings set to modify them.

set
    Configures various NordVPN settings. Common options include killswitch on|off, autoconnect on|off, dns , protocol , cybersec on|off, and meshnet on|off.

account
    Displays your NordVPN account information, including subscription status and expiration date.

whitelist
    Manages the VPN Kill Switch whitelist. You can whitelist applications, IP subnets, or ports to bypass the VPN connection.

refresh
    Refreshes the local server list cache to ensure you have the latest server information.

enable
    Starts the NordVPN service daemon. This allows the client to establish VPN connections and manage network traffic.

disable
    Stops the NordVPN service daemon. This prevents the client from establishing VPN connections.

autoconnect [on|off]
    Configures whether NordVPN should automatically connect to a VPN server when the service starts or on system boot.

update
    Checks for and installs updates for the NordVPN client application.

version
    Displays the installed NordVPN client version.

diagnose
    Gathers diagnostic information about the NordVPN client and system for troubleshooting purposes.

DESCRIPTION

The `nordvpn` command-line interface provides a robust and comprehensive way to manage your NordVPN connection directly from your Linux terminal. It allows users to connect to VPN servers, disconnect, view connection status, and configure advanced settings such as Kill Switch, auto-connect, DNS, and preferred protocols (NordLynx, OpenVPN). It's designed for seamless integration and automation, enabling users to maintain online privacy and security without a graphical user interface. The client manages network routing, DNS resolution, and firewall rules to ensure your traffic is protected efficiently and securely.

CAVEATS

A valid NordVPN subscription is required for service usage.
The `nordvpn` daemon service must be running for commands to function; it's typically managed with `systemctl` (e.g., `sudo systemctl start nordvpn.service`).
Kill Switch functionality relies on underlying firewall mechanisms (like iptables or nftables) and can block all internet traffic if the VPN connection drops or is not established.

SERVICE MANAGEMENT

The `nordvpn` client relies on a background service. You can manage this service using `systemctl`. For example:
sudo systemctl start nordvpn.service (start the daemon)
sudo systemctl stop nordvpn.service (stop the daemon)
sudo systemctl enable nordvpn.service (enable daemon to start on boot)
sudo systemctl disable nordvpn.service (disable daemon from starting on boot)
sudo systemctl status nordvpn.service (check daemon status)

THREAT PROTECTION LITE

NordVPN offers a Threat Protection Lite feature that blocks malicious websites and ads at the DNS level. Enable it with nordvpn set threat-protection-lite on. Note that the full Threat Protection suite is typically available on desktop GUI applications and offers more extensive features.

MESHNET

Meshnet is a NordVPN feature that allows you to create secure, private connections between your devices, enabling direct access to files and services as if they were on the same local network, even across different geographical locations. It can be toggled using nordvpn set meshnet on|off.

HISTORY

NordVPN was founded in 2012. Its Linux command-line client has steadily evolved, becoming a primary interface for many Linux users to manage their VPN connections. Early versions primarily relied on the OpenVPN protocol. The introduction of NordLynx (NordVPN's WireGuard-based protocol) and features like Meshnet significantly enhanced performance, functionality, and user experience, making the CLI a powerful and feature-rich tool for privacy and security on Linux systems.

SEE ALSO

openvpn(8): For manual OpenVPN configurations., systemctl(1): For managing the `nordvpn` background service., nmcli(1): NetworkManager command-line tool, related to general network configuration., iptables(8): Linux firewall utility, related to Kill Switch implementation., nftables(8): Modern Linux firewall utility, also related to Kill Switch implementation.

Copied to clipboard