按照Godaddy的说明,我生成了一个私钥和相应的CSR:
openssl req -new -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr
然后,我将mydomain.csr上传到Godaddy,得到了一个包含SSL和中间证书的ZIP文件,我将其合并为一个CRT文件:
cat mysslcert.crt intermediate.crt >> mydomain.crt
使用来自docker hub的官方NGINX映像,配置如下:
server {
listen 80;
listen 443 ssl;
keepalive_timeout 10m;
root /var/www;
server_name mydomain.com;
ssl on;
ssl_certificate /etc/ssl/mydomain.crt;
ssl_certificate_key /etc/ssl/mydomain.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on; ...
这些文件可访问(检查路径错误)。我收到的错误如下:
SSL_CTX_use_PrivateKey_file("/etc/ssl/mydomain.key") failed (SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch)
MD5的比较告诉我它们是不同的,但是我在做什么错呢?
最佳答案
感谢@TarunLalwani,问题在于当我上传新的CSR时,可以从Godaddy下载的证书需要花费一些时间来刷新。解决方案是我必须等待实际的电子邮件,表明我的证书已准备好下载。
关于ssl - Nginx上的SSL支持,Godaddy SSL证书,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46175303/