Wir setzen unsere Artikelserie fort und werden uns in diesem Artikel mit folgenden Aspekten befassen:
- Übliche Installationen
- Verzeichnisse und Hauptdateien
Bevor Sie fortfahren, empfehlen wir Ihnen, nicht aufzuhören zu lesen:
Übliche Installationen
In einer Konsole installieren wir als Root- Benutzer bind9 :
aptitude installiere bind9
Wir müssen außerdem das dnsutils- Paket installieren , das die notwendigen Werkzeuge zur Durchführung von DNS-Abfragen und zur Diagnosefunktionalität enthält:
aptitude dnsutils installieren
Wenn Sie die Dokumentation im Repository konsultieren möchten:
aptitude installiere bind9-doc
Die Dokumentation wird im Verzeichnis /usr/share/doc/bind9-doc/arm gespeichert . Die Indexdatei bzw. das Inhaltsverzeichnis heißt Bv9ARM.html . Zum Öffnen führen Sie folgenden Befehl aus:
Firefox / usr / share / doc / bind9-doc / arm / Bv9ARM.html
Bei der Installation von bind9 unter Debian wird auch das Paket bind9utils installiert, das einige sehr nützliche Werkzeuge für die Wartung einer funktionierenden BIND-Installation bereitstellt. Dazu gehören rndc, named-checkconf und named-checkzone . Zusätzlich bietet das Paket dnsutils eine Reihe von BIND-Clientprogrammen, darunter dig und nslookup . Wir werden all diese Werkzeuge und Befehle in den folgenden Artikeln verwenden.
Um alle Programme in jedem Paket zu sehen, müssen wir als Root- Benutzer ausgeführt werden :
dpkg -L bind9utils dpkg -L dnsutils
Oder gehen Sie zu Synaptic , suchen Sie nach dem Paket und prüfen Sie, welche Dateien installiert sind. Insbesondere diejenigen, die in den Ordnern /usr/bin oder /usr/sbin installiert sind.
Wenn wir mehr über die Verwendung der einzelnen installierten Tools oder Programme erfahren möchten, müssen wir Folgendes ausführen:
Mann
Verzeichnisse und Hauptdateien
Bei der Installation von Debian wird die Datei `/etc/resolv.conf` erstellt . Diese Datei, auch „ Konfigurationsdatei für den Resolver-Dienst “ genannt, enthält verschiedene Optionen. Standardmäßig sind der Domainname und die IP-Adresse des während der Installation angegebenen DNS-Servers voreingestellt. Da die Hilfedokumentation der Datei auf Spanisch und sehr verständlich ist, empfehlen wir, sie mit dem Befehl `man resolv.conf` zu lesen.
Nach der Installation von bind9 in Squeeze werden mindestens die folgenden Verzeichnisse erstellt:
/ etc / bind / var / cache / bind / var / lib / bind
Im Verzeichnis /etc/bind finden wir unter anderem die folgenden Konfigurationsdateien:
named.conf named.conf.options named.conf.default-zonen named.conf.local rndc.key
Im Verzeichnis /var/cache/bind erstellen wir die Dateien für die lokalen Zonen , auf die wir später eingehen werden. Führen Sie aus Neugier die folgenden Befehle in einer Konsole als Root- Benutzer aus :
ls -l / etc / bind ls -l / var / cache / bind
Natürlich enthält das letzte Verzeichnis nichts, da wir noch keine lokale Zone erstellt haben.
Die Aufteilung der BIND-Einstellungen in mehrere Dateien erfolgt aus Gründen der Benutzerfreundlichkeit und Klarheit. Jede Datei hat eine bestimmte Funktion, wie wir unten sehen werden:
named.conf : Hauptkonfigurationsdatei. Sie enthält die Dateien named.conf.options , named.conf.local und named.conf.default-zones.
named.conf.options : Allgemeine DNS-Dienstoptionen. Die Direktive „directory /var/cache/bind“ gibt bind9 an, wo die Dateien der erstellten lokalen Zonen zu finden sind. Hier werden außerdem die „ Forwarder “-Server (maximal drei) deklariert. Dies sind externe DNS-Server, die wir aus unserem Netzwerk (selbstverständlich durch eine Firewall) abfragen können und die Anfragen beantworten, die unser lokaler DNS-Server nicht bearbeiten kann.
Wenn wir beispielsweise einen DNS für das LAN 192.168.10.0/24 konfigurieren und einer unserer Forwarder ein Nameserver der UCI sein soll, müssen wir die Direktive forwarders { 200.55.140.178; } ; IP-Adresse, die dem Server ns1.uci.cu entspricht, deklarieren.
Auf diese Weise können wir unseren lokalen DNS-Server nach der IP-Adresse des Hosts yahoo.es abfragen (der sich offensichtlich nicht in unserem LAN befindet), da unser DNS-Server den DNS-Server der UCI fragt, ob dieser die IP-Adresse von yahoo.es kennt, und uns anschließend ein Ergebnis liefert, unabhängig davon, ob die Abfrage erfolgreich war oder nicht. Weitere wichtige Konfigurationsaspekte werden wir , wie wir später sehen werden, in der Datei named.conf.option festlegen.
named.conf.default-zones : Wie der Name schon sagt, handelt es sich hierbei um die Standardzonen. Hier wird BIND mit dem Namen der Datei konfiguriert, die die Informationen für die Root-Server enthält, die zur Initialisierung des DNS-Caches benötigt werden, genauer gesagt mit der Datei db.root . BIND wird außerdem angewiesen, die volle Autorität (Authority) für die Namensauflösung von localhost zu besitzen , sowohl für Vorwärts- als auch für Rückwärtssuchen. Dasselbe gilt für die Broadcast-Zonen.
named.conf.local : Datei, in der wir die lokale Konfiguration unseres DNS-Servers unter Verwendung des Namens jeder der lokalen Zonen deklarieren . Dies sind die DNS-Eintragsdateien, die die Namen der mit unserem LAN verbundenen Computer ihren IP-Adressen zuordnen und umgekehrt.
rndc.key : Eine generierte Datei, die den Schlüssel zur Steuerung von BIND enthält. Mithilfe des BIND-Server-Steuerungsprogramms rndc kann die DNS-Konfiguration neu geladen werden, ohne dass ein Neustart mit dem Befehl rndc reload erforderlich ist . Dies ist besonders nützlich bei Änderungen an den lokalen Zonendateien.
Bei Debian können sich die Dateien der lokalen Zone auch in /var/lib/bind befinden ; bei anderen Distributionen wie Red Hat und CentOS befinden sie sich üblicherweise in /var/lib/named oder anderen Verzeichnissen, abhängig vom implementierten Sicherheitsniveau.
Wir haben das Verzeichnis `/var/cache/bind` gewählt , da Debian dieses standardmäßig in der Datei `named.conf.options` vorschlägt . Sie können jedes andere Verzeichnis verwenden, solange Sie bind9 mitteilen, wo die Zonendateien zu finden sind, oder den absoluten Pfad zu jeder Zone in der Datei `named.conf.local` angeben . Es wird dringend empfohlen, die von Ihrer Distribution vorgeschlagenen Verzeichnisse zu verwenden.
Die zusätzlichen Sicherheitsmaßnahmen beim Erstellen eines Chroots für BIND werden in diesem Artikel nicht behandelt. Gleiches gilt für die Sicherheit im SELinux-Kontext. Wer solche Funktionen implementieren muss, sollte Handbücher oder Fachliteratur konsultieren. Das Dokumentationspaket bind9-doc befindet sich im Verzeichnis /usr/share/doc/bind9-doc.
Nun, meine Herren, bisher der 2. Teil. Aufgrund der guten Empfehlungen unseres Chefs möchten wir nicht auf einen einzigen Artikel eingehen. Schließlich! Wir werden uns im nächsten Kapitel mit dem BIND-Setup und -Test befassen.