Docs / DNS & Domains / How to Set Up PowerDNS Authoritative Server

How to Set Up PowerDNS Authoritative Server

By Admin · Mar 1, 2026 · Updated Apr 23, 2026 · 29 views · 1 min read

Setting Up PowerDNS Authoritative Server

PowerDNS is a high-performance, open-source DNS server that supports multiple backends including MySQL, PostgreSQL, and BIND zone files. It is ideal for hosting authoritative DNS on your Breeze.

Installation

Install PowerDNS and the MySQL backend on your server:

sudo apt update
sudo apt install pdns-server pdns-backend-mysql

Database Setup

Create the PowerDNS database and import the schema:

mysql -u root -p -e "CREATE DATABASE powerdns;"
mysql -u root -p -e "GRANT ALL ON powerdns.* TO 'pdns'@'localhost' IDENTIFIED BY 'your_secure_password';"
mysql -u root -p powerdns < /usr/share/doc/pdns-backend-mysql/schema.mysql.sql

Configure the Backend

Edit /etc/powerdns/pdns.conf to use the MySQL backend:

launch=gmysql
gmysql-host=127.0.0.1
gmysql-dbname=powerdns
gmysql-user=pdns
gmysql-password=your_secure_password

Adding a Zone

Use the pdnsutil command to create and populate zones:

pdnsutil create-zone example.com
pdnsutil add-record example.com @ A 3600 203.0.113.10
pdnsutil add-record example.com www A 3600 203.0.113.10
pdnsutil add-record example.com @ MX 3600 "10 mail.example.com"

Start and Verify

sudo systemctl enable --now pdns
dig @127.0.0.1 example.com A

PowerDNS provides a robust REST API for programmatic zone management, making it an excellent choice for automated DNS infrastructure on your Breeze.

Was this article helpful?