Sans KYC · DMCA ignoré · aucun log. Payer en crypto : BTC, USDT, USDC, ETH, SOL, LTC, XMR
Langue: Français
Déployer un VPS

Guide · WireGuard sur Debian et Ubuntu

Comment configurer WireGuard sur un VPS ?

Toutes les commandes pour un serveur VPN WireGuard sur Debian 12 ou Ubuntu 24.04 : paquets, clés, fichiers serveur et client, IP forwarding, NAT et une première connexion.

Dernière mise à jour: · 8 min de lecture

Réponse rapide

Comment configurer WireGuard sur un VPS ?

Pour configurer WireGuard sur un VPS, installez le paquet wireguard, générez une paire de clés pour le serveur et une par appareil, puis écrivez /etc/wireguard/wg0.conf. Activez ensuite l'IP forwarding et le NAT, démarrez wg-quick@wg0 et importez le fichier client. Sur OffshoreKVM, un VPS KVM Debian 12 ou Ubuntu 24.04 coûte à partir de $3.08 pour 30 jours. Sans KYC, payez en crypto.

De quoi ai-je besoin avant de commencer ?

ServeurUn VPS KVM avec son propre kernel. OffshoreKVM KVM 1 (1 vCPU, 1 GB RAM, 20 GB NVMe, 2 TB de trafic) suffit pour un foyer
AccèsAccès root en SSH avec votre propre clé publique ; la connexion par mot de passe est désactivée par défaut. Les commandes ci-dessous s'exécutent en root
SystèmeDebian 12 ou Ubuntu 24.04 LTS ; les deux font partie des images de OffshoreKVM
Paquetswireguard et iptables, depuis le dépôt de la distribution elle-même
PortUDP 51820, le port utilisé dans les exemples de la documentation WireGuard
Adresses du tunnel10.8.0.0/24 : serveur 10.8.0.1, premier appareil 10.8.0.2
Applications clientesWireGuard pour Windows, macOS, Android, iOS et Linux, listé sur wireguard.com
PrixKVM 1 3,08 $, KVM 2 4,92 $, KVM 4 8,25 $, KVM 8 13,50 $, KVM 16 20,62 $ par 30 jours. Sans KYC, paiement en crypto uniquement

Comment configurer un serveur WireGuard, étape par étape ?

Neuf étapes, d'un VPS Debian 12 ou Ubuntu 24.04 tout neuf à un téléphone qui navigue à travers.

  1. Se connecter et mettre à jour

    Connectez-vous avec ssh root@YOUR_VPS_IP, puis exécutez apt update && apt upgrade -y.

  2. Installer WireGuard et iptables

    Exécutez apt install -y wireguard iptables. Les outils WireGuard ne font que recommander un paquet de pare-feu, et les règles NAT ci-dessous utilisent iptables.

  3. Générer les clés

    Exécutez cd /etc/wireguard && umask 077. Faites en sorte que le serveur soit associé à wg genkey | tee server.key | wg pubkey > server.pub. Faites en sorte que l'appareil soit associé à wg genkey | tee phone.key | wg pubkey > phone.pub.

  4. Trouver l'interface publique

    Exécutez ip route show default. Le mot après dev, comme eth0 ou ens3, est l'interface dont la règle NAT a besoin.

  5. Écrire le fichier du serveur

    Créez /etc/wireguard/wg0.conf avec la clé privée du serveur, le port d'écoute, les règles NAT et un bloc [Peer] par appareil, comme indiqué ci-dessous.

  6. Activer le transfert IP

    Exécutez echo 'net.ipv4.ip_forward=1' > /etc/sysctl.d/99-wireguard.conf && sysctl --system. Sans cela, le VPS rejette le trafic du tunnel.

  7. Démarrer le tunnel au boot

    Exécutez systemctl enable --now wg-quick@wg0, puis wg show pour voir l'interface, son port et le peer.

  8. Créer et importer le fichier client

    Écrivez phone.conf comme indiqué ci-dessous. Importez-le dans l'application WireGuard, ou affichez-le sous forme de QR code avec qrencode -t ansiutf8 < /etc/wireguard/phone.conf.

  9. Tester le tunnel

    Activez le tunnel et ouvrez n'importe quel site web. Sur le serveur, wg show affiche désormais un latest handshake récent, et les sites voient l'adresse du VPS.

Que contient le wg0.conf du serveur ?

Le fichier du serveur contient la clé privée du serveur, son adresse de tunnel, le port d'écoute, les règles NAT et un bloc [Peer] par appareil. Le heredoc ci-dessous remplit les deux clés à partir des fichiers créés à l'étape 3. Remplacez eth0 par l'interface de l'étape 4 avant de l'exécuter.

