为什么将 ACME 客户端配置为信任私有 CA 根证书比将证书添加到 CA 存储更好?

为什么将 ACME 客户端配置为信任私有 CA 根证书比将证书添加到 CA 存储更好?

我正在为我的家庭内部网络创建一个自托管 CA,作为一个业余项目,也是为了学习一些新东西。我正在使用 Smallstep 的开源step-castepCLI。

创建 CA 后,下一步当然是将其安装到root_ca.crt将与之交互的设备上。 Smallstep文档提供了两种方法(粗体部分是我的)

如果你在生产环境中使用证书颁发机构进行 TLS 认证,明确配置您的 ACME 客户端以仅信任您的根证书是一个更好的选择。您将通过以下示例了解此方法的工作原理。您可以在此处找到其他几个示例。

如果您在预生产中模拟 Let's Encrypt,则安装根证书是更真实的生产模拟。安装根证书后,无需进行其他客户端配置。

我觉得这两段话有点矛盾。第一个选项“更好”,但第二个选项“更现实”。

为什么将 ACME 客户端配置为仅信任我的根证书是更好的选择?

使用示例certbotsudo REQUESTS_CA_BUNDLE=<path to root certificate> certbot certonly -d <domain> --server <URL of my CA>

答案1

该页面还指出

大多数 ACME 客户端默认连接到 Let's Encrypt 的 CA。

配置 ACME 客户端以信任您的根证书,以及您的根证书仅有的提供了一些额外的保证。如果您的根 CA 私钥是安全的,当服务器受到威胁并使用来自其他 CA 的证书时,请求将失败。

相关内容