使用时context.use_certificate_chain_file
出现关键错误(openssl.Context Python)。错误是:
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_file 行,它可以完美运行(但在浏览器中会出现 ssl 验证错误)。
这是我的代码片段:
context = openssl.Context(openssl.SSLv23_METHOD)
context.set_options(openssl.OP_NO_SSLv2)
context.set_options(openssl.OP_NO_SSLv3)
context.use_certificate_file('/etc/ssl/certs/' + HOSTNAME + '.crt')
context.use_certificate_chain_file('/etc/ssl/certs/' + HOSTNAME + '.cabundle')
context.use_privatekey_file('/etc/ssl/private/' + HOSTNAME + '.key')
context.set_cipher_list(':'.join(supported_ciphers))
任何想法为什么它给出错误?