PDNS authoritative dns server's

From Hobbynet Admin Wiki
(Redirected from PDNS)
Jump to navigation Jump to search

Doel

Dit zijn de autoritive name servers van hobbynet

opzet

pdns1 is de master server. Hier draait de database op met alle records, in een mysql database.

De overige dns servers draaien een slave van deze server en worden zo automatisch voorzien van de meest recente records.

let op alle wijzigingen moeten dus op pdns1 worden uitgevoerd, anders help je de replicatie om zeep

zones

zone bewerken

cli

eenvoudig via :

pdnsutil edit-zone (zonenaam zonder extra .)

zone migreren

in /root staat migratie script . Dit script haalt de zone file uit /root/master.

Deze zorgt dat de zone wordt ingelezen in de database en nameserver records worden goed gezet.

/root/migrate.sh

zone bewerken

cli

activeren van dnssec gaat relatief eenvoudig draai

/disk/scripting/powerdns/dnssec/activeerdnssec.sh domeinnaam.tld

en de benodigde handelingen worden verricht, ksk en zsk worden aangemaakt en geactiveerd en nsec3 wordt geactiveerd.

Hierna kan je paar uur wachten of je draait het dnsseconderhoud script om te zorgen dat de leverancier wordt bij gewerkt.

web

Je kan de webinterface benaderen via:

https://poweradmin.hobby.nl/ 

Wacht woord wijzigen kan via about me

Dit is nog tijdelijke web interface

dnssec

Om te zorgen dat de KSK key's automatisch worden uitgerold naar de verschillende leveranciers is er een database genaamd Domeinbeheer

activeren

Om DNSsec te activeren, dit gaat alleen vanaf de commandline met het commando

activeerdnssec domein.tld

En als je wilt dat dit direct geactiveerd wordt bij de TLD, dan moet je dit commando draaien:

php /disk/scripting/powerdns/dnssec/dnsseconderhoud.php

Je kan ook wachten tot 4:42 of 16:42 dan draait het onderhoud script uit crontab

database

tabellen

dnssec

Deze tabel houd bij welke KSK actief is, en wanneer hij verloopt

Naam veld Omschrijving
id Primary key
Domein naam Naam van de zone/domein (met extra punt)
actieve-ksk keytag van de actieve ksk
standby-ksk keytag van de standby ksk
verlopen-ksk keytag van de verlopen ksk
verval-actieve Datum wanneer key in gebruik is genomen
Verval-verlopen Datum wanneer key inactief is geworden

Leveranciers

Om te kunnen bepalen bij welke leverancier een domein hoort wordt aan de hand van de tld bepaald wat de leverancier is.

Naam veld Omschrijving
id Primary key
tld de extentie van domein
leveransier de leverancier van deze tld

subdomeinen

Deze tabel bevat alle domeinen die subdomein zijn domein dat op deze server draait:

Naam veld Omschrijving
id Primary key
subdomein het subdomein

internezone

Dit is lijst met interne zones subdomein hier niet in vermelden

Naam veld Omschrijving
id Primary key
internezone de interne zone

api

epp sidn

Helaas is de EPP interface best complex en niet al te makkelijk, maar wordt deels eigen scripting gebruikt en deels een php-client van metaregistry opgehaald en up2date gehouden via composer

Transip rest api

We maken gebruiken van de rest interface van Transip

We hebben een PHP class TransIP_AccessToken voor het aanmaken van een autorisatie token.

Dit token is 30 min geldig

ripe rest api

Voor ripe gebruiken we de standaard rest interface van ripe.

We halen het json object op bij RIPE. Als er 1 ds-record niet klopt dan wordt het hele record overschreven, met het meest recente record.

Update van record is traag

godaddy api

Godaddy heeft geen api, voor dit 1e domein hcc.contact heb ik dnssec uit staan. In de toekomst maken we hier nog wat voor, of we wachten tot transip ook aan .contact doet

scripting

Alle scripting staat op /disk/scripting/powerdns

Op deze manier wordt ook netjes geback-upt

dnsseconderhoud.php

Dit script verricht onderhoud in paar fases:

  1. Fase 1 kijken of er verlopen actieve ksk's zijn en zo ja wissel KSK met standby KSK en maak nieuwe KSK (elke 3 maanden wisselen)
  2. Fase 2 controleer of records kloppen bij leveranciers en zo nodig update soms altijd update zie api omschrijving
  3. Fase 3 verwijder alle verlopen KSK die ouder zijn dan 1 week
  4. Fase 4 verwijder niet gekoppelde KSK's uit powerdns

functions.php

Deze file bevat alle gebruikte functies

credentials*

Spreekt voor zich

transip/zetnameservergoed.php

Dit script zet nameserver van domein goed bij transip

transip/zetnameservergoed.php domein.tld

sidn/zetnameservergoed.php

Dit script zet nameserver van domein goed bij sidn

sidn/zetnameservergoed.php domein.nl

repo

We maken gebruik van repo van powerdns zelf

deb [arch=amd64] http://repo.powerdns.com/ubuntu focal-auth-master main

Zo installeer je gpg key van het repo

curl https://repo.powerdns.com/CBC8B383-pub.asc | sudo apt-key add -