错误提示是这样:
Traceback (most recent call last):
File "", line 1, in
File "/usr/lib/python2.7/ssl.py", line 1007, in get_server_certificate
with closing(context.wrap_socket(sock)) as sslsock:
File "/usr/lib/python2.7/ssl.py", line 353, in wrap_socket
_context=self)
File "/usr/lib/python2.7/ssl.py", line 601, in __init__
self.do_handshake()
File "/usr/lib/python2.7/ssl.py", line 830, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)
证书是自签的,代码没变过,以前的是用的自根证签一个服务器端和一个客户端的证书,代码完全没问题(代码是我们用来测试客户端和服务器端通讯,同时测试服务器端证书正确的)用了一年多了。最近更新服务器端,所以公司觉得用我们另外一个专门的自签根证书签了一个专门用这个项目的中级 CA 证书,然后签了服务器和客户端的证书。然后这个测试代码就提示前面的错误了
感觉有可能是 ssl 的版本问题,也有可能是中级 CA 的问题,但是证书本身没有问题(客户端和服务器端可以正常链接)我现在想了解下如何纠错呢?有什么好办法修复这个问题?