cloudflare是一家提供一系列面向网站、应用程序和API的互联网安全性和性能增强服务的公司,它提供的服务主要包括内容分发网络(CDN)、分布式域名系统(DNS)服务、防御分布式拒绝服务(DDoS)攻击的解决方案和安全防护措施等。
我们在cloudflare上购买域名后,可以使用它的 tunnel 技术实现内网穿透,将我们的域名绑定到一个本地服务上。
下面分享一下操作步骤。
操作步骤(以windows为例):
安装 cloudflared(在官网或者github下载并安装,https://github.com/cloudflare/cloudflared/releases)
执行以下命令,登录到cloudflare进行授权
cloudflared tunnel login
执行后会弹出一个页面,进行授权即可。授权完成后,会在 .cloudflare 目录下生成一个 cert.pem 文件创建隧道 tunnel
cloudflared tunnel create <隧道名字>
创建完成后,会在 .cloudflare 目录中生成一个 uuid.json 的文件把域名指向对应的隧道
cloudflared tunnel route dns <隧道名字> <域名>
完成后,cloudflare 会自动添加一条 CNAME 记录到对应的域名配置 cloudflared
编辑文件 .\cloudflared\config.yml,添加如下内容:
1
2
3
4
5
6
7tunnel: local
credentials-file: C:\Users\10579\.cloudflared\e9e54272-7145-485d-af9f-d620558d5c7a.json
ingress:
- hostname: blog.wangzan.net
service: http://localhost:8080
- service: http_status:404配置完成后,可以测试一下文件是否正确:
cloudflared tunnel –config .\cloudflared\config.yml ingress validate
测试规则是否命中:
cloufdlared tunnel –config .\cloudflared\config.yml ingress rule http://wangzan.net
测试运行
.\cloudflared.exe –loglevel debug –transport-loglevel warn –config C:\Users\wyzane.cloudflared\config.yml tunnel run <隧道UUID>
以上就是通过cloudflare配置内网穿透的步骤。
参考: