Cloudflare WARP gibt Ihrem Server eine ausgehende Cloudflare-Adresse, praktisch für reine IPv6-Ressourcen oder um die sichtbare Ausgangs-IP zu ändern. Auf einem entfernten Rechner liegt die klassische Falle darin, dass der Standardmodus von WARP die Routingtabelle übernimmt und Ihre SSH-Sitzung kappt. Diese Anleitung zeigt zwei sichere Wege auf einem VPS Linux Infrawire: den offiziellen Client im Proxy-Modus und wgcf mit WireGuard und Teilrouting.
📋 Voraussetzungen
- Ein VPS mit Ubuntu 24.04 oder Debian 12 und SSH-Root-Zugang (in Ihrem Kundenbereich finden Sie die IP und das Root-Passwort des VPS).
- Die öffentliche IP Ihres VPS separat notiert (
VPS_IP). - Eine Möglichkeit, die VPS-Konsole zu öffnen, falls eine Netzwerkänderung Sie aussperrt.
- Die Pakete
curl,gpgundlsb-releaseinstalliert.
📦 Den offiziellen Client installieren
Fügen Sie das Cloudflare-Repository hinzu und installieren Sie das Paket:
Bashapt 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
🛡️ Proxy-Modus: SSH bleibt erhalten
Im Proxy-Modus verändert WARP die Routingtabelle nicht. Es öffnet nur einen lokalen SOCKS5-Port, den Sie bei Bedarf nutzen. Stellen Sie den Modus vor dem Verbinden ein, niemals umgekehrt.
Bashwarp-cli --accept-tos registration new warp-cli mode proxy warp-cli proxy port 40000 warp-cli connect warp-cli status
Der Proxy lauscht nur auf 127.0.0.1:40000. So schicken Sie einen Befehl hindurch:
Bashcurl -x socks5h://127.0.0.1:40000 https://www.cloudflare.com/cdn-cgi/trace
Das Schema socks5h ist wichtig: Damit läuft auch die DNS-Auflösung über den Proxy. Zum Beenden genügt warp-cli disconnect.
🔀 Alternative: wgcf und WireGuard
Wenn Sie eine WireGuard-Kernelschnittstelle bevorzugen, legt wgcf ein WARP-Konto an und erzeugt eine Standardkonfiguration. Laden Sie die zu Ihrer Architektur passende wgcf-Version von der GitHub-Releases-Seite des Projekts herunter und führen Sie dann aus:
Bashapt 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
Starten Sie es noch nicht: Das erzeugte Profil leitet alles durch den Tunnel und würde SSH kappen.
✂️ Teilrouting und nur IPv6
Bearbeiten Sie /etc/wireguard/wgcf.conf. Um nur IPv6-Verkehr über WARP zu leiten und IPv4 (und damit Ihre SSH-Sitzung) unberührt zu lassen, schränken Sie AllowedIPs ein, entfernen die Zeile DNS und senken die MTU:
INI1[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
Behalten Sie die von wgcf erzeugten Schlüssel- und Address-Zeilen. Das ip rule-Paar stellt sicher, dass Antworten von VPS_IP immer die Haupttabelle nutzen und eingehende Verbindungen geschützt bleiben. Wenn Sie sich nur über IPv4 verbinden, können Sie ::/0 später durch 0.0.0.0/0, ::/0 ersetzen, um alles zu tunneln. Aktivieren Sie die Schnittstelle:
Bashsystemctl enable --now wg-quick@wgcf
✅ Überprüfung
Prüfen Sie, ob WARP auf dem richtigen Pfad aktiv ist:
Bashcurl -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 bei der IPv6-Anfrage und ein aktueller Handshake in wg show bedeuten, dass der Tunnel funktioniert. Die normale IPv4-Anfrage sollte weiterhin warp=off zeigen.
🛠️ Fehlerbehebung
SSH-Zugang direkt nach dem Verbinden verloren. WARP lief im Volltunnel-Modus. Öffnen Sie die VPS-Konsole und führen Sie warp-cli disconnect aus (oder systemctl stop wg-quick@wgcf), und wechseln Sie vor dem erneuten Verbinden mit warp-cli mode proxy in den Proxy-Modus. Erreichen Sie den Server über IPv6, verwenden Sie kein ::/0 in AllowedIPs.
DNS löst nicht mehr auf. wg-quick überschreibt den Resolver, wenn eine DNS-Zeile existiert. Entfernen Sie diese Zeile aus dem Profil oder nutzen Sie den socks5h-Proxy, damit die Auflösung auf Cloudflare-Seite erfolgt.
Große Seiten hängen oder TLS stockt. Das ist fast immer ein MTU-Problem. Behalten Sie MTU = 1280 im WireGuard-Profil bei und testen Sie mit ping -M do -s 1200 1.1.1.1.
🎉 Ihr VPS kann Cloudflare WARP jetzt bei Bedarf nutzen, ohne Ihre SSH-Sitzung zu kappen.