当使用context.use_certificate_chain_file
时,我得到一个密钥错误(openssl.ContextPython)。错误是:
Traceback (most recent call last):
File "/home/user/public_html/application.py", line 363, in <module>
context.use_privatekey_file('/etc/ssl/private/' + HOSTNAME + '.key')
OpenSSL.SSL.Error: [('x509 certificate routines', 'X509_check_private_key', 'key values mismatch')]
它说一个键值不匹配,但我不认为这个链会影响它。在
如果我评论context.use_certificate_chain_文件行,它工作得很好(但是在浏览器中会出现ssl验证错误)。在
下面是我的代码片段:
^{pr2}$你知道为什么会出错吗?在
它现在工作了,链条必须附加到阴极射线管上。在
错误从OpenSSL向上传播。其错误0x0b08074:
{你有两个问题。在
首先,私钥与证书中的公钥不匹配。第二,您的
certificate_chain_file
缺少从服务器证书到根的有效路径所需的中间证书。在这里,根将是签署证书的CA。在因此,您的解决方法是:(1)确保公钥/私钥对实际上是一对,或者(2)在链文件中包含必要的中间证书。在
如果不知道私钥(
'/etc/ssl/private/' + HOSTNAME + '.key'
)、服务器证书('/etc/ssl/certs/' + HOSTNAME + '.crt'
)或链文件('/etc/ssl/certs/' + HOSTNAME + '.cabundle'
)的内容,我们真的无法提供更多关于如何修复它的详细信息。在您可以向我们提供服务器证书:
^{pr2}$你可以直接给我们提供链式文件。它将是3个或4个PEM编码的证书串联在一起:
^{3}$相关问题 更多 >
编程相关推荐