python 应用程序中的 SSLError,证书更新后

SSLError in python application, after certificate update

作为更新部署在 Kubernetes 中的 Web 服务器的 SSL/TLS 证书(当前证书即将过期)的一部分,我更新了 Kubernetes 机密 (kubernetes.io/tls)新的 crt 和密钥。

之后,应用程序在浏览器中运行良好。 但是,对服务器的 API 调用(来自某些 python 应用程序 运行 在某些 pods 中)遇到了一些 SSLError。

如果我恢复服务器的旧证书,同样会起作用。

错误是:

requests.exceptions.SSLError: HTTPSConnectionPool(host='hostname', port=443): Max retries exceeded with url: URL(Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1131)')))

我试图通过从 pfx 文件以不同方式创建 crt 和密钥来解决这个问题。 但问题依旧。

我做了一些搜索 - 如果有任何东西要在 Kubernetes 集群中更新作为证书更改的一部分,但我找不到解决方案。

任何帮助将不胜感激。

问题是,我安装的证书没有中间证书。浏览器可以通过搜索丢失的证书来“填补空白”。重新安装具有完整链的证书解决了问题