我使用的是最新版本的 Centos。我已经安装并配置了 Unbound 来缓存 DNS。从客户端计算机上使用dig
和nslookup
对其进行测试。
但是,如果我设置logfile
,/etc/unbound/unbound.conf
我看不到任何日志。我已经禁用了 Selinux 和防火墙。
当我调试这个时,有一条消息/var/log/messages
:
error Could not open logfile /var/log/unbound: Permission denied
unbound的主配置文件也没有任何语法错误
现在我尝试解决这个问题但我不能
提前致谢
答案1
事实上,这可能没有帮助。但我在另一个网站上找到了解决方案。 未绑定的 DNS 缓存服务器不记录。
如果链接不起作用,请使用简短的命令。文件的权限没有问题,但问题出在 apparmor 上。
因此,要解决该问题,我们必须编辑设置:
vim /etc/apparmor.d/local/usr.sbin.unbound
添加此行(在这里您应该写入“unbound.log”文件的路径。):
# Site-specific additions and overrides for usr.sbin.unbound.
# For more details, please see /etc/apparmor.d/local/README.
/var/log/unbound/unbound.log rw,
重新加载 apparmor 配置并重新启动未绑定的服务:
apparmor_parser -r /etc/apparmor.d/usr.sbin.unbound
service unbound restart
它对我有帮助,希望对你也有帮助。
答案2
你的价值是什么logfile
?我是否正确地假设它涉及/var/log/unbound
目录?
如果是这样,请确保该目录存在,并且未绑定的运行时用户可以在其中写入。
mkdir -p /var/log/unbound
chown unbound:unbound /var/log/unbound
否则,您可能需要在启动 unbound 之前创建 unbound 日志文件并设置其权限
touch /var/log/unbound
chown unbound:unbound /var/log/unbound