I'm trying to set up SSL on Nginx. It doesn't work, and I am getting the following error in the error log, which is getting passed up from the OpenSSL library which nginx was compiled with. I don't know what that library is, but it's version 0.8.54 of nginx, and I installed it using apt-get on Ubuntu Linux.
2012/02/21 07:06:33 [emerg] 4071#0: SSL_CTX_use_PrivateKey_file("/exequias/certs/exequias.com.key") failed (SSL: error:0906406D:PEM routines:PEM_def_callback:problems getting password error: 0906A068:PEM routines:PEM_do_header:bad password read error:140B0009:SSL routines: SSL_CTX_use_PrivateKey_file:PEM lib)
I have ensured that the file permissions on the private key file are not stopping nginx from reading it. It is an RSA private key, generated with openssl rsa
.
Any ideas what might be causing this?
Remove the key pass phrase:
openssl rsa -in key.pem -out newkey.pem
If they certificate and key are together:
openssl rsa -in mycert.pem -out newcert.pem openssl x509 -in mycert.pem >>newcert.pem
Source: http://www.madboa.com/geek/openssl/#key-removepass
I got it... the private key file used with nginx must not have a passphrase. I removed the passphrase and it worked.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With