小编Jel*_*ema的帖子

为什么不通过 DNS 记录而不是 letencrypt 来验证自签名证书

我只是想知道。我们使用了很多 SSL 证书。如今,我们几乎只使用letsencrypt(谢谢!)。这些证书的底线是,证书上域名的所有权证明来自操纵这些域下的 DNS 记录或网站的权力。DNS 证明来自向 DNS 添加一些密钥(由letsencrypt 提供)作为 TXT 记录。

那么,如果足以证明能够更改域的 DNS 记录,为什么不使用带有 DNS 指纹的自签名证书呢?

我会说这与基于 DNS 的 letencrypt(和其他 CA)过程完全相同的信任度:

  1. 创建一个自签名 CA(只需按照各种操作方法的步骤操作即可)
  2. 为某些域创建证书
  3. 使用步骤 1 中的 CA 对步骤 2 中的证书进行签名。您现在拥有一个基本证书,由不受信任的 CA 签名
  4. 将 TXT(或专用)记录添加到每个域的 DNS,声明:我们使用此 CA 签署了该域的证书。像:'CA=-CA-的指尖'
  5. 浏览器下载证书并通过将 CA/CA 证书的指纹与给定域的 DNS 中的数据进行比较来验证它。

这将使创建不受第三方干扰的可信自签名证书成为可能,与任何基本 SSL 证书的信任级别相同。只要您可以访问 DNS,您的证书就是有效的。甚至可以添加一些 DNSSEC 之类的加密,从 CA 和 SOA 记录中生成散列,以确保信任在 DNS 记录中的更改时消失。

以前有没有考虑过这个问题?

杰尔默

domain-name-system ssl certificate-authority self-signed-certificate lets-encrypt

17
推荐指数
2
解决办法
2780
查看次数