我想在 *.example.com 上为 https 启用 DANE/TLSA。
要在 example.com 上激活它,我可以这样做(我使用 TYPE52 而不是 TLSA,因为我的 DNS 提供商不支持 DANE):
_443._tcp.example. IN TYPE52 # 35 01010102d50459538b4c549014266824948c9294da322581e51a0f0e79ce8aea0def89
中间不允许使用通配符,所以我不能这样做(对吗?):
_443._tcp.*.example. IN TYPE52 # 35 01010102d50459538b4c549014266824948c9294da322581e51a0f0e79ce8aea0def89
但是在 *.example.com 上激活它,我发现的唯一方法是(第一行已经在同一 IP 上重定向 *.example.com):
* IN CNAME example.com.
example.com. IN TYPE52 # 35 01010102d50459538b4c549014266824948c9294da322581e51a0f0e79ce8aea0def89
它可以工作,但它错误地为所有协议/端口(ssh,imaps,...)启用它
我错过了什么 ?
我应该明确添加所有子域而不是使用通配符吗?
我不相信你错过了什么。至少对于提供静态数据的名称服务器而言,这可能是您唯一的选择,因为您需要 DNSSEC。
一般来说,如果可行,您可能应该添加实际使用的名称,而不是使用通配符。(从技术角度来看,这显然更好,但通常是业务需求促使人们使用通配符。)