我的网站(CentOS 7上的Apache 2.4.6)在昨天使用SSL工作正常,但是现在当我尝试重新启动服务器时,apache服务失败了:
$ sudo service httpd restart
$ Enter SSL pass phrase for sitename.com:443 (RSA) : ********
$ Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.
这些建议的命令都没有提供太多信息,所以通过检查ssl_error_log,我找到以下相关条目:
[ssl:debug] ssl_util_ssl.c(495): AH02412: [sitename.com:443] Cert matches for name 'sitename.com' [ ... (certificate details) ... ]
[ssl:debug] ssl_engine_init.c(984): AH02236: Configuring RSA server private key
[ssl:emerg] AH02238: Unable to configure RSA server private key
[ssl:emerg] SSL Library Error: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch
最后两个条目表示密钥和证书文件不匹配。
配置在/etc/httpd/conf.d/sitename.conf
:
SSLCertificateKeyFile /etc/pki/tls/private/sitename.com.key
SSLCertificateFile /etc/pki/tls/certs/sitename.com.crt
SSLCertificateChainFile /etc/pki/tls/certs/IntermediateCA.crt
我运行以下内容来查看它们的模数,它们确实匹配:
$ openssl x509 -noout -modulus -in /etc/pki/tls/certs/sitename.com.crt | openssl md5
$ openssl rsa -noout -modulus -in /etc/pki/tls/private/sitename.com.key | openssl md5
所以看起来一切都应该正常工作,但这就是我被困住的地方,无法确定错误的原因。
任何建议表示赞赏。谢谢你的时间。
答案 0 :(得分:0)
我明白了。不确定从我的yum update
命令改变了哪个包,但我的猜测是其中一个负责。
无论如何,我不得不从我的证书的私钥文件中删除密码保护:
$ openssl rsa -in [sitename.com.key] -out [sitename.com.key]