Soll ich / etc / bind / zone / oder / var / cache / bind / verwenden?

10

Jedes Tutorial scheint eine andere Meinung dazu zu haben. Soll ich für meine ISC BIND-Zonen /etc/bind/zones/oder verwenden /var/cache/bind/? Bei der letzten Installation habe ich verwendet, /var/cache/bind/aber nur, weil ich dazu geführt wurde; Allerdings habe ich dort gerade eine PID-Datei für diese neue Debian-Installation entdeckt, daher dachte ich, dass die Verwendung des "Arbeitsverzeichnisses" zum Speichern von Zonendateien wahrscheinlich nicht die beste Idee war. Es scheint, dass viele Administratoren dies verwenden, sodass sie beim Deklarieren einer neuen Zone nicht den vollständigen Pfad eingeben müssen.

Zum Beispiel:

file "/etc/bind/zones/db.foobar.com";

Anstatt:

file "db.foobar.com";

Ist offensichtlich einfacher zu tippen, aber ist es eine gute oder schlechte Praxis?

Einige schlagen möglicherweise auch vor, das Arbeitsverzeichnis auf Folgendes einzustellen /etc/bind/zones:

options {
    // directory "/var/cache/bind";
    directory "/etc/bind/zones";
}

... aber irgendetwas sagt mir, dass dies keine gute Praxis ist, da die PID-Datei dort erstellt wird, nehme ich an (es sei denn, es ist nur ein /var/cache/bindZufall).

Ich habe mir die Manpage angesehen, aber es schien nicht zu sagen, wofür die Verzeichnisoption gedacht war. Irgendwelche Ideen genau, wofür sie entworfen wurde?

Nick Bolton
quelle

Antworten:

13

Für Ihre Master-Zonen sollten /etc/bind/zonessie eingehen, da sie konfiguriert sind. Sekundäre (Slave-) Zonen sollten sich in /var/cache/bind/secondaryoder ähnlich befinden, da nur zwischengespeicherte Daten vom Master abgerufen werden können, wenn die Daten verloren gehen.

womble
quelle
2

Genau wie Womble stimme ich der Tatsache zu, dass dies /var/cache/bindgut für sekundäre (Sklaven-) Zonen ist. Andererseits denke ich nicht, dass Master-Zonen unter sein sollten /etc. Sie sind genauso Konfigurationsdateien wie der von Apache bereitgestellte Inhalt, daher sollten sie irgendwo unter /var, aber nicht unter gespeichert werden /var/cache.

Red Hat-basierte Systeme speichern Zonen unter /var/named(von wo sie möglicherweise automatisch kopiert werden /var/named/chroot/var/named). Die Konfigurationsdatei ist /etc/named.conf.

Cristian Ciupitu
quelle
2

/ var / lib / bind / - Master- und dynamische Zonen

/ var / cache / bind / - sekundäre Zonen

/ etc / bind / - Zonen, die sich während der Lebensdauer des Servers nicht ändern sollten.


quelle
Ich bevorzuge auch dieses Muster, aber ist dies irgendwo eine offizielle Empfehlung?
Jon Skarpeteig
2

Eine kurze Antwort ist, dass es keine Rolle spielt und beides funktionieren wird.

Früher habe ich verwendet /var/cache/bind, aber jetzt verwende ich immer so, /etc/bindwie /var/cachees normalerweise von Backups ausgeschlossen ist ( laut FHS /var/cache muss es automatisch neu erstellt werden können).

Alle sekundären oder dynamischen Zonen leben noch in /var/cache.

LapTop006
quelle
1

Dies ist nicht wirklich eine Bindungsfrage - die Antwort hängt davon ab, wie Sie Ihre Linux / Unix-Boxen verwalten.

Ich habe an Orten mit Änderungsmanagement- / Sicherheitsstandards gearbeitet, die eine spezielle Genehmigung erfordern, um Änderungen in der / etc-Struktur auf einem Produktionsserver vorzunehmen, und Tripwire oder ähnliche Tools verwendet, um Änderungen zu überwachen. An diesen Orten würden Dateien mit einem hohen Änderungstempo (z. B. Zonendateien usw.) in / var gespeichert und einer anderen Änderungsstufe unterzogen.

Wenn Ihr Änderungskontrollprozess kein Problem darstellt, spielt der tatsächliche Standort keine große Rolle, aber Sie sollten ihn konsistent halten. Persönlich denke ich, dass es in den / var-Baum gehört, aber das ist eher eine Unix-Gewohnheit der alten Schule, die ich habe.

duffbeer703
quelle
0

Ich würde denken, dass / var / cache etwas ist, das Sie löschen könnten, und daher etwas anderes verwenden würde.

Was das ist, ist weder ein Standard noch eine Anforderung, dies zu sein. BIND ist das egal, nur solange Sie konsequent sind, werden Sie die Konfigurationsdateien nicht blind bearbeiten.

Ich würde Zonendateien nicht genau als Konfigurationsdaten betrachten. named.conf und keys.conf sind für mich konfiguriert, Zonendaten sind Zonendaten. Wählen Sie einfach einen Ort aus - vielleicht sogar ein Benutzerverzeichnis für diesen Zweck - und führen Sie ihn aus.

In meinem speziellen Setup verwende ich / local / named, ein Symlink an anderer Stelle auf dem Computer. Ich habe die Datei named.conf in / local / named / eingefügt und die Verzeichnisoption ebenfalls auf / local / named gesetzt. Ich gebe dann Dateinamen wie pri / example.com oder sec / example.com, um Zonen, für die ich maßgeblich bin, von denen zu unterscheiden, die ich aus anderen Quellen beziehe. Auf diese Weise kann ich alle Secondaries entfernen und bei Bedarf ohne Bedenken erneut abrufen.

Michael Graff
quelle