Плохой сертификат OpenSSL
-
05-07-2019 - |
Вопрос
Я пытаюсь создать поддельный CA и подписать с ним сертификат для использования с stunnel (который, похоже, вызывает подпрограммы OpenSSL, поэтому вам, вероятно, не нужно знать программу, чтобы помочь :). Однако stunnel продолжает отклонять мой сертификат, говоря, что он не подписан правильным ключом!
Вот как я генерирую свои ключи и сертификаты с помощью OpenSSL:
openssl genrsa -out ca_key.pem 1024
openssl req -config ./root2.cfg -new -sha1 -x509 -key ca_key.pem -out ca_cert.pem -subj "/CN=blah.blah.com/OU=Dev blah CA/C=CA/ST=blah/L=blah/O=Blah Software"
openssl genrsa -out MPS_key.pem 1024
openssl req -config ./MPS2.cfg -new -sha1 -key MPS_key.pem -out MPS_cert_req.pem -subj "/CN=blah.blah.com/OU=blah Certificate/C=CA/ST=blah/L=blah/O=Blah Software"
openssl x509 -req -in MPS_cert_req.pem -signkey ca_key.pem -out MPS_cert.pem -extensions MPS_ext
Тогда в моем stunnel.conf есть следующие записи:
CAfile = ca_cert.pem
key = MPS_key.pem
cert = MPS_cert.pem
Когда я пытаюсь запустить stunnel, я получаю общий ключ OpenSSL " не соответствует сертификату " Ошибка:
2009.09.09 16:36:04 LOG3[492:172]: SSL_CTX_use_RSAPrivateKey_file: B080074: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch
Я что-то не так сделал при создании моих файлов?
Решение
Я подведу итог, что у вас есть настройки:
<Ол>Если вы прочитали ссылку на команду OpenSSL x509 ( http://openssl.org/docs /apps/x509.html ) вы увидите, что параметр -signkey указывает OpenSSL самостоятельно подписывать предоставленный сертификат с помощью данного закрытого ключа. Это не , что вы хотите.
Вы хотите создать самозаверяющий центр сертификации, а затем использовать его для подписи своего CSR и создания действующего сертификата.
openssl verify ca_cert.pem
ca_cert.pem: /CN=blah.blah.com/OU=Dev blah CA/C=CA/ST=blah/L=blah/O=Blah Software
error 18 at 0 depth lookup:self signed certificate
OK
openssl verify MPS_cert.pem
MPS_cert.pem: /CN=blah.blah.com/OU=blah Certificate/C=CA/ST=blah/L=blah/O=Blah Software
error 18 at 0 depth lookup:self signed certificate
OK
Соответствующие параметры: -CA, -CAkey и -set_serial
openssl x509 -CA ca_cert.pem -CAkey ca_key.pem -set_serial 1 -req -in MPS_cert_req.pem -out MPS_cert2.pem -days 365
Это должно привести к получению сертификата, подписанного вашим ЦС, который сам будет подписан.