安装必要工具
确保你已经安装了Python和pip(Python的包管理工具):
python --version pip --version
如果没有安装,运行以下命令:
python -m pip install --user --upgrade pip
然后安装Cloudflare Tunnel的Python库:
pip install cloudflare-tunnel-python
获取Cloudflare API密钥
登录到你的Cloudflare账户,进入“账户设置”,找到“API密钥”部分,点击“生成密钥”并保存它,将该密钥存储在一个安全的位置,建议使用环境变量。
使用API创建Tunnel
在终端或命令行中,使用以下命令创建一个新的Tunnel:
cf tunnel create --region <region> --name my-tunnel
<region> 是你所在的区域代码,us-west,替换 my-tunnel 为你想要的Tunnel名称。
配置应用程序
根据你的应用程序类型(例如使用Nginx或Apache),修改配置文件以指向Cloudflare Tunnel的地址,在Nginx配置文件中添加:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://<tunnel-ip>:<tunnel-port>;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
将 <tunnel-ip> 替换为Cloudflare提供的IP地址,<tunnel-port> 为指定的端口(默认为随机端口)。
更新DNS记录
将你的域名的A记录指向Cloudflare Tunnel的IP地址,在DNS管理界面中:
- 域名:
example.com - 记录类型:A
- TTL:自动
- 值:Cloudflare提供的IP地址
部署应用程序
将应用程序部署到服务器后,测试访问:
cf tunnel deploy --app <app-file>
测试访问
在浏览器中,访问你的应用程序域名,https://example.com,如果使用了SSL/TLS,确保证书已正确配置。
查看日志
如果出现问题,查看Tunnel的日志:
cf tunnel logs
这将显示实时日志,帮助诊断配置错误或连接问题。
使用命令行工具(可选)
安装并使用Cloudflare Tunnel的命令行工具:
pip install cloudflare-tunnel-cli cf for tunnel
自动化部署(可选)
设置GitHub Actions自动化部署:
- 创建一个
config.json文件,包含Tunnel配置。 - 在GitHub仓库中添加Actions,指定工作流程,使用
cloudflare-tunnel-python库进行构建和部署。
注意事项
- 保密:始终保密你的API密钥,避免泄露。
- 更新:定期检查并更新你的Tunnel配置,确保连接安全。
- 监控:使用监控工具跟踪Tunnel的状态和流量。
通过以上步骤,你应该能够成功下载并设置Cloudflare Tunnel,确保应用程序的安全访问。




