NETWORKS

Pour configurer WireGuard, il faut distinguer deux cas de figure : soit vous créez votre propre serveur VPN privé (Serveur/Client), soit vous utilisez NordVPN via son protocole basé sur WireGuard (NordLynx). WireGuard n'est pas un fournisseur de serveurs, c'est le protocole ultra-rapide qui sécurise le tunnel de connexion.

Voici les tutoriels complets pour les deux cas de figure.

Cas 1 : Créer votre propre Serveur et Client WireGuard (Auto-hébergement)

Cette méthode permet de transformer une machine (VPS, Raspberry Pi ou PC Linux) en serveur VPN pour y connecter vos appareils clients (PC, smartphone).

1. Configuration du Serveur (Exemple sur Debian/Ubuntu)

Mettez à jour le système et installez WireGuard :

sudo apt update && sudo apt install wireguard -y

Générez les clés de sécurité (publique et privée) du serveur :

wg genkey | sudo tee /etc/wireguard/server_private.key | wg pubkey | sudo tee /etc/wireguard/server_public.key

Créez le fichier de configuration du serveur /etc/wireguard/wg0.conf :

[Interface]
PrivateKey = <Contenu_de_server_private.key>
Address = 10.0.0.1/24
ListenPort = 51820

# Remplacer eth0 par le nom de votre carte réseau principale
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

Activez le transfert d'adresse IP (IP Forwarding) dans le système :

echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

Démarrez le serveur WireGuard :

sudo systemctl enable wg-quick@wg0 --now

2. Configuration du Client (PC ou Smartphone)

Générez les clés pour le client sur sa machine :

wg genkey | tee client_private.key | wg pubkey > client_public.key

Créez le fichier de configuration du client (ex: wg0-client.conf) :

[Interface]
PrivateKey = <Contenu_de_client_private.key>
Address = 10.0.0.2/24
DNS = 1.1.1.1

[Peer]
PublicKey = <Contenu_de_server_public.key>
Endpoint = <IP_PUBLIQUE_DE_VOTRE_SERVEUR>:51820
AllowedIPs = 0.0.0.0/0

Déclarer le client sur le serveur : Retournez sur le serveur pour l'autoriser en exécutant la commande :

sudo wg set wg0 peer <Contenu_de_client_public.key> allowed-ips 10.0.0.2
sudo systemctl restart wg-quick@wg0

Importez le fichier .conf dans l'application officielle WireGuard de votre client (ou générez un QR code via l'outil qrencode pour le scanner avec un smartphone).

Cas 2 : Utiliser WireGuard avec NordVPN (NordLynx)

Si votre but est d'utiliser le réseau de serveurs mondiaux de NordVPN avec la technologie WireGuard, vous devez utiliser leur protocole maison appelé NordLynx.

Sur l'application NordVPN (Windows, Mac, Android, iOS)

  • Ouvrez l'application NordVPN.
  • Allez dans les Paramètres (icône d'engrenage).
  • Cliquez sur l'onglet Connexion ou Protocole.
  • Modifiez le protocole VPN par défaut et sélectionnez explicitement NordLynx (le nom commercial de leur intégration WireGuard).

Sur un appareil tiers (Routeur, pfSense, Linux en mode manuel)

Pour utiliser une configuration brute WireGuard avec NordVPN, il faut extraire une clé privée propre à votre compte via un jeton d'accès.

  • Connectez-vous à votre Nord Account.
  • Accédez à NordVPN > Configuration manuelle pour générer un Jeton d'accès (Access Token).

Sur un terminal Linux ou PowerShell, utilisez l'outil officiel NordVPN en ligne de commande pour définir le protocole sur WireGuard :

nordvpn set technology nordlynx

Pour les routeurs compatibles (comme TP-Link ou GL.iNet), allez dans l'interface du routeur, section Client VPN, ajoutez un profil, sélectionnez NordVPN et collez votre jeton pour télécharger automatiquement les fichiers de configuration WireGuard requis.