Bind9 SOA Serial Number automatisch aktualisieren

Heute werde ich euch zeigen wie ihr von einer Bind9 Domain die SOA (Start of Authority) Serial Number automatisch mit einem kleinem Python Script, bash Script und crontab ändern könnt.

 

1. – Benötigte Programme

Python
Cron
Bind9
nano

2. – Python script

Zu erst erstellen wir ein Verzeichnis für das Script.

mkdir /etc/soa-update

Jetzt werden wir mit nano das Script erstellen.

nano /etc/soa-update/soa-update.py

Im Texteditor schreiben wir jetzt folgendes (Text in eckigen Klammern bitte anpassen) :

import time
sn = time.strftime('%Y%m%d00')
soa = "$TTL 43200\n@ IN SOA [Haupt DNS Server (ns1.dns-server.de.)] [Admin E-Mail (admin.domain.de.)] (\n" + sn + "\n43200\n7200\n2419200\n86400\n);"
print soa

3. – Shell Script

nano /etc/soa-update/soa-update.sh

In nano:

python /etc/soa-update/soa-update.py > /etc/bind/zones/soa-update.txt
/etc/init.d/bind9 reload

In der Shell:

chmod +x /etc/soa-update/soa-update.sh

4. – crontab einrichten

crontab -e

Am ende der Datei folgendes eintragen:

0 0 1 * * /etc/soa-update/soa-update.sh

Das würde das Script am ersten jedes Monats laufen lassen. „0 0 * * *“ wäre jeden Tag.

5. – In Bind9 Zone intigrieren

Öffnet mit nano eure Zone Datei.

nano /etc/bind/zones/example.com.db

Entfernt von ganz oben den SOA Eintrag.

Jetzt müssen wir nur noch folgendes an stelle des SOA Eintrags einfügen

$INCLUDE soa-update.txt

 

So das war’s auch schon. 🙂

Das könnte Sie auch interessieren …

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert