如何为向 Route 53 或其他注册商注册的子域配置 DNSSEC?
上次更新时间:2021 年 4 月 20 日
如何为向 Amazon Route 53 或其他注册商注册的域名配置域名系统安全扩展 (DNSSEC)?
简短描述
要为您的域启用 DNSSEC 签名,您必须:
1. 启用 DNSSEC 签名并创建密钥签名密钥 (KSK)
2. 通过将委派签名者 (DS) 记录注册到 Route 53 的父托管区域来建立信任链
重要提示:如果您的域是顶级域 (TLD),请参阅如何使用 Route 53 在我的域上启用 DNSSEC 并注册 DS 记录?
解决方法
注意:如果您在运行 AWS 命令行界面 (AWS CLI) 命令时遇到错误,请确保您使用的是最新版的 AWS CLI。
1. 按照以下步骤启用 DNSSEC 签名,然后创建 KSK。
2. 确认您的父托管区域处于正在签名状态。
3. 按照步骤建立信任链。
注意:在 AWS CLI 中,您可以使用 get-dnssec 命令获取父托管区域的 DS 记录。get-dnssec 命令的示例输出:
$ aws route53 get-dnssec --hosted-zone-id Zyyyyyyyyyyyyyyyyyyyy
{
"Status": {
"ServeSignature": "SIGNING"
},
"KeySigningKeys": [
{
"Name": "forKnowledgeCenter",
"KmsArn": "arn:aws:kms:us-east-1:nnnnnnnnnnnn:key/4a7a9720-91b5-49d5-8069-79634593a1b9",
"Flag": 257,
"SigningAlgorithmMnemonic": "ECDSAP256SHA256",
"SigningAlgorithmType": 13,
"DigestAlgorithmMnemonic": "SHA-256",
"DigestAlgorithmType": 2,
"KeyTag": 1101,
"DigestValue": "57BB41C3E5F8606F64D6926D4EA80A2D5139FCD029828CDE00E94D78882819DE",
"PublicKey": "ELfupc8RXEcoLl8AZiDX6LOInJMc1h7MDnuIEAWzJIG6vOB0QAOfRzFHT15WwGzXPZKqrTkSSTm+CSQlIfCWbg==",
"DSRecord": "1101 13 2 57BB41C3E5F8606F64D6926D4EA80A2D5139FCD029828CDE00E94D78882819DE",
"DNSKEYRecord": "257 3 13 ELfupc8RXEcoLl8AZiDX6LOInJMc1h7MDnuIEAWzJIG6vOB0QAOfRzFHT15WwGzXPZKqrTkSSTm+CSQlIfCWbg==",
"Status": "ACTIVE",
"CreatedDate": "2020-12-21T13:58:49.719000+00:00",
"LastModifiedDate": "2020-12-21T13:58:49.719000+00:00"
}
]
}
4. 完成以下操作,将 DS 记录注册到您的父托管区域:
打开 Route 53 控制台。在导航窗格中,选择 Hosted zones (托管区域)。
选择父托管区域的名称。
选择 Create Record (创建记录)。
对于 Routing policy (路由策略),选择 Simple routing (简单路由)。
对于 Record type (记录类型),选择 DS - Delegation Signer (DS – 委派签名者)。
对于 Record name (记录名称),输入要为流量路由的域或子域的名称。默认值为托管区域的名称。
注意:如果要创建与托管区域同名的记录,请将 “记录名称” 字段留空。
对于
value (值),使用格式
[密钥标签] [算法] [摘要类型] [摘要] 指定值。
对于 TTL,指定 3600 秒。