甘地SSL证书,X509私钥值不匹配

我最近使用以下命令重新生成了我从Gandi购买的SSL证书:

openssl req -nodes -newkey rsa:2048 -sha256 -keyout server.key -out server.csr 

这将生成2个文件, server.csrserver.key然后我将上传签名请求给Gandi,Gandi交换了我的服务器证书以及中间证书。 然后我连接这些。

 cat my-cert-from-gandi.crt intermediate.crt > chained-certificate.crt 

然后在我的nginxconfiguration中:

  ssl on; ssl_certificate /etc/nginx/certificates/chained-certificate.crt; ssl_certificate_key /etc/nginx/certificates/server.key; 

然后当我尝试testing这个configuration( nginx -t )时,我收到以下输出:

 nginx: [emerg] SSL_CTX_use_PrivateKey_file("/etc/nginx/certificates/server.key") failed (SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch) 

server.key的模数与server.csr的模数相匹配。 然而, my-cert-from-gandi.crt的模数与我私钥的模数匹配。

一个潜在的暗示是,自从上次我做到这一点以来,中间证书似乎已经在甘地的目标上发生了变化。 以前它包含一个单独的BEGIN/END块,现在它包含两个。 不知道这是否意味着我必须做一些不同的事情。

任何帮助深表感谢。

您可能已经从您的CA下载了错误的签名证书,或者CA发生了奇怪的错误(并且设法破坏了您的密钥,签署了其他密钥或其他内容)。

您最好采取的行动是联系CA,看看他们是否会帮助您,仔细检查您是否已经下载了正确的签名证书。 他们应该撤销他们签署的一个,并再次签署你的CSR。

这与中间CA证书无关。