Cloudflare Tunnel 是一款隧道软件,可以快速安全地加密应用程序到任何类型基础设施的流量,让你能够隐藏你的 web 服务器 IP 地址,阻止直接攻击,从而专注于提供出色的应用程序。
工作方式如下:
Tunnel 后台程序在源 web 服务器和 Cloudflare 最近的数据中心之间创建一条加密隧道——无需打开任何公共入站端口。
使用防火墙锁定所有源服务器端口和协议后,HTTP/S 端口上的任何请求都会被丢弃,包括容量耗尽 DDoS 攻击。数据泄露尝试被完全阻止,例如传输中数据窥探或暴力登录攻击。
配置方式如下:
0. 前提条件
为了能够正常使用Cloudflare Tunnel
,你需要:
- 已经有域名托管在
Cloudflare
上; - 账号已经启用
Zero Trust
服务;
1. 安装流程
- 进入 Cloudflare 主页 - 左下角
Zero Trust
左侧Access``Tunnels
点击页面右上角Create Tunnels
- 给你新建的隧道起个名字,随意起;
- 在自己的主机上安装隧道,如图所示,自行选择系统复制代码安装。
如果你已经安装了cloudflared
服务就复制右边代码,没安装就复制左边代码,安装就不演示了,复制粘贴即可。
要注意图中 ey 开头的一串字符是你这个隧道的秘钥,不能泄露;
- 配置路由。
例如:我在我的主机上部署了 qbittorent 服务,端口是 8080,要使用Tunnel
,就在本页面配置路由。Subdomian
随意填,我这里填的是ptdownload
,Domain
选择你已经在 Cloudflare 托管的域名,我以aaa.bbb
为例,配置完成后,我访问 qbittorent 服务的网址就是ptdownload.aaa.bbb
;Path
一般不填;
Type
一栏选择你访问需要路由的服务连接方式,我的 qbittorent 服务是 HTTP 连接的,因此我选择HTTP
;
URL
一栏填写格式为localhost:端口
,我的 qbittorent 服务部署在 8080 端口,因此我这里填写localhost:8080
;
填写完成后点击保存即可,然后就可以在浏览器输入ptdownload.aaa.bbb
访问我的 qbittorent 服务;
注意事项:一台主机只能安装 1 个Tunnels
服务,如果你的主机有很多服务需要配置域名访问,只需要增加路由即可,Tunnel 配置页面的Public Hostname
标签就是配置路由的地方。
我目前使用 Cloudflare Tunnel 基于 2 个好处:
- 可以不用配置域名反代;
- 就算没有公网 IP 也可以实现外网访问,不用配置内网穿透。
欢迎指出任何有错误或不够清晰的表达,可以在下面评论区评论。