我正在尝试安装SSL我的nginx反向代理与authenticationssl密钥,但我得到这个消息时,当我尝试重新启动服务器:
Restarting nginx: [emerg]: SSL_CTX_use_PrivateKey_file("/etc/nginx/conf.d/cert.key") failed (SSL: error:0906D06C:PEM routines:PEM_read_bio:no start line error:140B0009:SSL routines:SSL_CTX_use_PrivateKey_file:PEM lib) configuration file /etc/nginx/nginx.conf test failed
每个文件都是根目录:具有600个权限的根目录我已经testing了这些证书,并且通过以下网站进行validation: http ://ssltools.com/cert_key_match
在我的键中没有拖尾怪异的字符,每行有64个字符
这里是我的configuration文件
server { listen 443; server_name my.domain.com; ssl on; ssl_certificate conf.d/cert.pem; ssl_certificate_key conf.d/cert.key; location / { proxy_pass http://upstream1; proxy_redirect off; proxy_buffering off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
}
有任何想法吗? 谢谢
在这里检查
我希望你已经复制了以下几行:
-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- -----BEGIN RSA PRIVATE KEY----- ... -----END RSA PRIVATE KEY-----
另一种解决scheme可能适用于其他人:
使用.pem文件ssl_certificate和ssl_certificate_key
那是:
... ssl on; ssl_certificate conf.d/cert.pem; ssl_certificate_key conf.d/cert.pem; ...
仅供参考,请确保您的BEGIN块与angular色的期望块,字符相同 。 我用4破折号开始,而不是5 。 ---- vs ----- 。 发生此错误时,validation工具错误消息不是非常具体。