named.conf和rndc.key应该只能由root访问?

在这里引用BIND的CentOS / RedHat指南,它说以下…

由于/etc/named.conf是世界可读的,所以build议将key语句放在一个单独的文件中,只能由root读取,然后使用include语句来引用它。

还有以下…

确保只有root用户可以读取或写入/etc/rndc.conf文件。

现在,当我用下面的命令做这个…

chown root:root /etc/rndc.key chmod 600 /etc/rndc.key chown root:root /etc/rndc.conf chmod 600 /etc/rndc.conf 

我无法启动BIND,因为它会在/ var / log / messages文件中抱怨以下内容…

 loading configuration from '/etc/named.conf' /etc/named.conf:1: open: /etc/rndc.key: permission denied 

为了纠正,我现在正在做以下和BIND能够开始…

 chown root:named /etc/rndc.key chmod 640 /etc/rndc.key chown root:named /etc/rndc.conf chmod 640 /etc/rndc.conf Now is that an error in the manual? 

这里的重点是没有非特权用户能够读取文件。
如果你正在运行BIND作为指定的用户,那么他将需要访问它。
你应该也可以设置:

 chown named:root /etc/rndc.key chmod 600 /etc/rndc.key 

但是,您的许可不会更糟(另请参阅: https : //access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s2-bind-rndc.html )。

无关的提示:通常我也会build议在一个chroot中运行BIND。
有支持这个的CentOS / RedHat包( bind-chroot )。