题 修复BIND9 rndc错误“连接到远程主机已关闭”


我刚刚对Webmin中的DNS区域进行了一些更改,然后单击“Apply Changes”按钮。我收到了错误消息:

rndc:与远程主机的连接已关闭这可能表示远程服务器正在使用旧版本的命令协议,此主机无权连接,或者密钥无效

我该如何排除/修复此问题?我从失败的服务器复制了部分BIND配置,所以我怀疑这是导致它的原因......


4
2018-01-11 19:58




对于其他人来说,这个错误,我可以解决它 touch /var/cache/bind/managed-keys.bind; chown bind:bind /var/cache/bind/managed-keys.bind。得到了解决方案 linuxquestions.org/questions/linux-server-73/... - mivk


答案:


在@plluksie的帮助下,我自己解决了这个问题。这是我做的:

  1. 首先,我跑了 rndc-confgen -a 重新生成我的rndc密钥和conf文件。
  2. 接下来,我验证了内容 /etc/rndc.key 和...一样 /var/named/chroot/etc/rndc.key。他们是 (/etc/rndc.key 是一个符号链接 /var/named/chroot//etc/rndc.key 在我的系统上)
  3. 然后我编辑了 /etc/rndc.key 并复制了新密钥。我把那把钥匙贴进了 /etc/rndc.conf 和 /var/named/chroot/etc/rndc.conf
  4. 我通过重新启动了BIND /etc/init.d/named restart 并测试使用: rndc reload some.zome

这些步骤为我解决了这个问题。


7
2018-01-12 14:55





确保文件/etc/rndc.conf存在且具有

key somekey {
         algorithm hmac-md5;
         secret "somesecret";
     };

并且/etc/named.conf中还有适当的部分:

key "somename" {
     algorithm hmac-md5;
     secret "somesecret";
};

controls {
     inet * port someport allow {"somegroup";} keys {"somename";};
};

别忘了阅读named.conf(5)和rndc.conf(5)

如果它没有帮助,请执行错误消息中描述的内容: 检查named和rndc版本(应该是相同的)


5
2018-01-11 20:07





你改变了钥匙吗?如果在执行此操作之前未停止服务,则服务器守护程序中记录的密钥为旧密钥,rndc始终使用新密钥。然后thes键是不同的,因此被bind拒绝。您必须终止守护程序,然后重新启动它。在配置读取和使用时重新读取密钥。


0
2018-01-11 20:49