Prérequis
- Un serveur Linux joignable depuis Internet (ou une redirection de port)
- Le paquet wireguard-tools installé
- Un accès root
01Le principe
WireGuard identifie chaque pair par une paire de clés, comme SSH. Pas de certificat ni de mot de passe : un pair n’est accepté que si sa clé publique figure dans la configuration, et seules les adresses listées dans AllowedIPs peuvent passer par lui.
Sans la bonne clé, le serveur ne répond tout simplement pas : vu de l’extérieur, le port UDP semble fermé.
02Générer les clés
À faire sur le serveur, puis sur chaque appareil. La clé privée ne quitte jamais la machine qui l’a générée ; seule la clé publique s’échange.
umask 077
wg genkey | tee privatekey | wg pubkey > publickey03Configurer le serveur
Chaque appareil reçoit une adresse /32 dans le tunnel : c’est elle qui l’identifie côté serveur. Pour que l’appareil joigne aussi le réseau local derrière le serveur, activez le routage IP sur ce dernier (net.ipv4.ip_forward = 1).
[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = <clé privée du serveur>
[Peer]
# Portable
PublicKey = <clé publique du portable>
AllowedIPs = 10.8.0.2/3204Configurer l’appareil
Côté appareil, AllowedIPs décide de ce qui passe dans le tunnel : ici, le tunnel et le réseau de la maison seulement (split tunneling). Avec 0.0.0.0/0, tout le trafic y passerait. PersistentKeepalive garde le tunnel ouvert derrière un NAT.
[Interface]
Address = 10.8.0.2/24
PrivateKey = <clé privée du portable>
[Peer]
PublicKey = <clé publique du serveur>
Endpoint = vpn.exemple.fr:51820
AllowedIPs = 10.8.0.0/24, 192.168.10.0/24
PersistentKeepalive = 2505Démarrer et vérifier
Si « latest handshake » n’apparaît pas : vérifiez que le port UDP est ouvert ou redirigé, que l’Endpoint est juste, et que chaque clé publique est bien celle de l’autre pair.
wg-quick up wg0
systemctl enable wg-quick@wg0 # au démarrage
wg show # dernier handshake, octets échangésÀ retenir
- Une paire de clés par appareil ; la clé privée ne voyage jamais.
- AllowedIPs : qui est qui côté serveur, ce qui passe dans le tunnel côté appareil.
- Un seul port UDP, silencieux sans la bonne clé.
- wg show : le dernier handshake dit tout.