操作环境: Debian 11 x86_64
在Cloudflare Tunnel支持gRPC的issue提出一年后,
Cloudflare边缘总算是能够通过Tunnel连接到源站的gRPC服务了。
从现在开始,你已经可以将哪吒监控面板完整的隐藏于Cloudflare Tunnel之中。
设置方法如下:
-
指定Cloudflare Tunnel的传输协议为
http2
对于直接通过官网service install一键安装的用户,
需要在systemd配置中增加--protocol http2
参数 -
在Cloudflare面板中配置http2回源选项
- 你的服务必须使用https协议
- 启用
HTTP2 connection
选项 - 如果
Service URL
使用localhost
,则需要正确填写HTTP Host Header
与Origin Server Name
-
完成上述两部的配置后
发送至Cloudflare边缘的gRPC流量应该能够正确的路由至你的Tunnel端点 -
哪吒面板xCloudflare的完整配置
- 我使用Nginx Proxy Manager为哪吒面板的gRPC服务提供https终结
- Websocket与静态资源直接通过Tunnel连接至Dashboard
- gRPC使用不同的域名进行连接
gRPC反向代理使用的自定义配置如下
注意反向代理配置完成后,Cloudflare Tunnel应如前述步骤所示连接到nginx监听的https端口