Instructions to obtain WireGuard details of your NordVPN account. These can be used to setup a WireGuard tunnel on your router to NordVPN.
Source: https://forum.gl-inet.com/t/configure-wireguard-client-to-connect-to-nordvpn-servers/10422/27
If you have any linux machine, use that or install a vm if you don't have one.
Get their official linux app installed. Make sure you have wireguard installed too. And set the used technology to Nordlynx by running nordvpn set technology nordlynx
Connect to nordvpn with command: nordvpn connect
(don't forget to login with nordvpn login --legacy
).
After successful connection run
ifconfig nordlynx
Run
sudo wg show nordlynx private-key
Output of this command should be something like this:
CKMAE9LARlt2eZHgGnNaSUYiKllKJN7f3hed/bWm5E8=
The key above is just a random key for demo purposes.
Run
sudo wg show nordlynx public-key
Output of this command should be something like this:
TO158iXbNXt2eZHgGnNaSUYiKZHgGN7f3hed/bWm5E8=
The key above is just a random key for demo purposes.
Make sure you have curl and jq installed on your host/router. These are needed to be able to fetch the config of NordVPN Server. If not installed, go ahead and install
opkg install curl jq
After installation enter the command below to fetch the recommended server config:
curl -s "https://api.nordvpn.com/v1/servers/recommendations?&filters\[servers_technologies\]\[identifier\]=wireguard_udp&limit=1"|jq -r '.[]|.hostname, .station, (.locations|.[]|.country|.city.name), (.locations|.[]|.country|.name), (.technologies|.[].metadata|.[].value), .load'
Output:
uk1818.nordvpn.com #your endpoint host
178.239.166.185 #its ip address
London #city
United Kingdom #country
K53l2wOIHU3262sX5N/5kAvCvt4r55lNui30EbvaDlE= #Server public key
10 #Server load at the time.
Or just visit the following url https://api.nordvpn.com/v1/servers/recommendations?&filters\[servers_technologies\]\[identifier\]=wireguard_udp&limit=1 from your browser and look for the details manually.
The
nordvpn login --legacy
no longer appears to work; it could be because I enabled MFA on my account or it could just be fully deprecated now.However, the Nord VPN account panel allows you to generate a token (I recommend doing a 30 day expiry since I don't believe you should need to repeat these instructions), and then you can do
I was also doing this on a remote headless Linux machine (because it was quicker than downloading an ISO to make a local VM) and found that as soon as it was connected to the VPN I lost all access - almost certainly because the default route changed so my
mosh
session was disrupted. I tried doingnordvpn set routing off
to try and stop the Nord VPN client from doing dumb stuff with my routing table, but that didn't work. What did work was taking advantage of "shortest-route-wins" and adding a route for my source IP to use the existing gateway which took precedence over the new default route:Hope this helps someone stumbling across this gist...