DANE

来自ArchWiki

DANE(基于DNS的命名实体认证)是一种协议,允许将 X.509 证书(常用于传输层安全协议(TLS))绑定到使用域名系统安全扩展(DNSSEC)的 DNS 名称。

警告:这不是一篇简单的文章。请确保您知道自己在做什么。在继续之前,请阅读《常见错误》

资源记录

TLSA 资源记录是一种 DNS 记录类型。它由受其保护的服务的端口号和协议组成。端口 25 上 tcp 的示例记录可能如下所示:_25._tcp.example.com IN TLSA 3 0 1 $DATA。TLSA 参数 3 0 1 解释了其后的数据。第一个数字是证书用途字段,第二个是选择器字段,第三个是匹配类型字段。

证书用途字段
名称 描述
0 PKIX 信任锚 哈希包含来自 x509 树的公共 CA,您的证书必须由此 CA 签名
1 PKIX 末端实体 哈希包含您的证书,该证书也必须通过 x509 验证
2 DANE 信任锚 哈希包含一个私有 CA(x509 树未知),您的证书必须由此 CA 签名
3 DANE 末端实体 哈希包含您的证书,该证书不与任何其他验证匹配
注意:证书用途 0 和 1 不允许用于邮件服务器(端口 25)。有关详细信息,请参阅 RFC 7672 3.1.3
选择器字段
名称 描述
0 cert DATA 基于完整证书
1 SPKI DATA 仅基于公钥
匹配类型字段
名称 描述
0 完全 DATA 是完整证书或 SPKI
1 sha256 DATA 是证书或 SPKI 的 sha256 哈希值
2 sha512 DATA 是证书或 SPKI 的 sha512 哈希值

RR 也可以使用来自 ldnsldns-dane 轻松生成。

支持DANE的软件

参见