使用PDNS为您的项目提供稳定可靠的域名系统(DNS)服务器。几个月前,我们收到了为一个新项目提供稳定可靠的域名系统(DNS)服务器的请求。该项目使用容器进行自动化部署,每一个新的环境都会生成一个唯一的随机URL。在对可能的选项进行大量研究后,我们决定尝试使用PowerDNS(PDNS)。起初,我们发现所有主要的Linux发行版都支持PowerDNS,它在GPL下获得许可,并且存储库保持更新。我们还在官方网站上找到了简洁、组织良好的文档,以及来自网络上真正喜欢和使用该产品的人们的大量操作方法。在观看了一些内容并学习了一些基本命令之后,PDNS安装、启动并运行,我们的旅程开始了。数据库驱动程序PowerDNS在SQL数据库中保存记录。这对我们来说是新的,不必使用文本文件来保存记录是一个很好的变化。我们选择MariaDB作为我们的首选强大工具,并且由于有丰富的信息可以正确设置名称服务器,我们能够完美地设置和强化我们的数据库。简单配置我们感兴趣的第二件事是PDNS的所有功能都在配置文件中。pdns.conf有许多选项,您可以通过添加或删除#符号来启用或禁用这些选项。这太棒了,因为它让我们有机会将这项新服务集成到我们现有的基础设施中,只包含我们想要的功能,不多也不少。一个简单的例子:谁可以访问你的网络服务器?webserver-allow-from=172.10.0.1,172.10.1.2我可以转发基于域的请求吗?当然!forward-zones=mylocal.io=127.0.0.1:5300forward-zones+=example.com=172.10.0.5:53forward-zones+=lucky.tech=172.10.1.5:53包含API我们可以使用配置文件激活API服务,解决满足我们开发组的第一个需求,让我们见识到了PDNS的强大。此功能使我们能够通过发送请求简单而干净地创建、修改或删除DNS服务器中的记录。API具有一些基本的安全参数,因此只需几个步骤,您就可以根据IP地址和预共享密钥身份验证的组合来控制谁有权与名称服务器进行交互。配置文件如下所示:api=yesapi-key=lkjdsfpoiernfwebserver-allow-from=172.10.7.13,172.10.7.5日志记录PDNS的日志记录工作非常出色。您可以使用日志文件和一个简单的内置Web服务器来监控您的服务器并查看您的计算机的运行情况。您可以使用浏览器查看有关服务器的不同类型的统计信息,例如CPU使用率和收到的DNS查询。这是非常有价值的。例如,我们能够检测到一些“不健康”的PC向我们的服务器发送DNS请求以获取与恶意流量相关的站点。深入研究日志后,我们可以看到流量来自何处,并采取措施清理这些PC。附加功能这只是您可以使用PowerDNS执行的所有操作的一个示例。它还有很多功能。它是一个成熟的名称服务器,具有很多功能和特性,因此值得一试。目前我们还没有部署DNSSEC,不过好像可以一键快速上线。此外,PowerDNS有一种很好的方法将递归服务与名称服务器分开。据我所知,它还支持DNSRPZ(响应策略区),还提供了一个非常漂亮且设计良好的前端,让您可以使用Web浏览器管理服务器,如下所示。PowerDNS前端无论您是否相信,只需花几个小时学习PDNS,您就可以大大提高您对DNS和IT操作的了解。
