发布信息

深入解析PowerDNS配置文件与搭建指南:从基础到精通

作者:软荐小编      2025-02-10 14:01:55     169

我遇到了这些话,好像我是一个好人。大家好,我是小米。这本书继续上述。我介绍了BIND 9的基本结构和模块说明。通常,您可以对Bind 9有初步的了解,并且您可以自己构建一组本地DN。使用它;尽管BIND 9与TAI Mount一样稳定,但功能强大且复杂,配置文件设计也不对用户友好。最初可以预测,将来,Bind 9肯定会使用新语言和配置方法进行重构或重新开发。 ,将其命名为最新的绑定10。当然,这次肯定会很长。可能不可能在5年内离开,因此您仍然可以了解有关Bind 9的更多信息。

今天,我将为PowerDNS简要介绍和构建。最重要的是了解内部配置文件的含义。构造非常简单。要掌握它,您仍然需要了解配置文件的每种情况的使用。

PowerDNS简介

PowerDNS成立于1990年代后期,是开源DNS软件,服务和支持的主要供应商。 2015年成为Open-Xchange的一部分,可以用作权威和递归DNS。

三个主要组成部分:

权威服务器 - PowerDNS权威服务器

递归服务器 - 托管递归

DNS分销商DNSDIST(DOCS)

权威服务器有时称为托管服务器,递归服务器称为缓存服务器,并且DNS发行商也可以称为DNS负载平衡器。

特征

权威服务器和递归服务器和DNS分销商有几个共同点:

权威服务器:

支持普通的绑定区域解析文件,还支持数据库解析记录,包括但不限于MySQL,PostgreSQL,SQLITE3,Microsoft SQL Server,LDAP,LIDAP缓存服务器软件,纯文本文件和许多其他SQL数据库。还支持数据库的主奴隶复制。

提示:BIND 9还支持数据库解析和记录数据,并且需要与DLZ+MySQL或LDAP或DYNDB+LDAP匹配

DNSSEC和TSIG支持,区域2SQL迁移工具,本地和远程访问API以及许多其他功能。您可以直接查看官方网站:

递归服务器:

先进的反欺诈功能,对普通绑定区域文件的支持,本地和远程访问API以及其他功能。您可以直接查看官方网站:

负载平衡器:

动态路由,流量过滤,NxDomain域名重定向和其他功能。您可以直接查看官方网站:

PowerDNS安装环境简介

IP

系统

成分

功能

192.168.10.120

Ubuntu 22.04.1 Lts

PowerDNS权威服务器 + MySQL

权威解析服务器,RR放置在MySQL数据库中

192.168.10.110

Ubuntu 22.04.1 Lts

PowerDNS递归

递归解析服务器缓存服务器软件,转移外部网络递归解析到外部公共DNS

192.168.10.10

Ubuntu 22.04.1 Lts

DNSDist

负载平衡器和分流器

缓存服务进程_缓存器软件服务有哪些_缓存服务器软件

上图是一个简单的PowerDNS服务构建图,其中PDNS-ADMIN是权威PowerDNS服务器的Web界面管理程序,它主要是为了促进Web接口中的RR记录的添加,删除,修改和检查;其中在192.168.10.120在服务器所在的主机上也将PDNS-ADMIN程序部署在权威部署中,官方文档:

安装和部署

PowerDNS权威服务器安装:

阅读源代码汇编的文档:

此安装基于稳定版本,而不是最新的开发版本。该系统是使用官方存储库安装的Ubuntu 22.04.1 LTS。请注意使用它之间的区别:2022年12月9日PowerDNS权威服务器最新稳定版本4.7.3

# 创建官方提供的repo源文件,从官方仓库安装,路径:/etc/apt/sources.list.d/pdns.list
cat >/etc/apt/sources.list.d/pdns.list</etc/apt/preferences.d/pdns<

PowerDNS递归安装:

2022年11月25日PowerDNS递归最新稳定版本4.7.4

阅读源代码汇编的文档:

# 创建官方提供的repo源文件,从官方仓库安装,路径:/etc/apt/sources.list.d/pdns.list
cat >/etc/apt/sources.list.d/pdns.list</etc/apt/preferences.d/pdns<

DNSDIST安装:

2022年11月25日DNSDIST最新稳定版本1.7.3

阅读源代码汇编的文档:

# 创建官方提供的repo源文件,从官方仓库安装,路径:/etc/apt/sources.list.d/pdns.list
cat >/etc/apt/sources.list.d/pdns.list</etc/apt/preferences.d/pdns<

官方存储库:

配置说明

DNSDist

查看官方文件:

配置文件默认路径:

# 执行命令查看状态和启停
systemctl status dnsdist.service
systemctl stop dnsdist.service
systemctl start dnsdist.service
# 配置文件默认在 /etc/dnsdist/dnsdist.conf  示例配置文件:/usr/share/doc/dnsdist/examples/
cat /etc/dnsdist/dnsdist.conf
#  -- 设置dnsdist监听套接字
addLocal("127.0.0.1:53")
#  -- 允许访问的子网
setACL({'192.168.0.0/16', '2001:DB8:1::/56'})
#  -- 监听控制台连接 dnsdist 可以通过加密的 tcp 连接公开命令行控制台,以控制它、调试 DNS 问题和检索统计信息
controlSocket("127.0.0.1:5900")
#  -- 设置监听控制台连接密钥
setKey("XXXXX")
#  -- 允许哪些地址可以连接访问控制台
setConsoleACL('192.168.10.0/24')
#  -- 开启dnsdist的Web服务
webserver("127.0.0.1:8083")
#  -- 允许192.168.10.0/24子网的Web访问,不允许192.168.10.1的地址Web访问
setWebserverConfig({password="supersecretpassword", apiKey="supersecretAPIkey", acl="192.168.10.0/24, !192.168.10.1"})
#  -- DNS加密
addDNSCryptBind("127.0.0.1:8443", "2.provider.name", "DNSCryptResolver.cert", "DNSCryptResolver.key")
# 定义下游服务器 负载均衡主要配置
newServer("192.0.2.1")
newServer({address="192.0.2.1:5300", pool="abuse"})

如下所示,它是常规负载平衡配置:

# 配置 在114.114.114.114和223.5.5.5之间负载 默认内置负载策略 leastOutstanding
dnsdist -l 130.161.252.29 -a 130.161.0.0/16 114.114.114.114 223.5.5.5 2620:0:ccc::2 2620:0:ccd::2
setLocal("130.161.252.29:53")
setACL("130.161.0.0/16")
newServer("114.114.114.114")
newServer("223.5.5.5")
newServer("2620:0:ccc::2")
newServer("2620:0:0ccd::2")

相关内容 查看全部