Zum Inhalt springen

BIND/rndc: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 10: Zeile 10:
== Beschreibung ==
== Beschreibung ==
; Werkzeug zur Verwaltung von [[BIND]]
; Werkzeug zur Verwaltung von [[BIND]]
* authentifizierte [[TCP]]-Verbindung
* [[Authentifizierung]]
*** basiert auf einem gemeinsam genutzten TSIG-Schlüssel (HMAC)
* [[TCP]]-Verbindung
* [[TCP]]-Port 953
* [[TCP]]-Port 953
; Authentifizierung
* basiert auf einem gemeinsam genutzten TSIG-Schlüssel (HMAC)
; Schlüsseldefinitionen
Müssen übereinstimmen
* ''[[named]]''-Konfiguration
* ''[[rndc]]''-Konfiguration


== Installation ==
== Installation ==

Version vom 17. Juli 2026, 15:20 Uhr

BIND/rndc - Remote Name Daemon Control


Beschreibung

Werkzeug zur Verwaltung von BIND

Installation

Aufruf

rndc [Optionen] command options

Commands

Befehl Parameter Beschreibung
status zeigt Status des Servers, Versionsinformationen und die Zahl der geladenen Zonen.
reload lädt Konfiguration und Zonendateien neu, ohne den Prozess neu zu starten.
reconfig liest nur die Konfiguration neu und erkennt neue oder entfernte Zonen, ohne alle Zonendateien neu zu laden.
reload <zonenname> lädt nur die angegebene Zone neu.
refresh <zonenname> startet einen sofortigen SOA-Refresh für eine Slave-Zone.
freeze <zonenname> friert eine dynamische Zone ein. Journaldaten werden in die Zonendatei geschrieben, weitere Updates werden blockiert.
thaw <zonenname> hebt freeze auf und erlaubt wieder dynamische Updates.
sync <zonenname> schreibt Journaldaten in die Zonendatei. Mit -clean wird das Journal anschließend gelöscht.
flush leert den gesamten Resolver-Cache.
flushname <name> entfernt nur Einträge für einen bestimmten Namen aus dem Cache.
flushtree <name> entfernt alle Einträge unterhalb eines Namensbaums aus dem Cache.
halt beendet den named-Dienst sofort, ohne dynamische Zonendaten zuerst zu sichern.
stop stoppt named kontrolliert und speichert zuvor dynamische Updates und IXFR-Informationen.
querylog schaltet die ausführliche Protokollierung von Anfragen ein oder aus.
stats schreibt Statistikdaten in die von statistics-file konfigurierte Datei (unter Debian typischerweise beispielsweise /var/cache/bind/named.stats).

Konfigurationsdatei

Vorgaben überschreiben

Vorgaben aus Konfigurationsdateien überschreiben

Option Parameter Beschreibung
-c Datei Konfigurationsdatei
-p Port Port
-s Server Server
-y Keyname key

Weitere Details

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler

Konfiguration

Konfiguration in /etc/bind/named.conf

Für die Nutzung von rndc muss eine controls-Direktive in der named-Konfiguration vorhanden sein.

controls-Direktive
controls {
 inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; };
 inet ::1    allow { localhost; } keys { "rndc-key"; };
};

Diese Anweisung veranlasst named, auf 127.0.0.1:953 und ::1:953 Verbindungen zu akzeptieren und nur Anfragen zu erlauben, die mit dem Schlüssel "rndc-key" signiert sind.

key-Definition
key "rndc-key" {
 algorithm hmac-sha256;
 secret "BASE64-KEY";
};
  • algorithm hmac-sha256; – empfiehlt sich als aktueller Standard für TSIG-Schlüssel.
Schlüsselgenerierung mit rndc-confgen

In typischen Installationen wird der Schlüssel automatisch mit rndc-confgen erzeugt:

rndc-confgen -a

Dieser Befehl erzeugt eine Datei /etc/bind/rndc.key mit einer passenden key-Definition und setzt dabei restriktive Dateirechte (z. B. Modus 0600).

Der generierte Schlüssel befindet sich in der zugehörigen .key-Datei (z. B. Krndc-key.+161+12345.key) und wird in das Feld secret übernommen.

Hinweis
Klartext-Schlüssel sollten nicht direkt in einer global lesbaren Konfigurationsdatei stehen. Schlüsseldefinitionen werden in eine separate, nur für root lesbare Datei ausgelagert und per include eingebunden, z. B.:
include "/etc/bind/rndc.key";

/etc/bind/rndc.conf

Konfiguration in /etc/bind/rndc.conf

Die Datei /etc/bind/rndc.conf beschreibt, mit welchen Schlüsseln und gegen welche Server rndc arbeitet. Auf vielen Systemen genügt die automatisch erzeugte Datei /etc/bind/rndc.key; eine explizite rndc.conf ist dann optional.

  • Die rndc-Konfiguration ermöglicht die Authentifizierung zwischen rndc und BIND.


Minimalbeispiel
key "rndc-key" {
 algorithm hmac-sha256;
 secret "BASE64-KEY";
};

options {
 default-server 127.0.0.1;
 default-key "rndc-key";
};

server 127.0.0.1 {
 key "rndc-key";
};
  • key – definiert den gemeinsam genutzten Schlüssel.
  • options – setzt globale Vorgaben wie default-server und default-key.
  • server – ermöglicht serverbezogene Einstellungen, beispielsweise abweichende Ports oder Schlüssel.
Hinweis
/etc/bind/rndc.conf und die verwendeten Schlüsseldateien (z. B. /etc/bind/rndc.key) sollten nur für root lesbar sein (Modus 0600), um unbefugten Zugriff auf Geheimschlüssel zu verhindern.

Für Detailinformationen zu allen Direktiven steht die Manpage rndc.conf(5) zur Verfügung.

Dienst neu starten

Nach Änderungen an den Schlüsseln oder der rndc-Konfiguration muss der Dienst bind9 neu gestartet werden.

sudo systemctl restart bind9

Dateien

Datei Beschreibung


Anwendung

Erneuten Domaintransfer

Am Slave starten

rndc retransfer <DOMAIN>

Problembehebung

Anhang

Siehe auch



Dokumentation

Projekt