WireGuard identifie chaque appareil par sa clé publique : un paquet n'est accepté que s'il est signé par une clé connue et provient du AllowedIPs de ce peer.

Serveur : /etc/wireguard/wg0.conf (à exécuter en root)
cd /etc/wireguard
cat > wg0.conf <<EOF
[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = $(cat server.key)
# Forward tunnel traffic and hide it behind the VPS address (eth0 = your interface)
PostUp = iptables -I FORWARD -i %i -j ACCEPT
PostUp = iptables -I FORWARD -o %i -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
PostUp = iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT
PostDown = iptables -D FORWARD -o %i -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
PostDown = iptables -t nat -D POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

[Peer]
# phone
PublicKey = $(cat phone.pub)
AllowedIPs = 10.8.0.2/32
EOF
chmod 600 wg0.conf

%i est remplacé par le nom de l'interface, wg0, lorsque wg-quick exécute les lignes PostUp et PostDown. MASQUERADE réécrit chaque paquet avec l'adresse de l'interface sortante. Le manuel iptables préfère SNAT --to-source YOUR_VPS_IP pour une adresse statique ; les deux fonctionnent ici.

Que contient la configuration client ?

Le fichier client contient la clé privée de l'appareil, son adresse de tunnel, un serveur DNS, ainsi que la clé publique et l'adresse du serveur. AllowedIPs = 0.0.0.0/0, ::/0 envoie tout le trafic dans le tunnel, IPv6 compris, donc rien ne fuit à l'extérieur. Avec le serveur IPv4 uniquement ci-dessus, le trafic IPv6 s'arrête simplement, et la plupart des applications basculent en IPv4.

Client : /etc/wireguard/phone.conf (créé sur le serveur)
cd /etc/wireguard
cat > phone.conf <<EOF
[Interface]
PrivateKey = $(cat phone.key)
Address = 10.8.0.2/32
DNS = 9.9.9.9

[Peer]
PublicKey = $(cat server.pub)
Endpoint = YOUR_VPS_IP:51820
AllowedIPs = 0.0.0.0/0, ::/0
EOF

# Phone: scan this QR code in the WireGuard app
apt install -y qrencode
qrencode -t ansiutf8 < phone.conf

# Linux computer: copy phone.conf to /etc/wireguard/, then
# wg-quick up phone

Utilisez n'importe quel résolveur DNS de confiance à la place de 9.9.9.9. Sur un client Linux, la ligne DNS nécessite resolvconf ou openresolv, que Debian liste comme paquets suggérés. Supprimez phone.key et phone.conf du serveur une fois que l'appareil a sa copie.

Dois-je ouvrir un port de pare-feu ?

Seulement si un pare-feu tourne sur le VPS : il doit laisser entrer l'UDP 51820 et laisser passer le trafic du tunnel. Avec ufw, exécutez ufw allow 51820/udp. Les règles FORWARD dans wg0.conf sont insérées en tête de chaîne, avant la politique DROP par défaut que ufw applique au trafic routé. Gardez le port 22 ouvert avant d'activer un pare-feu, sinon vous vous enfermez dehors.

Comment ajouter un autre appareil ?

Chaque appareil a sa propre paire de clés, sa propre adresse de tunnel et son propre bloc [Peer]. Exécutez wg genkey | tee laptop.key | wg pubkey > laptop.pub dans /etc/wireguard. Ajoutez un [Peer] avec PublicKey réglé sur la nouvelle clé publique et AllowedIPs = 10.8.0.3/32. Appliquez-le sans couper les autres appareils : systemctl reload wg-quick@wg0, qui exécute wg syncconf. Construisez laptop.conf comme phone.conf, avec Address = 10.8.0.3/32.

Comment router IPv6 à travers le tunnel ?

Ajoutez une plage IPv6 privée des deux côtés, transférez-la et traduisez-la comme IPv4. Choisissez une plage unique locale aléatoire, comme fd42:42:42::/64.

  • Serveur : Address = 10.8.0.1/24, fd42:42:42::1/64, et dans le peer AllowedIPs = 10.8.0.2/32, fd42:42:42::2/128.
  • NAT : copiez les trois lignes PostUp et PostDown avec ip6tables et la plage IPv6.
  • Client : Address = 10.8.0.2/32, fd42:42:42::2/128.
  • Transfert : ajoutez net.ipv6.conf.all.forwarding=1 à /etc/sysctl.d/99-wireguard.conf.

Vérifiez d'abord une chose. Avec le transfert activé, le noyau Linux ignore les annonces de routeur sauf si accept_ra vaut 2. Si votre VPS apprend sa route IPv6 de cette façon, réglez net.ipv6.conf.eth0.accept_ra=2 dans le même fichier.

Pourquoi le tunnel se connecte mais aucun site web ne se charge ?

Le handshake fonctionne mais le trafic s'arrête au serveur, presque toujours pour l'une de quatre raisons.

  • Le transfert est désactivé : sysctl net.ipv4.ip_forward doit afficher 1.
  • Mauvaise interface dans la règle NAT : comparez eth0 dans wg0.conf avec ip route show default.
  • Aucun handshake : l'IP ou le port de l'endpoint est erroné, ou un pare-feu bloque l'UDP 51820.
  • Les noms ne se résolvent pas : le client n'a pas de ligne DNS fonctionnelle, ou resolvconf manque sur un client Linux.

Après chaque correction, exécutez systemctl restart wg-quick@wg0 et testez à nouveau.

Quel VPS utiliser pour WireGuard ?

N'importe quel VPS KVM avec une adresse IPv4 fait l'affaire ; le plan dépend du trafic qui passe par le tunnel. La page sur quel est le meilleur VPS offshore pour WireGuard compare les plans, les quotas et les emplacements. Les prix de chaque plan sont sur combien coûte un VPS offshore chez OffshoreKVM. Avant de compter dessus pour votre confidentialité, lisez ce que votre fournisseur VPS peut voir sur votre serveur.

WireGuard sur un VPS : FAQ

Quel port utilise WireGuard ?

WireGuard n'a pas de port fixe. ListenPort est facultatif, et sans lui le serveur choisit un port au hasard. UDP 51820 est le port des exemples officiels, donc la plupart des guides l'utilisent.

Ai-je besoin de PersistentKeepalive ?

En général non. Le manuel de wg indique que la plupart des utilisateurs n'en auront pas besoin. Ajoutez PersistentKeepalive = 25 au [Peer] du client uniquement si le serveur doit joindre un appareil derrière un NAT qui reste inactif.

Ce guide fonctionne-t-il sur Debian 13 ou Ubuntu 22.04 ?

Oui. Les deux fournissent WireGuard dans leurs dépôts standard, donc les mêmes commandes fonctionnent. Seules les versions de Debian antérieures à Bullseye ont besoin des backports, d'après la page d'installation de WireGuard.

L'hébergeur de mon VPS peut-il voir ce que je fais via le tunnel ?

Le tunnel se termine sur le VPS, donc le trafic en ressort comme du trafic internet normal ; HTTPS garde le contenu des pages chiffré. Aucun log : nous ne conservons aucun log de connexion, aucun log de trafic et aucune adresse IP des visiteurs ou des clients, ni sur le site web, ni sur le dashboard, ni sur le VPS. Le guide sur faut-il un VPS offshore ou un VPN pèse le pour et le contre.

Combien de temps avant que mon VPS soit prêt ?

Une personne crée votre VPS dès que votre paiement est confirmé, et il est prêt quelques minutes plus tard, jamais plus d'une heure après cette confirmation ; votre dashboard affiche le statut, puis l'adresse IP une fois le VPS en marche. La configuration de WireGuard elle-même prend quelques minutes une fois que vous pouvez vous connecter.

Prenez un VPS pour votre serveur WireGuard

Debian 12 ou Ubuntu 24.04 sur KVM, à partir de $3.08 pour 30 jours. Sans KYC, crypto uniquement.

Sources (10)
  1. Installation — WireGuard (read 2026-10-29)
  2. Démarrage rapide — WireGuard (read 2026-10-29)
  3. manuel wg(8) — wireguard-tools (read 2026-10-29)
  4. manuel wg-quick(8) — wireguard-tools (read 2026-10-29)
  5. [email protected] — wireguard-tools (read 2026-10-29)
  6. paquet wireguard-tools (bookworm) — Debian (read 2026-10-29)
  7. IP Sysctl (ip_forward, forwarding, accept_ra) — The Linux Kernel documentation (read 2026-10-29)
  8. iptables-extensions(8) : MASQUERADE, SNAT, conntrack — Debian manpages (read 2026-10-29)
  9. sysctl(8) — Debian manpages (read 2026-10-29)
  10. qrencode(1) — Debian manpages (read 2026-10-29)

À partir de 3,08 $/mois · sans KYC

Déployer un VPS