CloudFlare Tunnels 内网穿透 家宽建站

CloudFlare Tunnels 内网穿透 家宽建站

阅读量:
评论数:

CloudFlare Tunnels 内网穿透 家宽建站

什么是cloudflare tunnels?

Cloudflare Tunnel 提供了一种安全的方式,让您在没有公共可路由 IP 地址的情况下连接到 Cloudflare 的资源。使用 Tunnel,您不会将流量发送到外部 IP,而是您基础设施中的一个轻量级守护程序会创建仅限出站的连接到 Cloudflare 的边缘。Cloudflare Tunnel 可以安全地将 HTTP Web 服务器、SSH 服务器、远程桌面和其他协议连接到 Cloudflare。这样,您的源可以通过 Cloudflare 提供流量,而不会容易受到绕过 Cloudflare 的攻击的影响。

内网穿透

上面是使用ChatGPT翻译的,说白了就是通过cf搭建一个隧道进行内网穿透,只需要一个域名,就可以公开自己部署在本地的服务,比如这个博客。

优点

不需要拥有公网IPv4地址,只要能访问互联网,可以安装cloudflared就可以使用,兼容多操作系统,包括Windows、MAC、Debian、Ret Hat,当然也可以使用docker部署,支持arm设备。

无需配置ssl,不用搞什么反代,默认https连接。

可以通过 Cloudflare 的仪表盘进行配置和管理,简化部署和维护。

源站连公网IP都没有,究极安全,赢麻了😋

缺点

国内延迟高,部分地区阻断。

部署所需

  1. 一个cloudflare账号

  2. 一个托管在cloudflare的域名

  3. 可能需要信用卡验证,随便一张虚拟卡或者PayPal应该也行

部署过程(docker部署)

  1. 登录cloudflare账号,点击Zero TrustAccessTunnels,点击Create a tunnel创建隧道,Save Tunnel保存。

    creat-1.webp

  2. 注意架构,选择自己的系统自行安装,我使用docker安装,选中docker,复制命令,ssh登录到家里的服务器上,粘贴命令创建cloudflared容器。连接成功后设备会在该页下方显示。

    如果没有docker可以看这篇文章:Docker安装

    docker.webp

    ChatGPT帮我美化了一下命令,只需要复制token替换一下最后一行即可,与原命令相比添加了容器名称、自动重启、后台运行。并且用n1运行了一下,arm64是可用的。

    docker run -d \
      --name cloudflared \
      --restart always \
      cloudflare/cloudflared:latest \
      tunnel --no-autoupdate run \
      --token YOUR_TOKEN_HERE
    

  3. 进入隧道配置页面,点击Public hostnameAdd a public hostname选择自己托管在cf的域名,可选自定义子域名,Service栏填写所需传输协议,本次穿透内网emby服务,选择http,URL为内网IP地址,点击Save hostname保存。

    DNS应该会自动修改。

    emby.webp

  4. 生效很快,大功告成,可惜延迟很高,自行探索适用场景。

    success-1.webp

结尾

运行状况如下,穿透博客效果不错。

status.webp

题外话

一运行nas-tools和qBittorrent就会导致内网穿透服务(包括cloudflared、frp、nps)全部间断掉线,看日志实在是不知道问题出在哪,只能关掉了。

参考文档

  1. 免费的Cloudflared实现外网访问群晖 | 老苏的blog

  2. cloudflare tunnel 详细介绍 —— 面向cloudflare的网站搭建,1分钟快速启动一个有ssl证书的wordpress博客 - 私は萌いQ(˘•ω•˘) (imoeq.com) 建议阅读器模式阅读,太花了😋

Built with Halo
主题 Stack Jimmy 设计 • 由Jiewen移植
📑共水了 93篇文章.
载入天数... 载入时分秒...
RSS Icon RSS订阅