No Description

Devin Carr 4221b5ae07 Increase session tests idle timeouts 3 years ago
.github a16dee1d2a Update issue templates 3 years ago
.mac_resources 0c65daaa7d AUTH-2712 mac package build script and better config file handling when started as a service 4 years ago
.teamcity cbdf88ea28 TUN-5164: Update README and clean up references to Argo Tunnel (using Cloudflare Tunnel instead) 3 years ago
carrier 197a70c9c4 Fix typos 3 years ago
certutil 197a70c9c4 Fix typos 3 years ago
cfapi b6d7076400 TUN-5681: Add support for running tunnel using Token 3 years ago
cmd 1b511b2d25 TUN-5881: Clarify success (or lack thereof) of (un)installing cloudflared service 3 years ago
component-tests 5431e0ca12 TUN-5680: Adapt component tests for new service install based on token 3 years ago
config 5352b3cf04 TUN-5801: Add custom wrapper for OriginConfig for JSON serde 3 years ago
connection eee0d57ed0 TUN-5849: Remove configuration debug log 3 years ago
datagramsession 4221b5ae07 Increase session tests idle timeouts 3 years ago
edgediscovery ceb509ee98 TUN-5138: Switch to QUIC on auto protocol based on threshold 3 years ago
fips d83d6d54ed TUN-3905: Cannot run go mod vendor in cloudflared due to fips 4 years ago
h2mux 46740ece90 Remove debug lines from test file 3 years ago
hello cbdf88ea28 TUN-5164: Update README and clean up references to Argo Tunnel (using Cloudflare Tunnel instead) 3 years ago
ingress 5352b3cf04 TUN-5801: Add custom wrapper for OriginConfig for JSON serde 3 years ago
ipaccess 206523344f TUN-4017: Add support for using cloudflared as a full socks proxy. 4 years ago
logger da4d0b2bae TUN-4067: Reformat code for consistent import order, grouping, and fix formatting. Added goimports target to the Makefile to make this easier in the future. 4 years ago
metrics a39d95d5f7 TUN-5551: Show whether the binary was built for FIPS compliance 3 years ago
orchestration 8cbd222e10 TUN-5703: Add prometheus metric for current configuration version 3 years ago
overwatch 2f70b05c64 AUTH-2169 make access login page more generic 4 years ago
proxy 3aebaaad01 TUN-5836: QUIC transport no longer sets body to nil in any condition 3 years ago
quic e56c4532ce TUN-5697: Listen for UpdateConfiguration RPC in quic transport 3 years ago
retry 8ca0d86c85 TUN-3863: Consolidate header handling logic in the connection package; move headers definitions from h2mux to packages that manage them; cleanup header conversions 4 years ago
signal 073c5bfdaa TUN-1562: Refactor connectedSignal to be safe to close multiple times 6 years ago
socks 197a70c9c4 Fix typos 3 years ago
ssh_server_tests 197a70c9c4 Fix typos 3 years ago
sshgen 9422ea8ed8 CC-796: Remove dependency on unsupported version of go-oidc 3 years ago
supervisor a50c0ca9ad TUN-5833: Create constant for allow-remote-config 3 years ago
tlsconfig 5f380f3a54 TUN-5612: Make tls min/max version public visible 3 years ago
token 9422ea8ed8 CC-796: Remove dependency on unsupported version of go-oidc 3 years ago
tunneldns 8a5343d0a5 TUN-5675: Remove github.com/dgrijalva/jwt-go dependency by upgrading coredns version 3 years ago
tunnelrpc e56c4532ce TUN-5697: Listen for UpdateConfiguration RPC in quic transport 3 years ago
tunnelstate 1ee540a166 TUN-5368: Log connection issues with LogLevel that depends on tunnel state 3 years ago
validation cbdf88ea28 TUN-5164: Update README and clean up references to Argo Tunnel (using Cloudflare Tunnel instead) 3 years ago
vendor 9422ea8ed8 CC-796: Remove dependency on unsupported version of go-oidc 3 years ago
watcher 70e675f42c TUN-5551: Reintroduce FIPS compliance for linux amd64 now as separate binaries 3 years ago
websocket 9d9627f645 TUN-5836: Avoid websocket#Stream function from crashing cloudflared with unexpected memory access 3 years ago
.docker-images abfeebf67d AUTH-2871: fix rpm builds 4 years ago
.dockerignore d54c8cc745 TUN-5129: Use go 1.17 and copy .git folder to docker build to compute version 3 years ago
.gitignore 9552bb7bc7 TUN-5853 Add "install" make target and build package manager info into executable 3 years ago
CHANGES.md 5e2e757403 TUN-5907: Change notes for 2022.3.3 3 years ago
Dockerfile d54c8cc745 TUN-5129: Use go 1.17 and copy .git folder to docker build to compute version 3 years ago
LICENSE c54e8cd8e6 TUN-5851: Update all references to point to Apache License 2.0 3 years ago
Makefile 9552bb7bc7 TUN-5853 Add "install" make target and build package manager info into executable 3 years ago
README.md cbdf88ea28 TUN-5164: Update README and clean up references to Argo Tunnel (using Cloudflare Tunnel instead) 3 years ago
RELEASE_NOTES 6eeaf4be4b Release 2022.3.3 3 years ago
build-packages-fips.sh 70e675f42c TUN-5551: Reintroduce FIPS compliance for linux amd64 now as separate binaries 3 years ago
build-packages.sh 70e675f42c TUN-5551: Reintroduce FIPS compliance for linux amd64 now as separate binaries 3 years ago
cfsetup.yaml 0292727a95 TUN-5650: Fix pynacl version to 1.4.0 and pygithub version to 1.55 so release doesn't break unexpectedly 3 years ago
check-fips.sh 70e675f42c TUN-5551: Reintroduce FIPS compliance for linux amd64 now as separate binaries 3 years ago
cloudflared.wxs ca85df10ff TUN-4911: Append Environment variable to Path instead of overwriting it 3 years ago
cloudflared_man_template 1ed9e0fceb AUTH-2644: Change install location and add man page 4 years ago
dev.Dockerfile ef3152f334 TUN-5631: Build everything with go 1.17.5 3 years ago
fmt-check.sh da4d0b2bae TUN-4067: Reformat code for consistent import order, grouping, and fix formatting. Added goimports target to the Makefile to make this easier in the future. 4 years ago
github_message.py d21989dba4 AUTH-3148 fixed cloudflared copy and match all the files in the checksum upload 4 years ago
github_release.py 197a70c9c4 Fix typos 3 years ago
go.mod 9422ea8ed8 CC-796: Remove dependency on unsupported version of go-oidc 3 years ago
go.sum 9422ea8ed8 CC-796: Remove dependency on unsupported version of go-oidc 3 years ago
jet.yaml cbdf88ea28 TUN-5164: Update README and clean up references to Argo Tunnel (using Cloudflare Tunnel instead) 3 years ago
postinst.sh 28d556b8d4 AUTH-2858: Set file to disable autoupdate 4 years ago
postrm.sh 28d556b8d4 AUTH-2858: Set file to disable autoupdate 4 years ago
wix.json 0c65daaa7d AUTH-2712 mac package build script and better config file handling when started as a service 4 years ago

