cloudflare tunnel 实现隧穿

844 阅读1分钟

cloudflare tunnel 实现隧穿

安装

# 安装cloudflared
brew install cloudflared
# 登陆,选择授权的网站
cloudflared tunnel login
# 创建tunnel
cloudflared tunnel create jjwtest
# 配置DNS记录
cloudflared tunnel route dns jjwtest www.jjwlive.com

配置

编写配置文件

vim ~/.cloudflared/config.yaml

# Tunnel UUID,就是同目录下的json文件的文件名
tunnel: de047c28-7896-4ba0-bad1-404d4a855f33

# 鉴权文件路径,注意根据自己的路径修改,下面的例子是Linux的路径
credentials-file: /Users/leitong/.cloudflared/de047c28-7896-4ba0-bad1-404d4a855f33.json

protocol: http2


# 服务配置
ingress:
  # hostname是刚才添加DNS记录时指定的域名
  - hostname: www.jjwlive.com

    # service是需要暴露的服务,比如这里反代了5244端口
    service: http://127.0.0.1:8888

  # 最后记得添加一个默认404
  - service: http_status:404

测试配置文件正确

cloudflared tunnel ingress validate

启动

 启动运行

cloudflared tunnel run

配置开机自启动

# linux
cloudflared service install
systemctl start cloudflared


# window
cloudflared.exe service install
# 1.按下 windows徽标键+R,输入regedit,打开注册表
# 2.进入 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,找到Cloudflared
# 3.将ImagePath的值修改为 C:\Cloudflared\bin\cloudflared.exe --config=C:\Users\%USERNAME%\.cloudflared\config.yml tunnel run,注意修改路径为自己的可执行文件路径和配置文件路径
# 4.再按下 windows徽标键+R,输入 services.msc
# 5.找到 Cloudflared agent服务,右键重新启动即可

# mac
cloudflared service install
launchctl start com.cloudflare.cloudflared

参考资料

[其他命令行](Useful commands · Cloudflare Zero Trust docs)