This is an archive of past FreeBSD releases; it's part of the FreeBSD Documentation Archive.

BIND9 en FreeBSD

23.7. BIND9 en FreeBSD

Geschreven door Tom Rhodes.

Het uitbrengen van FreeBSD 5.3 was het moment van introductie van de BIND9 DNS server software in de distributie. Dit betekende nieuwe beveiligingsmogelijkheden, een nieuwe indeling van het bestandssysteem en automatische instelling van chroot(8). Deze paragraaf bestaat uit twee delen. In het eerste deel worden de nieuwe mogelijkheden en hun instelling beschreven en het tweede gedeelte gaat over hulp bij het upgraden naar FreeBSD 5.3. Vanaf dit moment wordt er simpelweg verwezen naar named(8) in plaats van naar BIND. Dit onderdeel slaat het beschrijven van de terminologie over, omdat die eerder is besproken. De theorie wordt ook niet beschreven. Het is aan te raden om die eerdere onderdelen te lezen voor dit onderdeel.

De bestanden met instellingen voor named staan op dit moment in /var/named/etc/namedb/ en moeten voor gebruik aangepast worden. Daar worden de meeste instellingen gemaakt.

23.7.1. Een master zone instellen

Om een master zone in te stellen kan in /var/named/etc/namedb/ het volgende uitgevoerd worden:

# sh make-localhost

Als alles goed is gegaan hoort er een nieuw bestand in de master map te staan. De bestandsnamen horen localhost.rev voor de lokale domeinnaam te zijn en localhost-v6.rev voor IPv6 instellingen. Instellingen voor standaardgebruik staan al in het instellingenbestand named.conf file.

23.7.2. Een slave zone instellen

Instellingen voor extra domeinen of subdomeinen kunnen worden ingesteld als slave zones. In de meeste gevallen kan het bestand master/localhost.rev gewoon naar de map slave gekopieerd worden en aangepast worden. Als dat is gedaan, moeten de bestanden op de juiste wijze toegevoegd worden aan named.conf, zoals in het volgende voorbeeld voor example.com:

zone "example.com" {
        type slave;
        file "slave/example.com";
        masters {
                10.0.0.1;
        };
};

zone "0.168.192.in-addr.arpa" {
        type slave;
        file "slave/0.168.192.in-addr.arpa";
        masters {
                10.0.0.1;
        };
};

In dit voorbeeld is het master IP adres de primaire domain server vanwaar de zones gehaald worden. Die hoeft niet per se zelf een DNS server te zijn.

23.7.3. Opstarten instellen

Om de named daemon met het systeem te laten starten, hoort de volgende optie in rc.conf te staan:

named_enable="YES"

Hoewel er nog andere mogelijkheden bestaan, is dit het absolute minimum. In rc.conf(5) staan nog meer mogelijkheden beschreven. Als er niets in rc.conf staat, kan named gestart worden vanaf de commandoregel:

# /etc/rc.d/named start

23.7.4. BIND9 beveiliging

Hoewel FreeBSD named automatisch in een chroot(8) omgeving zet, zijn er nog een aantal andere beveiligingsmogelijkheden die kunnen helpen om mogelijke aanvallen op de DNS dienst af te slaan.

23.7.4.1. Toegangscontrolelijsten opvragen

Een toegangscontrolelijst (acl) voor vraagstellingen kan gebruikt worden om vraagstellingen voor zones te beperken. De instelling gaat door een netwerk te definiëren binnen het token acl en dan een lijst met IP adressen aan te geven in de instellingen voor de zone. Om domeinen toe te staan om de voorbeeldhost te gebruiken, kan iets als het volgende gebruikt worden:

acl "example.com" {
        192.168.0.0/24;
};

zone "example.com" {
        type slave;
        file "slave/example.com";
        masters {
                10.0.0.1;
        };
    allow-query { example.com; };
};

zone "0.168.192.in-addr.arpa" {
        type slave;
        file "slave/0.168.192.in-addr.arpa";
        masters {
                10.0.0.1;
        };
    allow-query { example.com; };
};

23.7.4.2. Opvragen versie beperken

Het opvragen van de versie van de DNS server kan een ingang zijn voor een aanvaller, die deze informatie kan gebruiken om te zoeken naar bekende exploits of bugs om in te breken op de host.

WaarschuwingHet instellen van een vals versienummer beschermt een server niet tegen exploits. Alleen het bijwerken naar een versie die niet kwetsbaar is beschermt een server.

Er kan een valse versiestring ingesteld worden in de sectie options van named.conf:

options {
        directory       "/etc/namedb";
        pid-file        "/var/run/named/pid";
        dump-file       "/var/dump/named_dump.db";
        statistics-file "/var/stats/named.stats";
        version         "None of your business";
};

Deze en andere documenten kunnen worden gedownload van ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Lees voor vragen over FreeBSD de documentatie alvorens contact te zoeken <questions@FreeBSD.org>.
Vragen over deze documentatie kunnen per e-mail naar<doc@FreeBSD.org>.