Konfiguration von Bind
Wir schauen uns nun die Konfiguration von Bind an. Konfigurationen unter Linux sind in der Regel einfache Text-Dateien, welche die nötigen Anweisungen für die Software enthalten.
Grundkonfiguration
Die Konfiguration des BIND-Servers erfolgt über das Verzeichnis /etc. Nach der Installation sollten sich hier folgende Dateien finden:
named.conf
named.iscdlv.key
named.rfc1912.zones
named.root.key
Der Prozess von BIND ist als named bekannt. Daher beziehen sich viele der Dateien auf "named" anstelle von "BIND".
Die Datei named.conf ist die Haupt-Konfiguration von Bind. Öffnen Sie die Konfiguration nun mit dem Befehl nano.
Sie werden nun feststellen, dass die Konfiguration für Bind in gewissen Gruppen zusammengefasst ist, welche durch geschweifte Klammern {} umschlossen werden. In der Gruppe options finden Sie die Grundkonfigurationen.
| Zeile | Bedeutung |
| listen-on port 53 { 127.0.0.1; }; | Definiert auf welcher IP-Adresse und welchem Port der DNS-Server eingehende Verbindungen annehmen soll. Bei 127.0.0.1 handelt es sich um die localhost Adresse des Servers, der Dienst wird daher nur Verbindungen von Server selber annehmen. |
|
listen-on-v6 port 53 { ::1; };
|
Dasselbe gibt es auch in einer separaten Variante für IPv6 |
|
directory "/var/named";
|
In dem angegeben Verzeichnis werden die Dateien der einzelnen Zonen abgelegt. |
|
recursion yes;
|
Definiert ob der Server rekursive DNS-Abfragen bearbeitet oder nicht. |
Die grundlegenden Einstellungen sind soweit in Ordnung. Es müssen aber nun eine Einstellung angepasst werden, damit wir den DNS-Server über unsere IP verwenden können.
Im Kontext von Einstellungen unter Linux spricht man bei den einzelnen Einstellungsmöglichkeiten von Direktiven.
- Die listen-on Direktive ist derzeit auf 127.0.0.1 gesetzt. Aus diesem Grund nimmt der DNS-Server keine Verbindungen von extern an. Um das zu ändern, setzen Sie die Direktive auf any. Den Port 53 können Sie belassen, da dies der Standard-Port für DNS ist:
listen-on port 53 { any; };
Damit ist die Basis-Konfiguration abgeschlossen. Im nächsten Schritt werden wir nun eine DNS-Zone einrichten.
Starten des Dienstes
Bis jetzt ist der DNS-Dienst noch nicht gestartet.
DNS-Zonen
Eine DNS-Zone benötigt zwei Teile:
- Einen Eintrag in der Datei /etc/named.conf, welcher dem DNS-Server mitteilt das eine Zone existiert und was für ein Typ die Zone ist.
- Der eigentliche Inhalt der Zone, welcher als eigene Datei abgelegt ist.
Named.conf
Fügen Sie nun ganz am Ende der Datei /etc/named.conf folgenden Abschnitt ein:
zone "test.tbz" {
type master;
file "/var/named/test.tbz";
}
- Sie teilen damit dem DNS-Server mit, dass nun die Konfiguration für die DNS-Zone test.tbz folgt.
- Dabei setzen Sie den Typ der DNS-Zone mit der Direktive type auf master.
- Mit der Direktive file geben Sie den Pfad zur Datei mit dem Inhalt der DNS Zone an. Diese Datei existiert derzeit noch nicht uns muss im nächsten Schritt von uns angelegt werden.
Das Zonen-File
Wechseln Sie nun in das Verzeichnis /var/named und erstellen Sie eine neue Datei mit dem Namen test.tbz
In dieser Datei fügen Sie nun den nachfolgenden Inhalt ein:
$TTL 600
@ IN SOA ns1.test.tbz. admin.test.tbz. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.tbz.ch
@ IN A 8.8.8.8
Sehen wir uns das Zonen-File etwas genauer an:
- Die TTL (Time to life) definiert, wie lange ein DNS-Resolver die Zonen-Informationen im Cache behalten wird. Eine niedrige TTL wird die Last auf dem Server erhöhen, da ein DNS-Resolver zur Abfrage der selben DNS-Zone mehr Requests stellen wird. Der Wert wird in Sekunden angegeben.
- Der Origin definiert den Namen der DNS-Zone.
- Es folgt ein Block mit den Basis Zonen-Informationen, hier ist vor allem die Serial relevant. Bei der Serial handelt es sich sozusagen um eine Version der Zone, bei jeder Anpassung muss die Serial erhöht werden, damit Slave-DNS-Server eine Änderung in der Zone erkennen können.