【发布时间】:2021-12-19 05:43:55
【问题描述】:
作为更新部署在 Kubernetes 中的 Web 服务器的 SSL/TLS 证书的一部分(当前证书即将过期),我使用新的 crt 和密钥更新了 Kubernetes 机密 (kubernetes.io/tls)。
之后,应用程序在浏览器中运行良好。 但是,对服务器的 API 调用(来自在一些 pod 中运行的一些 python 应用程序)遇到了一些 SSLError。
如果我恢复服务器的旧证书,同样会起作用。
错误是:
requests.exceptions.SSLError: HTTPSConnectionPool(host='hostname', 端口 = 443):最大重试次数超出 url:URL(由 SSLError(SSLCertVerificationError(1,'[SSL:CERTIFICATE_VERIFY_FAILED] 证书验证失败:无法获取本地颁发者证书 (_ssl.c:1131)')))
我尝试通过以与 pfx 文件不同的方式创建 crt 和密钥来解决此问题。 但问题依然存在。
我进行了一些搜索 - 如果在 Kubernetes 集群中作为证书更改的一部分进行更新,但我找不到解决方案。
任何帮助将不胜感激。
【问题讨论】:
-
"host='hostanme'" 错字?
-
@KlausD。我纠正了错字,我掩盖了实际的主机名和网址
-
用的是什么python版本?以及安装了哪些版本的包
requests和certifi? -
@Robert Python -> 3.8.10, requests->2.25.1, certifi->2021.10.8
标签: ssl https openssl ssl-certificate