−50% sur tous les plans · à partir de 2,48 €/mois · Blog·Documentation·Contact

Configurer un VPN WireGuard sur un VPS Linux

Guide pas-à-pas de zéro à tunnel chiffré, avec durcissement sécurité et conseils gestion clients.

WireGuard est le protocole VPN moderne qui a remplacé OpenVPN et IPsec dans la plupart des nouveaux déploiements. Plus rapide (résident kernel), plus simple (moins de 4 000 lignes de code), cryptographiquement plus conservateur (primitives modernes, pas de négociation de cipher suites). Ce guide vous emmène d'un VPS Ubuntu vierge à un serveur WireGuard fonctionnel avec plusieurs clients en environ 30 minutes.

Ce qu'il vous faut

Étape 1 : Installer WireGuard

sudo apt update
sudo apt install -y wireguard wireguard-tools

Étape 2 : Générer les clés serveur

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

L'umask garantit que les fichiers de clé privée ne sont pas world-readable. Préservez toujours ceci — clés privées fuitées = VPN compromis.

Étape 3 : Créer la config serveur

Créez /etc/wireguard/wg0.conf :

[Interface]
Address = 10.66.66.1/24
ListenPort = 51820
PrivateKey = <contenu de server_private.key>
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

Les règles PostUp/PostDown activent le forwarding IP et NAT — nécessaire si vous voulez que les clients atteignent l'internet public via le VPN.

Étape 4 : Activer le forwarding IP

sudo sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/' /etc/sysctl.conf
sudo sysctl -p

Étape 5 : Démarrer le serveur

sudo wg-quick up wg0
sudo systemctl enable wg-quick@wg0
sudo wg show

Étape 6 : Configurer le firewall

sudo ufw allow 51820/udp
sudo ufw allow ssh
sudo ufw enable

Étape 7 : Générer une config client

wg genkey | tee client1_private.key | wg pubkey > client1_public.key

Ajoutez le client dans wg0.conf :

[Peer]
PublicKey = <client1 public key>
AllowedIPs = 10.66.66.2/32

Rechargez :

sudo wg syncconf wg0 <(wg-quick strip wg0)

Config côté client :

[Interface]
Address = 10.66.66.2/24
PrivateKey = <client1 private key>
DNS = 1.1.1.1, 9.9.9.9

[Peer]
PublicKey = <server public key>
Endpoint = <votre IP publique VPS>:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25

Étape 8 : Connecter depuis le client

Linux : sudo wg-quick up <config>. macOS/Windows : app WireGuard, importer la config. iOS/Android : app WireGuard, scanner un QR code (qrencode -t ansiutf8 < client1.conf).

Checklist de durcissement

Pièges fréquents

AllowedIPs incorrects. La méprise WireGuard la plus commune. Le AllowedIPs côté serveur et le Address côté client doivent matcher. Si client à 10.66.66.2/24, l'entrée serveur doit être 10.66.66.2/32 — pas /24.

NAT non fonctionnel. Vérifiez iptables -t nat -L POSTROUTING -n -v. Si MASQUERADE absent, le PostUp n'a pas tourné.

Fuites DNS. Définissez DNS dans la config client explicitement.

MTU. Si gros paquets timeout, mettez MTU = 1420 dans interface client.


Articles liés

Essayez FranceVPS aujourd'hui

Garantie 14 jours. Pas de carte requise pour explorer. Infrastructure française souveraine.