什么SSL证书工作,没有中间证书?

我们需要部署一个内置了自己的SSL证书的服务器应用程序,这将会滚动到未知数量的服务器,这将会上下。

我们可以使用任何CA来生成这个证书,但是最终我们只需要获得由godaddy或者其他任何CA颁发的509证书pfx文件。 我们可以在手中获得中级证书,但是这个Web服务器很简单,只允许我们指定pfx文件。

我们将无法分发或安装中间证书。

该应用程序是在Win2008及更高版本上运行的C#应用​​程序。

有什么方法可以解决这个问题?

– 是否有一个足够可靠的证书,让浏览器在没有中间证书的情况下相信它?

– 要么 ?

您可以使用openssl将其他证书从信任链添加到PKCS#12文件 。

例如,要包含信任链,可以使用以下命令:

 openssl pkcs12 -export -in input.pfx -out bundle.pfx -CAfile allcacerts.crt -chain 

这将试图在输出pfx中包含整个cert信任链。 您可能需要包含-passin <input password>-passout <output password>以获取密码要求。 你可以用-certfile cacert.crt强制包含任何特定的证书,以包含该文件中的所有证书。

您可以使用相同的实用程序来检查pfx文件以查看其内容并打印大量的诊断信息。

 openssl pkcs12 -in bundle.pfx -info