使用PowerDNS自建权威DNS服务器

设计目标

  • PowerDNS权威DNS
  • PostgreSQL后端
  • 双节点HA
  • 管理面板

PostgreSQL服务器

安装过程不再赘述。

安装PowerDNS

以Debian 10为例:

其它系统参见PowerDNS repositories

初始化数据库

创建数据库和用户:

为了避免权限问题,我们用刚创建的新用户来初始化表结构:

配置PowerDNS

编辑配置文件,填入Postgres连接参数,然后重启PowerDNS:

配置管理面板

随便找了个在维护而且看起来比较好看的PowerDNS-Admin。这个项目的安装比较脏所以我自己写了一个Docker镜像

管理面板要求PowerDNS打开API功能。我们先配置PowerDNS:在/etc/powerdns/pdns.d/api.conf写入

然后重启PowerDNS服务:

接下来我们来配置PowerDNS-Admin。

生成一个salt(需要安装bcrypt):

创建数据库表和用户:

创建配置文件/etc/default/powerdns-admin

创建Systemd服务/etc/systemd/system/powerdns-admin.service

启动服务:

在PowerDNS-Admin面板中根据实际情况填写PowerDNS API信息。如果不在同一台机器上,建议HTTPS反代一下PowerDNS API(必须放在根目录下)。

DNSSEC

  1. 在面板启用DNSSEC
  2. 在域名注册商那里添加三条DS记录
  3. 在权威服务器上添加到自己的NS记录

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据