Outils pour utilisateurs

Outils du site


sysadmin:configurer-bind9

Ceci est une ancienne révision du document !


Configurer bind9

Installation du serveur de résolution de nom ISC BIND1). Configuration minimale en tant que serveur faisant autorité sur la zone internal.

apt-get install bind9 bind9-doc bind9utils

Dans le fichier de configuration /etc/bind/named.conf.options définir les interfaces sur lesquelles le serveur bind sera à l'écoute en modifiant la ligne listen-on-v6.

Écoute sur toutes les interfaces

        listen-on-v6 { any; };

Écoute sur la boucle locale

        listen-on-v6 { ::1; };

Le retrait de la déclaration forwarders permet d'éviter de s'appuyer sur les DNS du FAI. Dans ce cas bind interroge directement les DNS racines. On ne bénéficie plus du cache DNS du FAI mais on évite également ses DNS menteurs s'il existent.

Commenter les forwarders

        // forwarders {
        //      0.0.0.0;
        // };

Configuration en serveur maître

bind va être configuré en tant que serveur maître sur la zone internal. C'est lui qui fera autorité sur cette zone.

Modifier le fichier de configuration /etc/bind/named.conf.local afin de déclarer la zone internal.

zone "internal" { 
        type master; 
        file "/etc/bind/db.internal"; 
        allow-update { none; };
};

Remarque: Pour éviter qu'un tiers ne mette à jour dynamiquement votre zone DNS, utiliser la déclaration allow-update

Le fichier /etc/bind/db.internal contiendra la définition de la zone internal. Créer le fichier

touch db.internal

Il contiendra les définitions suivantes

;
; BIND fichier de données pour la zone internal
;
$TTL    604800
@       IN      SOA     ns.internal. contact.internal. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@        IN      NS      ns1.internal.
ns1      IN      A       192.168.1.15
gateway  IN      A       192.168.1.1

Vérifier la syntaxe des fichiers de configuration:

named-checkconf -z

Créer la zone de recherche inversée

Cette zone va permettre au serveur DNS de convertir une adresse IP en nom. A nouveau modifier le fichier de configuration /etc/bind/named.conf.local pour ajouter la zone de recherche inversée.

zone "1.168.192.in-addr.arpa" {
        type master;
        notify no;
        file "/etc/bind/db.reverse.internal";
};

Ici c'est dans le fichier db.reverse.internal que seront définies les entrées de la zone. Utiliser un fichier existant en modèle pour créer le nouveau fichier de zone.

cp db.127 db.reverse.internal

Modifier le fichier de zone inversé /etc/bind/db.192. Attention a bien modifier l'entrée SOA, le nom du serveur doit correspondre à la zone lan. A chaque entrée A du fichier de zone lan doit correspondre un enregistrement PTR.

;
; BIND reverse data file
;
$TTL    604800
@       IN      SOA     ns1.lan. admin.lan. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      ns1.

; ================= Serveurs =========================
200     IN      PTR     ns1.lan.
201     IN      PTR     pi-stache.lan.
254     IN      PTR     gw.lan.

Vérifier la configuration et recharger les fichiers de configuration

named-checkzone 122.168.192.in-addr.arpa /etc/bind/db.reverse.glp.internal
 
named-checkconf -z && systemctl reload named.service

Tester la recherche inversée

Avec nslookup en passant l'adresse IP directement en paramètre ou en mode interactif en restreignant le type de réponses à PTR:

nslookup 
> set type=PTR
> 192.168.1.201
Server:         192.168.1.200
Address:        192.168.1.200#53
 
201.1.168.192.in-addr.arpa      name = pi-stache.lan.
>

A propos de la RFC 1918

Statistiques

Les statistiques ne doivent pas être exposées sur une interface publique car elles peuvent fournir des informations importantes pouvant faciliter les attaques.

Deux méthodes exposent les statistiques du serveur BIND :

  • le fichier named.stats ;
  • le serveur HTTP (recommandé).

Pour activer le service d'export des statistiques via HTTP, ajouter la directive statistics-channels dans le fichier de configuration /etc/bind/named.conf.local :

statistics-channels { inet 127.0.0.1 port 8080 ; };

Valider la syntaxe et relancer le service :

named-checkconf -z
systemctl reload named.service

:TODO:

  • voir paramètre query logging affiché par la commande rndc status ;
  • directive
rndc querylog on

Références

1)
Berkeley Internet Name Domain
sysadmin/configurer-bind9.1761478885.txt.gz · Dernière modification : 2025/10/26 11:41 de yoann