Cloudflare Tunnels

虽然 SSH Tunneling: 远程服务端口转发 可以实现 内网穿透 ,将局域网内部服务映射到公网对外服务,但是也有以下不便:

  • 需要有异常检测保活能力,通常需要复杂脚本,或者使用开源工具实现

  • 需要自己部署一个VPS服务器(具备公网IP),有一定投入成本

著名的网络服务商Cloudflare提供了一个免费的 Tunnels 服务,提供了 SSH Tunneling: 远程服务端口转发 增强服务。

Cloudflare初始准备

访问 Cloudflare Dashboard 的菜单,在 Zero Trust 分类下,有一个 Networks >> Tunnels 配置(需要先注册帐号,并且选择一个Free的Plan,绑定信用卡之后,就可以使用免费服务)

  • 下载页面提供了多个工具,需要下载一个名为 cloudflared 的服务程序,官方说明为 cloudflared is a lightweight daemon that runs in your infrastructure and lets you securely expose internal resources to the Cloudflare edge.

备注

在官方网站提供的 cloudflared 二进制执行程序(安装包)只有x86/amd64版本。我的实践是在 Raspberry Pi 环境,所以需要从 GitHub cloudflare/cloudflared Releases 下载。GitHub上提供了更多架构的编译版本发布

警告

下载的软件包,请使用网站提供的 SHA256 Checksums 校验,例如我下载的 cloudflared-linux-arm64.deb :

使用网站提供的 SHA256 Checksums 校验下载的软件包
sha256sum cloudflared-linux-arm64.deb

输出校验的字符串应该和网站一致:

使用网站提供的 SHA256 Checksums 校验下载的软件包输出的校验结果
5d997a833a168d320effcd5f3eb221ea631b4ebb9163f3982566342b23913bf5  cloudflared-linux-arm64.deb

备注

时间不够,我后续再继续实践,待续...

参考