CloudXNS / CloudXNS-API-SDK-Python

CloudXNS-API-SDK-Python: CloudXNS API Python Software Development Kit.
https://www.cloudxns.net/Support/detail/id/69.html
18 stars 6 forks source link

certificate verify failed #5

Closed zh99998 closed 7 years ago

zh99998 commented 7 years ago

Python 2.7.13 执行示例工程时报

httplib2.SSLHandshakeError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661)

看起来是httplib2不支持SNI,而cloudxns的默认证书不正确,SNI后证书才正确。

zh99998 commented 7 years ago

啊发现已经在代码里添加了关闭验证,但是pip上的版本没更新

xcbeyonds commented 7 years ago

https://www.cloudxns.net/Support/detail/id/680.html 可以参考一下官方的帖子

SSL3_GET_SERVER_CERTIFICATE:certificate verify failed ,这是httplib2 SSL证书验证出错,加了一个'disable_ssl_certificate_validation':True的参数就好了

zh99998 commented 7 years ago

pip 上没有更新

xcbeyonds commented 7 years ago

谢谢提醒,已经更新了

zh99998 commented 7 years ago

但是你们不觉得SSL证书有问题以至于要关验证这件事情不妥么?

xcbeyonds commented 7 years ago

这个验证还是建议关掉,相关问题我们也查询过,目前还没办法准确定位,后继有详细信息,会通过版本迭代的方式进行发布。也谢谢你对我们cloudxns的关注。

zh99998 commented 7 years ago

..... 有什么没法准确定位的,我提issue的时候都说到了... 问题的根源是SNI,这个工程用的 httplib2 不支持SNI,然后服务器那边必须SNI才会返回正确证书,否则返回的是主站的证书而不是api的,然后就导致证书COMMON NAME对不上号。

解决方案就是换个新的支持SNI的http库

xcbeyonds commented 7 years ago

我们也讨论过换库的方案,但是具体采用何种方案解决这个问题我们还要花点时间考虑下,这个希望你能理解! 谢谢

xonze commented 7 years ago

确实SNI的问题,我们已经将服务器配置做了调整,现在应该不会再报ssl的证书错误了。

为了彻底解决后面我们在升级sdk的时候会考虑将http请求类更换

非常感谢您对CloudXNS的保障以及提出宝贵的建议