在 apache2 ubuntu 服务器上安装 geotrust quickssl

在 apache2 ubuntu 服务器上安装 geotrust quickssl

我通常会外包安装 SSL 证书。但是我想学习这个过程。所以我通过 ssh 进入我的服务器并运行以下代码

openssl req -newkey rsa:2048 -nodes -keyout mydomain.com.key -out mydomain.com.csr

然后我回答了所有需要回答的问题,这生成了密钥和 CSR 文件。然后我运行此命令以复制 csr 的内容

cat example.com.csr

然后我将其粘贴到 ssl 经销商订单表中,它要求我粘贴 csr 内容。

然后我验证了我的域名并获取了一个 zip 文件。现在我在这里寻找指导,因为我找不到与我收到的文件相匹配的教程。仅供参考,我在将 csr 粘贴到证书经销商时选择了 SHA-2

因此,我收到了一个 zip 文件,其中包含 4 个文件,一个名为 CACertificate-1,然后一个名为 CACertificate-2,这两个文件都是 .cer 文件而不是 .crt 文件扩展名,还有一个名为 ServerCertificate 的文件以及第四个名为 IconScript 的文件,它似乎是一个调用外部 javascript 的 html/javascript 文件。

现在我的问题是,我看到一些教程说在我的 apache2 虚拟主机文件中添加以下内容

SSLEngine on
SSLCertificateFile /var/www/myexample.com.crt
SSLCertificateKeyFile /var/www/myexample.com.key

但是我没有 .crt 文件,我有 3 个 .cer 文件?我是否应该在虚拟主机文件中引用这三个文件?如果是,该怎么做?不,我将它们全部合并到一个文件中,然后将其重命名为 .crt 扩展名而不是 .cer 扩展名?

最后,我在虚拟主机中引用的 .key 文件是我创建 csr 时创建的密钥文件,正确吗?

谢谢大家的指导。

答案1

您不需要(也可能不想要)的 javascript,但是您确实需要签名的证书以及 CA 提供的任何中间证书。

TLS 客户端只需要知道根证书,但是 CA 通常在其根证书和您的证书之间的链中至少有一个中间证书,因此您需要确保您的服务器提供整个链的其余部分,而不仅仅是您自己的证书。

您可以将这些证书(.crt 或 .cer 可互换使用,重要的是证书采用 PEM 格式)合并为一个文件,只需连接文件(从叶到根的顺序)即可。请参阅SSLCertificateFile 的文档了解详情。


另外,你可能还想看看Mozilla 的服务器端 TLS 建议(包括它们的配置生成器)以获得一组合理的 TLS 设置。

相关内容