Skip to main content

PowerDNS

Från en PowerDNS installerad på RHEL.

Installation

Installera med sudo dnf install -y pdns. Installera backend med sudo dnf install -y pdns-backend-sqlite.

Kontrollera version:

pdns_server --version
Nov 02 07:26:46 Loading '/usr/lib64/pdns/libbindbackend.so'
PowerDNS Authoritative Server 5.0.7 (C) PowerDNS.COM BV

Kontrollera att tjänst finns:

systemctl status pdns
○ pdns.service - PowerDNS Authoritative Server
     Loaded: loaded (/usr/lib/systemd/system/pdns.service; disabled; preset: disabled)
     Active: inactive (dead)
       Docs: man:pdns_server(1)
             man:pdns_control(1)
             https://doc.powerdns.com

Konfiguration läggs i /etc/pdns/pdns.conf.

Installera databas med sudo dnf install -y sqlite.

Skapa databaskatalog: sudo mkdir -p /var/lib/powerdns

Skapa databasen:

sudo sqlite3 /var/lib/powerdns/pdns.sqlite3 \
< /usr/share/doc/pdns/schema.sqlite3.sql

Verifiering av databas:

sudo ls -lh /var/lib/powerdns/
total 76K
-rw-r-----. 1 root root 76K Nov  2 07:35 pdns.sqlite3

sudo sqlite3 /var/lib/powerdns/pdns.sqlite3 ".tables"
comments        domainmetadata  records         tsigkeys      
cryptokeys      domains         supermasters  

Sätt behörigheter:

sudo chown -R pdns:pdns /var/lib/powerdns
sudo chmod 750 /var/lib/powerdns
sudo chmod 640 /var/lib/powerdns/pdns.sqlite3

Öppna och konfigurera backend:

sudo vi /etc/pdns/pdns.conf
! Lägg till 
# Backend
launch=gsqlite3
gsqlite3-database=/var/lib/powerdns/pdns.sqlite3

# Listen address
local-address=1.3.3.7
local-port=53

# Allow DNS queries
allow-axfr-ips=1.3.3.8/#2

Om det finns någon annan launch i pdns.conf så kommer tjänsten inte starta. Sök efter launch och ta bort.

Installation - API

sudo vi /etc/pdns/pdns.conf
# Enable API
api=yes

# API key
api-key=BYT_TILL_EN_LANG_SLUMPMASSIG_NYCKEL

# Enable webserver
webserver=yes

# Listen address
webserver-address=1.3.3.7

# API port
webserver-port=8081

# Allow API access from trusted network
webserver-allow-from=127.0.0.1,192.168.0.0/16

 

Uppsättning

Skapa en zon med: sudo pdnsutil create-zone example.com. Lista sen zonen med sudo pdnsutil list-all-zones.

Skapa records med: sudo pdnsutil add-record example.com dns01 A 192.168.100.10