ubuntu解决cloudflared证书失效造成服务器无法访问的问题
在这台服务器上登录 Cloudflare
先查看cloudflared的服务状态
sudo systemctl status cloudflared
正常情况会看到
cloudflared.service - cloudflared Loaded: loaded (/etc/systemd/system/cloudflared.service; enabled) Active: active (running) since ...
再先查看隧道状态
cloudflared tunnel list
如果出现
cloudflared.service - cloudflared Loaded: loaded (/etc/systemd/system/cloudflared.service; enabled; vendor preset: enabled) Active: activating (auto-restart) (Result: timeout) since Tue 2026-01-13 06:39:35 CST; 2s ago Process: 1290 ExecStart=/usr/bin/cloudflared --no-autoupdate tunnel run --token XXXXXX> Main PID: 1290 (code=exited, status=0/SUCCESS) CPU: 915ms
这个状态 已经明确告诉你:cloudflared 没连上 Cloudflare
而且是在 启动→超时→systemd 重启→再超时 的死循环里
重新运行cloudflared
/usr/bin/cloudflared tunnel run --token 你的token
如果出现
ERR Cannot determine default origin certificate path. No file cert.pem in [~/.cloudflared ~/.cloudflare-warp ~/cloudflare-warp /etc/cloudflared /usr/local/etc/cloudflared]. You need to specify the origin certificate path by specifying the origincert option in the configuration file, or set TUNNEL_ORIGIN_CERT environment variable originCertPath= Error locating origin cert: client didn't specify origincert path
说明证书失效了
在 Ubuntu 服务器上执行:
cloudflared login
它会输出一个 URL,例如:
Please open the following URL and log in: https://dash.cloudflare.com/argotunnel?token=xxxxxr
然后将这串URL地址复制到任何可以打开浏览器的电脑,通过浏览器打开链接,并登录,然后选择绑定的域名即可。
成功后,ubuntu会返回
You have successfully logged in.
并会在服务器上生成证书。位置在
~/.cloudflared/cert.pem