Cloudflare WARP sur un VPS Linux avec warp-cli et wgcf

3 min
Hébergement VPS/VDS

Cloudflare WARP donne à votre serveur une adresse de sortie Cloudflare, pratique pour joindre des ressources uniquement IPv6 ou changer l'IP sortante apparente. Sur une machine distante, le piège classique est que le mode WARP par défaut détourne la table de routage et coupe votre session SSH. Ce guide présente deux méthodes sûres sur un VPS Linux Infrawire : le client officiel en mode proxy, et wgcf avec WireGuard et routage partiel.

📋 Prérequis

  • Un VPS sous Ubuntu 24.04 ou Debian 12 avec accès SSH root (depuis votre espace client vous retrouvez l'IP et le mot de passe root du VPS).
  • L'IP publique de votre VPS notée à part (VPS_IP).
  • Un moyen d'ouvrir la console du VPS si une modification réseau vous verrouille.
  • Les paquets curl, gpg et lsb-release installés.

📦 Installer le client officiel

Ajoutez le dépôt Cloudflare puis installez le paquet :

Bash
apt update && apt install -y curl gpg lsb-release curl -fsSL https://pkg.cloudflareclient.com/pubkey.gpg | gpg --yes --dearmor --output /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/cloudflare-client.list apt update && apt install -y cloudflare-warp systemctl enable --now warp-svc

🛡️ Mode proxy : garder le SSH en vie

En mode proxy, WARP ne touche pas à la table de routage. Il ouvre seulement un port SOCKS5 local que vous utilisez à la demande. Choisissez le mode avant de vous connecter, jamais l'inverse.

Bash
warp-cli --accept-tos registration new warp-cli mode proxy warp-cli proxy port 40000 warp-cli connect warp-cli status

Le proxy écoute uniquement sur 127.0.0.1:40000. Pour y faire passer une commande :

Bash
curl -x socks5h://127.0.0.1:40000 https://www.cloudflare.com/cdn-cgi/trace

Le schéma socks5h est important : la résolution DNS passe aussi par le proxy. Pour arrêter, lancez warp-cli disconnect.

🔀 Alternative : wgcf et WireGuard

Si vous préférez une interface WireGuard noyau, wgcf crée un compte WARP et génère une configuration standard. Téléchargez la version de wgcf correspondant à votre architecture sur la page des releases GitHub du projet, puis :

Bash
apt install -y wireguard-tools chmod +x wgcf_linux_amd64 && mv wgcf_linux_amd64 /usr/local/bin/wgcf cd /root && wgcf register && wgcf generate cp wgcf-profile.conf /etc/wireguard/wgcf.conf

Ne le démarrez pas encore : le profil généré fait tout passer par le tunnel et couperait le SSH.

✂️ Routage partiel et IPv6 seulement

Éditez /etc/wireguard/wgcf.conf. Pour ne faire passer que l'IPv6 par WARP et laisser l'IPv4 (donc votre session SSH) intacte, restreignez AllowedIPs, supprimez la ligne DNS et baissez la MTU :

INI
1[Interface] 2MTU = 1280 3PostUp = ip rule add from VPS_IP lookup main 4PostDown = ip rule del from VPS_IP lookup main 5 6[Peer] 7AllowedIPs = ::/0 8Endpoint = engage.cloudflareclient.com:2408

Conservez les lignes de clés et Address produites par wgcf. La paire ip rule garantit que les réponses de VPS_IP utilisent toujours la table principale, ce qui protège les connexions entrantes. Si vous vous connectez uniquement en IPv4, vous pourrez plus tard remplacer ::/0 par 0.0.0.0/0, ::/0 pour tout tunneliser. Activez l'interface :

Bash
systemctl enable --now wg-quick@wgcf

✅ Vérification

Contrôlez que WARP est actif sur le bon chemin :

Bash
curl -s https://www.cloudflare.com/cdn-cgi/trace | grep warp curl -6 -s https://www.cloudflare.com/cdn-cgi/trace | grep -E 'ip=|warp=' wg show wgcf

warp=on sur la requête IPv6, avec un handshake récent dans wg show, signifie que le tunnel fonctionne. La requête IPv4 simple doit toujours afficher warp=off.

🛠️ Dépannage

Accès SSH perdu juste après la connexion. WARP était en mode tunnel complet. Ouvrez la console du VPS et lancez warp-cli disconnect (ou systemctl stop wg-quick@wgcf), puis passez en warp-cli mode proxy avant de vous reconnecter. Si vous joignez le serveur en IPv6, n'utilisez pas ::/0 dans AllowedIPs.

Le DNS ne résout plus. wg-quick réécrit le résolveur quand une ligne DNS existe. Supprimez cette ligne du profil, ou utilisez le proxy socks5h pour que la résolution se fasse côté Cloudflare.

Les grosses pages se bloquent ou TLS cale. C'est presque toujours un problème de MTU. Gardez MTU = 1280 dans le profil WireGuard et testez avec ping -M do -s 1200 1.1.1.1.


🎉 Votre VPS peut désormais utiliser Cloudflare WARP à la demande sans jamais couper votre session SSH.

Restez à jour avec les dernières offres, réductions et promotions spéciales.

Voir les promotions

Nous utilisons des cookies

Nous utilisons des cookies analytiques pour améliorer votre expérience sur notre site. Aucune donnée n'est revendue à des tiers. En savoir plus dans notre politique de confidentialité.