
Client für Cloudflare Tunnel, der sichere, reine ausgehende Verbindungen zu Origins über eine Zero-Trust-Architektur ermöglicht. Unterstützt HTTP-, WebSocket-, SSH- und RDP-Datenverkehr ohne Firewall-Änderungen und bietet Zugriffskontrolle und Authentifizierung.
Enthält den Kommandozeilen-Client für Cloudflare Tunnel, einen Tunneling-Daemon, der Datenverkehr vom Cloudflare-Netzwerk zu Ihren Ursprüngen weiterleitet.
Dieser Daemon sitzt zwischen dem Cloudflare-Netzwerk und Ihrem Ursprung (z. B. einem Webserver). Cloudflare zieht Client-Anfragen an und sendet sie über diesen Daemon an Sie,
ohne dass Sie Löcher in Ihre Firewall schlagen müssen --- Ihr Ursprung kann so geschlossen wie möglich bleiben.
Umfangreiche Dokumentation finden Sie im Cloudflare Tunnel-Abschnitt der Cloudflare-Dokumentation.
Alle Verwendungen im Zusammenhang mit dem Proxying zu Ihren Ursprüngen sind unter cloudflared tunnel help verfügbar.
Sie können cloudflared auch verwenden, um auf Tunnel-Ursprünge (die mit cloudflared tunnel geschützt sind) für TCP-Datenverkehr
auf Layer 4 (d. h. nicht HTTP/Websocket) zuzugreifen, was für Anwendungsfälle wie SSH, RDP usw. relevant ist.
Solche Verwendungen sind unter cloudflared access help verfügbar.
Alternativ können Sie den WARP-Client
verwenden, um auf private Ursprünge hinter Tunneln für Layer-4-Datenverkehr zuzugreifen, ohne dass cloudflared access-Befehle auf der Clientseite erforderlich sind.
Bevor Sie Cloudflare Tunnel verwenden, müssen Sie einige Schritte im Cloudflare-Dashboard abschließen: Sie müssen eine Website zu Ihrem Cloudflare-Konto hinzufügen. Beachten Sie, dass es heute möglich ist, Tunnel ohne eine Website zu verwenden (z. B. für privates Routing), aber aus Legacy-Gründen ist diese Anforderung weiterhin erforderlich:
cloudflaredDownloads sind als eigenständige Binärdateien, ein Docker-Image sowie Debian-, RPM- und Homebrew-Pakete verfügbar. Sie finden Releases auch hier im cloudflared-GitHub-Repository.
cloudflared ist auf DockerHub verfügbarmake cloudflared ausführen.Benutzerdokumentation für Cloudflare Tunnel finden Sie unter https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/
Nach der Installation können Sie cloudflared in Ihrem Cloudflare-Konto authentifizieren und mit der Erstellung von Tunneln beginnen, um Datenverkehr zu Ihren Ursprüngen zu liefern.
Möchten Sie Cloudflare Tunnel testen, bevor Sie eine Website zu Cloudflare hinzufügen? Sie können dies mit TryCloudflare anhand der hier verfügbaren Dokumentation tun.
Das Entfernen von CLI-Flags, Umgebungsvariablen, Konfigurationsschlüsseln oder Befehlen ist eine Breaking Change. Solche Entfernungen müssen im Cloudflare Tunnel changelog angekündigt werden, bevor die Version veröffentlicht wird, die sie entfernt.
Cloudflare unterstützt derzeit Versionen von cloudflared, die innerhalb eines Jahres nach dem neuesten Release liegen. Breaking Changes, die nicht mit der Verfügbarkeit von Funktionen zusammenhängen, können eingeführt werden und sich auf Versionen auswirken, die vor mehr als einem Jahr veröffentlicht wurden. Mehr über das Aktualisieren von cloudflared erfahren Sie in unserer Entwicklerdokumentation.
Beispielsweise wird Cloudflare ab Januar 2023 die Versionen cloudflared 2023.1.1 bis cloudflared 2022.1.1 unterstützen.
Die go-Direktive in go.mod muss die vollständige Version im Format major.minor.patch angeben
(zum Beispiel go 1.27.4). Lassen Sie die Patch-Version nicht weg, auch nicht bei .0-Releases.
Dies ist die exakte Go-Version, die zum Bauen und Testen von cloudflared verwendet wird: Das Makefile exportiert
daraus GOTOOLCHAIN=go<version>, sodass make diese Toolchain herunterlädt, wann immer das
installierte Go älter oder neuer ist. Tools, die make mit go run pkg@version ausführt, verwenden ebenfalls
diese Toolchain. Eine toolchain-Direktive in go.mod wird ignoriert; fügen Sie keine hinzu.
Um stattdessen das installierte Go zu verwenden, führen Sie make <target> GOTOOLCHAIN=local aus.
Beim Aktualisieren von Go aktualisieren Sie die go-Direktive und alle entsprechenden Versionsreferenzen
in .gitlab-ci.yml, .ci/image/Dockerfile, .github/workflows/check.yaml und den
Dockerfiles. Aktualisieren Sie das Linux-CI-Builder-Image und den Digest in .ci/linux.gitlab-ci.yml
entsprechend; dessen golangVersion wählt die Major/Minor-Image-Familie aus. Unter macOS und
Windows kostet eine Abweichung nur einen Toolchain-Download. Builds, die GOTOOLCHAIN=local verwenden,
schlagen fehl, wenn ihr Go älter als go.mod ist, und verwenden ihr eigenes Go, wenn es neuer ist.
Um cloudflared lokal zu bauen, führen Sie make cloudflared aus
Um die Tests lokal auszuführen, führen Sie make test aus
Um den Code zu formatieren und eine gute Codequalität zu erhalten, verwenden Sie make fmt und make lint
Nach Änderungen an Interfaces müssen Sie möglicherweise die Mocks neu generieren, führen Sie daher make mocks aus