彻底卸载Cloudflare Tunnel(解决 cloudflared service uninstall 报错问题)

彻底卸载Cloudflare Tunnel(解决 cloudflared service uninstall 报错问题)

Simuoss
2024-08-17 / 0 评论 / 385 阅读 / 正在检测是否收录...

问题引入

Cloudflare 是一家国际知名的互联网基础设施服务的公司。对国内用户来说,很多人用 Cloudflare 的免费服务来给网页带上 https (比如本站),又或者是用 Cloudflare Tunnel(Cloudflare Argo Tunnel) 来穿透本地网页到公网。

但是,由于众所周知的原因,国内访问 Cloudflare 服务通常不是很通畅,而在配置 Cloudflare Tunnel 时也偶尔会因为各种原因失败,需要重新安装。这时,cloudflared 会提示如下:

这是由于 cloudflared 没有完全清理安装文件导致的。

如何解决

在执行卸载指令之后,执行指令清除 cloudflared 的所有配置文件:

sudo cloudflared service uninstall
sudo rm /etc/systemd/system/cloudflared*


这时再重新执行安装指令即可。

切换到HTTP2连接

有时候在隧道创建成功后,Cloudflare 后台会显示隧道状态是 degraded (退化状态),这可能是由于新版的Cloudflare隧道“强制”使用QUIC进行连接,而国内的网络接入服务商对UDP协议支持很不好造成的。

可以通过以下方式设置默认使用HTTP2连接。
编辑配置文件:

sudo vi /etc/systemd/system/cloudflared.service

ExecStart 一行的启动指令里添加如下参数:

--protocol http2

此时启动指令应该是类似 ExecStart=/usr/bin/cloudflared --no-autoupdate --protocol http2 tunnel run --token <your_token> 的形式。
重新启动服务

sudo systemctl daemon-reload
sudo systemctl restart cloudflared #由于网络环境原因可能启动不成功,多执行几次本句

参考链接:

  1. 遇事不决,量子力学!搞定Cloudflare Tunnels无法建立隧道的问题
  2. 【便笺】配置Cloudflare隧道默认使用HTTP2
  3. Cloudflare Tunnel 中文文档
  4. Cloudflared service not removed after uninstall
2

评论 (0)

取消