Cloudflare Tunnel 教程:家庭服务器外网访问和安全配置

Cloudflare Tunnel 家庭服务安全访问教程封面图

开头说明

很多人在家里部署了 Immich、Open WebUI、NAS、个人博客后台、面板工具之后,都会遇到同一个问题:在家里 Wi-Fi 下能打开,出门后就访问不了。传统做法是公网 IP、端口转发、动态域名,但对普通用户来说,这些配置复杂,而且安全风险也更高。

Cloudflare Tunnel 提供了一种更适合新手的方式:家里的电脑或服务器主动连接 Cloudflare,再通过自己的域名访问家里的服务。一般情况下,不需要公网 IP,也不需要在路由器里开放端口。

本文按小白能照着做的思路,讲清楚 Cloudflare Tunnel 是什么、适合哪些服务、需要准备什么、怎么配置、怎么加访问保护,以及哪些服务不建议直接公开。

Cloudflare Tunnel 适合什么场景

  • 在外面访问家里的 Immich 家庭相册。
  • 访问家里的 Open WebUI 或本地 AI 服务。
  • 访问 NAS 管理页面或文件服务。
  • 访问家庭服务器上的测试网站。
  • 给个人工具设置一个 HTTPS 域名。

不建议把高风险管理后台裸露公开。相册、NAS、面板、数据库、路由器后台,都应该加访问保护。

准备工作

  • 一个 Cloudflare 账号。
  • 一个已经接入 Cloudflare 的域名。
  • 家里有一台长期运行的电脑、NAS 或小主机。
  • 本地服务已经能在局域网打开,例如 http://192.168.1.50:2283
  • 了解自己要公开的是哪个端口。

第一步:先确认本地服务能打开

不要一开始就配置 Tunnel。先在家里局域网测试本地服务。

http://192.168.1.50:2283

如果家里手机都打不开这个地址,Cloudflare Tunnel 配好也没用。先检查旧电脑 IP、防火墙、Docker 服务和端口。

第二步:进入 Cloudflare Zero Trust

  1. 登录 Cloudflare 后台。
  2. 进入 Zero Trust。
  3. 第一次使用时按提示创建组织名称。
  4. 进入 Networks 或 Tunnels 页面。
  5. 点击创建 Tunnel。

Cloudflare 页面经常更新,菜单名称可能有轻微变化。只要找到 Zero Trust 里的 Tunnel 入口即可。

第三步:创建 Tunnel

创建 Tunnel 时,建议名称写清楚用途,例如:

home-immich
home-openwebui
home-nas

名称只给自己看,后面服务多了以后,清楚命名会非常重要。

第四步:安装 cloudflared

Cloudflare Tunnel 需要在家里的电脑或服务器上运行 cloudflared。它负责把家里的服务连接到 Cloudflare。

如果使用 Docker,可以按 Cloudflare 页面生成的命令运行。常见 Docker Compose 示例:

services:
  cloudflared:
    image: cloudflare/cloudflared:latest
    container_name: cloudflared
    restart: unless-stopped
    command: tunnel --no-autoupdate run --token 这里换成你的TunnelToken

注意:token 不要发给别人,也不要写进公开文章、截图或视频里。

第五步:配置 Public Hostname

Public Hostname 就是外面访问的域名和家里服务之间的对应关系。

项目 示例
Subdomain photos
Domain example.com
Type HTTP
URL 192.168.1.50:2283

配置后,外网访问地址就是:

https://photos.example.com

第六步:给服务加 Cloudflare Access

如果是家庭相册、NAS、后台面板,建议加 Cloudflare Access。它可以让访问者先通过邮箱、验证码或身份规则验证,再进入你的服务。

  1. 进入 Zero Trust 的 Access。
  2. 创建 Application。
  3. 选择 Self-hosted。
  4. 填写域名,例如 photos.example.com
  5. 添加允许访问的邮箱。
  6. 保存规则。

这样即使别人知道你的域名,也不能直接打开你的家庭服务。

第七步:哪些服务不建议公开

  • 路由器管理后台。
  • 数据库管理工具。
  • 没有密码保护的文件目录。
  • 默认账号密码未修改的面板。
  • 包含大量私人照片的服务。

如果确实要外网访问,至少加 Access、强密码、两步验证,并定期更新软件。

常见问题

1. 没有公网 IP 能用吗?

可以。Cloudflare Tunnel 的一个价值就是不依赖公网 IP,家里的设备主动连接 Cloudflare。

2. 需要在路由器开放端口吗?

一般不需要。这比传统端口转发更适合普通家庭用户。

3. 域名必须托管到 Cloudflare 吗?

建议接入 Cloudflare 管理,这样 Tunnel、DNS 和 Access 配置更顺畅。

4. 为什么配置后打不开?

先检查本地服务能否在局域网打开,再检查 cloudflared 是否运行,最后检查 Public Hostname 的服务地址和端口是否正确。

总结

Cloudflare Tunnel 适合把家里的服务安全地带到外网,但它不是“随便公开一切”的理由。新手最稳的做法是:先保证局域网可用,再配置 Tunnel,最后给隐私服务加 Cloudflare Access。能不暴露端口,就不要暴露端口;能加访问保护,就不要裸奔。

参考资料

最后更新:2026 年 8 月 27 日

滚动至顶部