A very simple NordVPN client.
curl
jq
openvpn
sipcalc
To setup nordconn
one must:
/etc/openvpn/nordvpn/
auth-user-pass
file (2 lines -- 1st line: username
; and 2nd line: password
) in /etc/openvpn/.nordvpn_auth
with the NordVPN credentials (provided on the personal account page, for manual connections)# ./nordconn.sh
also guides the user on how to setup nordconn
, if not yet set correctly.
# ./nordconn.sh tcp FR
NordVPN supports different server types, one may check their server selection recommendations in their website here.
nordconn
uses NordVPN API to find the recommended server, given the preferred server country and server type.
Countries are given using their respective two-letter code (e.g. FR
for France servers).
nordconn
supports connecting to the following server types: tcp
, udp
, p2ptcp
, p2pudp
, doubletcp
, doubleudp
.
# ./nordconn.sh disconnect
Disconnects the NordVPN connection that was established using nordconn
.
# ./nordconn.sh tcp FR noroute 192.168.1.0/24
noroute
is optional.
It excludes the specified CIDR networks from being routed through the VPN interface.
Useful, for instance, to exclude private networks from being routed.
Can be used multiple times in the same command, example:
# ./nordconn.sh tcp FR noroute 192.168.1.0/24 noroute 10.0.0.0/8
# ./nordconn.sh tcp FR route 1.2.3.0/24
route
is optional.
Makes nordconn
only route the specified CIDR networks through the VPN, and removes the default routes (which route everything though the VPN).
Can be used multiple times in the same command, example:
# ./nordconn.sh tcp FR route 1.1.1.1/32 route 2.2.0.0/16
# ./nordconn.sh help
nordconn
does not set any DNS server, be sure to set the DNS so as to avoid DNS leaking.# ./nordconn tcp
shows all available countries returned by the NordVPN API.