背景

背景

学习 Linux 技能...请耐心等待!

我发现了很多关于为单个站点安装证书的教程,但没有找到默认证书。

我的域名有一个通配符证书。我让支持人员在服务器上安装了此证书。由于我正在学习 Linux 服务器技能,所以我想在装有 Apache 的 Debian 服务器上安装此证书。我希望它成为所有站点的默认 SSL 证书,无论域名是什么,除非他们有自己的 SSL 证书。

我购买证书的地方有我可以复制和粘贴的文本:

  • 服务器证书
  • 中级证书
  • 根证书

我找到了包含各种文件的sites-enabled文件sites-available夹。我还找到了 ssl cert 文件夹。

我发现不同的教程中有私钥、SSL 证书、中级证书等术语。似乎有几个术语可以互换使用。

思考该过程是:

  1. 在 certs 文件夹中创建具有特定所有者和权限的文件(密钥/证书)。
  2. sites-available 在或sites-enabled文件夹或两者中编辑默认站点配置数据。
  3. 重新启动 Apache。

我的问题:

  1. 我上述的步骤正确吗?
  2. 我的证书的哪些部分对应于证书文件夹中的哪些文件名?
  3. 我应该为默认 SSL 虚拟主机添加什么?这应该放在sites-availablesites-enabled文件夹中,还是同时放在两者中?

我意识到我不知道有些事情...我还需要知道什么?

PS。ISPConfig 已安装在该服务器上,但似乎没有地方可以执行我想要的操作。我最终也想知道如何创建特定于站点的 SSL 证书。

答案1

背景

sites-available在 Debian 中使用

有一个种类关于如何在 Debian 中设置站点。您应该为每个虚拟主机创建配置文件,sites-available并将其符号链接到sites-enabled。Debian 提供了a2ensite为您执行这些符号链接的命令。

添加全局指令

您可以编辑httpd.conf以添加全局指令,但这会使升级更加繁琐,因为您可能需要将配置更改httpd.conf从“工厂”重新合并到较新的配置中。您可以使用与站点类似的技术将配置文件添加到。在用户/etc/apache2/mods-available中创建配置后,即可启用它。/etc/apache2/mods-availablea2enmod

在 apache 中配置 SSL

您需要使用一些指令来告诉 Apache 在哪里找到您的证书。您的证书提供商应该已经向您提供了说明,说明您的哪些文件与以下哪些指令相符:

SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
SSLCertificateChainFile /etc/ssl/certs/foo-chain-bundle.pem

前两个是肯定需要的,而第三个SSLCertificateChainFile只需要某些 SSL 证书提供商。

对你具体问题的答案

我上述的步骤正确吗?

您对整个过程的了解是正确的,但对于细节似乎不太清楚。

使用rootapache用户(可以是apache2您)来获取您的配置文件应该没问题。从apache用户那里提供文件是一种很好的做法。

我的证书的哪些部分对应于证书文件夹中的哪些文件名?

请参阅上文并重新阅读 SSL 证书提供商提供的文档。

我应该为默认 SSL 虚拟主机添加什么?它应该放在 sites-available 或 sites-enabled 文件夹中,还是同时放在这两个文件夹中?

我建议您将任何全局配置放入您自己的“mod”中,如上所述。

相关内容