而不是把我所有的区域放在一个named.conf.local文件中,我想把它们放在一个组中,作为单独的文件来pipe理。 所以,我已经尝试把以下内容放入named.conf.local中:
include "/home/zones/group1.conf"; include "/home/zones/group2.conf"; include "/home/zones/group3.conf";
但是,当我重新启动命名,我看到日志中的“权限被拒绝”错误。 Ubuntu使用apparmor进行绑定,所以我还在/etc/apparmor.d/usr.sbin.named中添加了以下内容:
/home/zones/group1.conf r, /home/zones/group1.conf r, /home/zones/group1.conf r,
现在,当我重新开始命名,一切似乎都很好。 区域加载(我认为)。 但是,一两天之后,我发现我的辅助名称服务器抱怨主服务器告诉它这些域名不具有权威性。 然后我必须把所有的域重新放回到named.conf.local文件中。
我怎样才能得到bind9以这种方式使用包含文件? 我对apparmor了解不多,所以这里可能会也可能不是问题,但是我已经在Debian上用这种方式使用了include文件。
在更改AppArmorconfiguration之后,您是否运行service apparmor reload ? 如果是这样,并且日志中没有权限错误,那么我会怀疑实际的绑定configuration。 你是否将这些文件包含在与直接定义它们相同的地方? 当您直接查询时,绑定是否对这些域做出响应?