Published

Homelab

Cloudflare Tunnel: Put a Home Service Online Without Opening Ports

A Cloudflare Tunnel publishes a service on your home network at your own domain, with HTTPS, without port forwarding or exposing your home IP.

1. Create the tunnel

Cloudflare dashboard > Zero Trust > Networks > Tunnels > Create a tunnel > Cloudflared. Name it.

Zero Trust > Networks > Tunnels > Create

2. Install the connector

Copy the install command Cloudflare shows for your OS and run it on the server. It installs cloudflared as a service with your token.

sudo cloudflared service install <TOKEN>

3. Add a public hostname

In the tunnel add a public hostname, for example app.yourdomain.com, pointing to the local service.

app.yourdomain.com  ->  http://localhost:8080

4. Protect it

For admin pages add a Cloudflare Access policy (Zero Trust > Access > Applications) so only your email can log in.

Zero Trust > Access > Applications

FAQ

Do I need a domain?

Yes, the domain's DNS must be on Cloudflare (the free plan works).

Is it safe to publish admin panels?

Only behind an Access policy. A tunnel makes a service reachable; it doesn't add a login by itself.