升级Ubuntu 22.04至24.04后cURL出现SSL证书验证错误的求助
升级Ubuntu 22.04至24.04后cURL出现SSL证书验证错误的求助
嗨,这种情况在Ubuntu大版本升级后确实挺常见的,先别着急重新生成证书——大概率不是你的证书本身失效了,而是系统升级过程中CA证书存储或者配置出了小问题,咱们一步步排查:
先修复系统CA证书存储:Ubuntu 24.04更新了CA证书包,升级时可能出现配置未同步的情况。先运行这两条命令重新安装并更新CA证书:
sudo apt update && sudo apt install --reinstall ca-certificates sudo update-ca-certificates完成后再试试curl,很多时候这一步就能解决问题。
检查curl的证书加载路径:用带 verbose 模式的curl命令看看它实际用的证书路径,比如替换成你要访问的域名:
curl -v https://your-target-domain.com输出里会显示
CAfile和CApath的位置,确认是不是指向了系统默认的/etc/ssl/certs/,如果路径不对可能是升级时的配置残留导致的。验证目标网站的证书链:有时候问题不在本地,而是目标网站的证书链不完整或者过期。用openssl命令检查目标站点的证书状态:
openssl s_client -connect your-target-domain.com:443看输出里有没有
verify return:1(验证成功),如果是其他错误,那就是目标站点的问题了。别在SSH配置上浪费时间啦:你提到检查了ssh_config和sshd_config,但这个curl的错误是SSL/TLS层面的,和SSH完全没关系,不用在这上面纠结~
至于要不要重新生成证书:如果是你自己托管的网站证书,先做完上面的排查,要是确认是本地信任的问题,完全不用重新生成;只有当openssl检查出你的证书确实过期、密钥不匹配时,才需要考虑重新生成。系统升级本身不会平白无故让你的证书失效的~
备注:内容来源于stack exchange,提问作者Andy
相关产品推荐
相关产品推荐

