Last edited time
Aug 20, 2024 03:09 AM
password
AI summary
type
status
date
slug
summary
tags
category
icon
前言:
嗨,还在为远程办公发愁么?简述你的答案。下面让cloudflare来解决他。
可以说说你的故事:阻碍、努力、结果成果,意外与转折。
📝 Cloudflare内网穿透
一、CentOS 内网穿透
- 打开 Cloudflare Zero Trust 工作台面板
- 完成后,在 Access Tunnels 中,创建一个 Tunnel

- 选择 Cloudflared 部署方式。
- Tunnel 需要通过 Cloudflared 来建立云端与本地网络的通道,这里选择 CentOS 部署Cloudflared 守护进程以使用 Tunnel 功能。由于CentOS是基于Redhat的,所以我们选择Redhat,再根据自己的CPU选择相应的架构即可,如下图。

- 点击复制按钮复制指令,在本地网络主机上运行命令。

- 配置域名和转发URL
为你的域名配置一个子域名(Subdomain),Path 留空,URL 处填写内网服务的IP加端口号。注意 Type 处建议使用 HTTP,因为 Cloudflare 会自动为你提供 HTTPS,因此此处的转发目标可以是 HTTP 服务端口。

- 接着访问刚刚配置的域名,例如 https://app.yourdomain.com(是的,你没看错,是 https,cloudflare 已经自动为域名提供了 https 证书)就可以访问到内网的非公端口号服务了。一个 Tunnel 中可以添加多条三级域名来跳转到不同的内网服务,在 Tunnel 页面的 Public Hostname 中新增即可。
二、Openwrt创建 cloudflareTunnel隧道
- 下载cloudflared到本地
这里可以将VERSION的版本号换成GitHub中最新的即可。
- 在openwrt创建 cloudflareTunnel隧道
首先需要登录cloudflare cloudflare zero trust(使用cloudflare zero trust需要信用卡验证 选择免费计划 完全免费的)在openwrt终端输入命令,登录cloudflare
代码:
输入登录命令后,出现 登录链接,复制连接 在已经登录cloudflare zero trust浏览器中打开进入选择一个域名 点击授权 终端提示证书下载成功 目录/root/.cloudflared/cert.pem. 将该证书复制到/etc/cloudflared/目录
- 使用命令创建隧道
代码:
提示创建成功 /root/.cloudflared/123-e363-41238-854c-234534514.json
- 在/etc/cloudflared/目录新建config.yaml的配置文件(注:在该配置文件的每个配置项冒号后需有一个空格,yaml语法要求),并填入以下内容,并将上面生成的隧道id替换config配置文件中tunnel_id
- 运行隧道
- 迁移隧道,加入openwrt开机后台启动运行开机后台运行添加下面代码 (系统>>启动项>>本地启动脚本)
代码:
- 配置域名和转发URL(同上centos的配置),到此即可完成,后面步骤根据个人情况配置
- 重点 添加内网ip(192.168.1.0/24) 到 cloudflareTunnel隧道
- 重点 配置 cloudflare zero trust客户端warp连接参数
- 重点 去除warp 客户端ip排除列表 中内网ip(192.168。。。)
三、常见错误
- problem:Failed to create new quic connection error="failed to dial to edge with quic: timeout: no recent network activity"
solve: 这种情况换一个协议就可以了。如在config.yaml中添加protocol: http2,变为http2即可
- problem:Error parsing YAML in config file. Line 2: mapping values are not allowed in this context
solve:yaml文件中的键值对格式如下(key: values)冒号后必须有空格
- problem:Argo Tunnel issues - error 1033
solve: 1033 错误意味着您的隧道当时未连接到我们的网络。您可以运行
cloudflared tunnel list
以查看隧道的连接列表。🤗 总结归纳
- cloudflare
- 内网穿透
📎 参考文章
有关Cloudflared安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~
- 作者:迷途
- 链接:blog.ortech.us.kg/article/cftt
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。