README.md

Cloudflare Tunnel client

Contains the command-line client for Cloudflare Tunnel, a tunneling daemon that proxies traffic from the Cloudflare network to your origins. This daemon sits between Cloudflare network and your origin (e.g. a webserver). Cloudflare attracts client requests and sends them to you via this daemon, without requiring you to poke holes on your firewall --- your origin can remain as closed as possible. Extensive documentation can be found in the Cloudflare Tunnel section of the Cloudflare Docs. All usages related with proxying to your origins are available under cloudflared tunnel help.

You can also use cloudflared to access Tunnel origins (that are protected with cloudflared tunnel) for TCP traffic at Layer 4 (i.e., not HTTP/websocket), which is relevant for use cases such as SSH, RDP, etc. Such usages are available under cloudflared access help.

You can instead use WARP client to access private origins behind Tunnels for Layer 4 traffic without requiring cloudflared access commands on the client side.

Before you get started

Before you use Cloudflare Tunnel, you'll need to complete a few steps in the Cloudflare dashboard: you need to add a website to your Cloudflare account. Note that today it is possible to use Tunnel without a website (e.g. for private routing), but for legacy reasons this requirement is still necessary:

  1. Add a website to Cloudflare
  2. Change your domain nameservers to Cloudflare

Installing cloudflared

Downloads are available as standalone binaries, a Docker image, and Debian, RPM, and Homebrew packages. You can also find releases here on the cloudflared GitHub repository.

User documentation for Cloudflare Tunnel can be found at https://developers.cloudflare.com/cloudflare-one/connections/connect-apps

Creating Tunnels and routing traffic

Once installed, you can authenticate cloudflared into your Cloudflare account and begin creating Tunnels to serve traffic to your origins.

TryCloudflare

Want to test Cloudflare Tunnel before adding a website to Cloudflare? You can do so with TryCloudflare using the documentation available here.

Deprecated versions

Cloudflare currently supports versions of cloudflared 2020.5.1 and later. Breaking changes unrelated to feature availability may be introduced that will impact versions released prior to 2020.5.1. You can read more about upgrading cloudflared in our developer documentation.

Version(s) Deprecation status
2020.5.1 and later Supported
Versions prior to 2020.5.1 No longer supported