CloudFlare Argo Tunnel 内网穿透
CloudFlare Argo Tunnel
Cloudflare Tunnel 是一款隧道软件,可以快速安全地加密应用程序到任何类型基础设施的流量,让您能够隐藏你的 web 服务器 IP 地址,阻止直接攻击,从而专注于提供出色的应用程序。
下载安装
可以在cloudflare的GitHub地址下载安装
绑定账号(用于绑定域名可选)
绑定域名需要账号开通 cloudflare zero trust
运行
cloudflared tunnel login |
运行成功后控制台会输出一个login地址,复制在浏览器登录。
登录成功后会让你选择一个域名绑定用于隧道访问,并且会生成~/.cloudflared/cert.pem文件,在创建隧道和设置 DNS 解析的时候会用到这个文件。
如果没有域名跳转直接运行
创建隧道
运行
cloudflared tunnel create [隧道名字] |
创建成功后会生成~/.cloudflared/[一长串UUID].json,配置多个服务会用到。
绑定域名
cloudflared tunnel route dns [隧道名字 或者 UUID] [想要绑定到的域名或其二级域名] |
运行隧道,实现穿透
http|https
cloudflared tunnel --name [隧道名字] --url http://[站点地址] |
tcp
cloudflared tunnel --name [隧道名称] --url tcp://[服务地址] |
直接运行
http|https
cloudflared tunnel --url http://[站点地址] |
tcp
cloudflared tunnel --name [隧道名称] --url tcp://[服务地址] |
cloudflare会返回一个二级域名免费使用
+---------------------------------------------------------+ |
配置多个服务
配置文件
创建配置文件将配置文件放在/root/.cloudflared/config.yml
tunnel: 6ff42ae2-765d-4adf-8112-31c55c1551ef #隧道的UUID |
更多配置可查看官方文档
检查配置
检查配置文件没问题会提示OK |
运行配置
cloudflared tunnel run <UUID or NAME> |
如配置文件未放在~/.cloudflared/
文件夹
cloudflared tunnel --config [配置文件的绝对路径] run [隧道名字] |
创建systemctl service
cloudflared 可以使用命令自动创建systemctl
创建systemctl service |
配置文件会被拷贝到/etc/cloudflared/config.yml
,并且从该目录下启动,所以如果你需要更改文件的话,需要在/root/.cloudflared
下修改完 config.yml
文件后复制文件到/etc/cloudflared/
,然后重启服务
复制配置文件 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 XZ's blog!