首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bind9: rndc冻结:密钥重新定义?

bind9: rndc冻结:密钥重新定义?
EN

Server Fault用户
提问于 2017-09-17 13:43:09
回答 1查看 870关注 0票数 0

我的系统上有这个rnd.key文件:

代码语言:javascript
复制
key "rndc-key1" {
    algorithm hmac-md5;
    secret "xxxxxxxxxxxxxxx==";
};
key "rndc-key2" {
        algorithm hmac-md5;
        secret "yyyyyyyyyyy==";
};

然后我将它们用于不同的区域:

代码语言:javascript
复制
zone "somedomain1.com" {
    type master;
    file "/etc/bind/master/db.somedomain1.com";
    allow-update {
    key rndc-key1;
    };
};


zone "somedomain2.com" {
    type master;
    file "/etc/bind/master/db.somedomain2.com";
    allow-update {
    key rndc-key2;
    };
};

当我试图运行"rndc冻结“时,会得到以下错误:

代码语言:javascript
复制
rndc: error: /etc/bind/rndc.key:5: 'key' redefined near 'key'
rndc: could not load rndc configuration

什么意思?这里有什么问题?不可能对不同的区域使用不同的键吗?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2017-09-17 15:03:01

您似乎误解了rndc密钥的用途。

这种误解很可能是因为阅读了许多草率编写的教程之一,这些教程错误地使用了一个已经存在的密钥( rndc键),在完全不同的上下文中为一个特定目的而创建,甚至没有对这种滥用进行评论。

rndc密钥应该有一个用途,即由rndc实用程序和named使用,以便rndc能够向named发送控制命令(例如rndc reloadrndc freeze或其他任何东西)。

此键不应该用于动态更新(如allow-update中)。

rndc.key文件中不应该有多个键。

但是,如果愿意的话,您可以自由地为TSIG键添加任意数量的key语句到named配置(named.conf)中。这些应该用于动态更新、区域传输等目的。

我建议你把这些钥匙命名为反映它们的用法的东西。

如果您有一个现代版本的BIND,只需使用tsig-keygen foo创建一个新键即可。它既更方便,又有合理的默认值(hmac-sha256而不是您创建的hmac-md5键)。

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/874103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档