通过 Cloudflare Tunnel 可以把在家中搭建的各种服务穿透到公网上,完全基于 Cloudflare 全球网络,不用购买有公网的云服务器,而且可以轻松跑满的你上行带宽。

先决条件

  • 一个 CloudFlare 账号,且具有一个域名。
  • PayPal账号,绑定一张借记卡 , 或者使用 Visa 信用卡。

使用方法

绑定付款方式

服务是免费的,无需付费,只需要绑定一个付款方式即可

打开 CloudFlare Zero Trust 工作台,绑定你的支付方式就可以了,这里我已经绑定过了就不截图了。

image-20241125230157537

创建隧道

在 Networks 中 找到 Tunnels , 并点击右侧的 “Create a tunnel”

image-20241125230344422

选择第一个

image-20241125230524472

创建一个隧道,填写隧道名称并保存

image-20241125230630825

然后就来到了下载客户端的页面,这里可以根据你的需求选择下载 Cloudflare Tunnels 使用的客户端,类似于 npc,frp这种客户端软件,这个客户端可以安装到你内网中任何一台机器上,也可以将其安装到您的 OpenWrt 中进行使用,非常规设备推荐使用 Docker 进行部署。

image-20241125230807850

客户端完成安装之后下滑有个配置客户端的说明,如下图所示,在安装完成客户端的机器中输入它上面提示的命令即可。

image-20241125231157254

配置完成后在 Tunnels 控制台中会看到你创建的隧道为活跃状态。

image-20241125231357661

配置隧道

接下来我们需要将你的内网服务穿透出去,我们点击创建的隧道名称,会弹出控制台,点击 Edit

image-20241125231551053

然后点击 Public Hostname,并点击下面的添加按钮

image-20241125231643849

然后我们需要填写你的子域名以及对应的域名,例如我这里 Sbudomain 填写 “test”,域名为 “wanghaoyu.com.cn”, 类型选择 HTTP ,URL 为内网中的IP地址+端口,默认是80端口,我这里的 10.0.0.1 是一台 OpenWrt 路由器,保存之后最终我们可以通过 https://test.wanghaoyu.com.cn 访问内网中的 OpenWrt,就算你的内网中使用的是 HTTP 协议,Cloudflare 也会自动帮你添加 SSL 证书

image-20241125232255866

PS:这个据我实测,我家里是300M上行带宽,用CloudFlare 内网穿透之后下载 NAS 中的文件是基本可以跑满的