named -u USER = Named nicht als root, sondern unter bestimmter UID starten
named -g GROUP = Named unter anderer Gruppe starten
Die Zugriffsrechte für /etc/named.conf werden so gesetzt, dass der User named lesenden Zugriff hat, das Verzeichnis /var/named wird dem User named übereignet:
-rw-r----- 1 root named ... /etc/named.conf
drwxr-xr-x 4 named named ... /var/named
named -u named -g named -t /var/named = Named in Chrrot-Umgebung starten
Es müssen alle benötigten Dateien und Verzeichnisse, welche von Bind benötigt werden, in der Chroot-Umgebung benötigt:
bin
- ldconfig
- named
- named-xfer
dev
- null
- zero
- log
etc
- group
- localtime
- named.conf
lib
- libc-2.*.so
- libc.so.6
- ld-2.*.so
- ld-linux.so.2
var
named
- 127.0.0.zone
- localhost.zone
- root.hint
- pc-erfahrung.de.zone
- 0.168.192.in-addr.arpa.zone
run
- Steht für DNS-Security
- Es soll die Authentität der Kommunikationspartner und der übertragenen Daten gewährleistet werden
- Soll bsp. DNS-Spoofing (Fälschen von Nameserverantworten) verhindern
- DNSSEC arbeitet mit Schlüsselpaaren (private key, public key)
Prinzip:
Der Master-Server unterzeichnet jeden einzelnen Record mit seinem Private-Key. DNS-Clients können diese Unterschrift mit dem public key des Besitzers validieren und damit Authentizität und Integrität überprüfen.
dnskeygen -D 1024 -z -n test.com = Bind 8, Schlüsselpaar erstellen
dnssec-keygen -a das -b 768 ZONE test.com = Bind 9, Schlüsselpaar erstellen
Erzeugt folgende Dateien:
Ktest.com.+003+78586.key = Öffentlicher Schlüssel
Ktest.com.+003+78586.private = Privater Schlüssel
dnssigner = Zone signieren (Bind 8)
cat Ktest.comz.+003+78586.key >> /var/named/test.com.zone = Zone signieren
dnssec-sigzone -o test.com test.com.zone Ktest.com.+003+78586 = Zone signieren (Bind 9)
// Auszug named.conf
test.com
A 192.168.0.1
RRSIG A 1 3 1000 2006061802455 (
20060517062444 9927 test.com.
mMBIXxXU6buN53GWHTPpwEbse4aR2gNI8rgs
g9/x1We23K3gkO5DBjFdty27Fj4FMbQzg0uB
uv9aFcPaMyILJg== )
A 192.168.0.2
RSIG A 1 3 1000 20060616005145 (
20060517062444 9927 test.com.
mMBIXxXU6buN53GWHTPpwEbse4aR2gNI8rgs
g9/x1We23K3gkO5DBjFdty27Fj4FMbQzg0uB
uv9aFcPaMyILJg== )
RFC 2535
SIG = Enthält die Signatur zu einem Eintrag
NXT = Gibt an, welcher Record als nächstes folgen muss
KEY = öffentlicher Schlüssel
RFC 4034
RRSIG = Enthält die Signatur zu einem Eintrag
NSEC = Gibt an, welcher Record als nächstes folgen muss
DNSKEY = öffentlicher Schlüssel
named.conf auf dem Master-Server
key update {
algorithm „hmac-md5“;
secret „r/00055sssttteeee“;
};
zone test.com in {
type master;
...
allow-transfer { key update; }; //Zonentransfer erlauben
};
named.conf auf dem Slave-Server
key update {
algorithm „hmac-md5“;
secret „r/00055sssttteeee“;
};
server 192.158.100.56 {
key { key update; };
};
allow-query = einfache Abfragen
allow-recursion = rekursive Abfragen
allow-transfer = Zonentransfer