BIND9 : Serveur DNS sous Linux

Cette procédure va couvrir l’installation et la configuration de BIND9, le célèbre serveur DNS.

Le serveur de noms permet la mise en place d’un serveur DNS qui fera autorité dans la zone où il est installé et qui va effectuer la résolution de noms par rapport aux adresses IP. Ainsi, on pourra assigner l’adresse IP 192.168.1.100 au nom d’hôte machine1.latourista.local.

Allez on se connecte en SSH à notre debian de test favorite, et c’est parti !

NOTE : dans cette procédure, le nom de domaine sera « latourista.local » et le nom d’hôte de notre serveur DNS sera « server ».

Nous allons commencer par un apt-get install bind9 bind9-doc

Maintenant, nous allons entrer dans la configuration à proprement parler. Afin de sécuriser le serveur, nous allons générer une nouvelle signature TSIG. Il s’agit d’une signature utilisée pour chaque transaction du serveur de noms. Cette signature comprend deux clefs : KSK et ZSK

LE SERVEUR DNS BIND9:

Pour faire simple, nous allons utiliser ce script de génération :

#Generation des clés KSK
dnssec-keygen -f KSK -r /dev/urandom -a RSASHA256 -b 2048 -n ZONE latourista.local
mv Klatourista.local.+008+*.key
Klatourista.local.ksk.key
mv Klatourista.local.+008+*.private
Klatourista.local.ksk.private
#Generation des clés ZSK
#dnssec-keygen -r /dev/urandom -a RSASHA256 -b 2048 -n ZONE latourista.local
#mv Klatourista.local.+008+*.key
Klatourista.local.zsk.key
#mv Klatourista.local.+008+*.private
Klatourista.local.zsk.private

 

La commande dnssec-keygen va ensuite nous permettre de générer deux fichiers : un fichier .key, public, qui ira très bien dans un fichier de zone et un fichier .private qui contiendra les algorithmes de déchiffrement de la signature et qui lui doit rester privé.

Dirigeons-nous maintenant vers le dossier /etc/bind puis, avant de lancer la configuration, nous allons sauvegarder tous les fichiers d’origine.

cd /etc/bind
mkdir backup.ori
cp -r * backup.ori

Les principaux fichiers du serveur BIND9 :

named.conf.local : Configuration local du serveur DNS, on y déclare les zones associées au domaine.
named.conf.options : Ce fichier contient l’ensemble des options de configuration du serveur DNS.
named.conf.default-zones : Ce fichier contient des zones prédéfinies

On modifie named.conf.local et on y ajoute à la fin :

zone « latourista.local » {
type master;
file « /etc/bind/latourista.local/db.latourista.local »;
allow-transfer {8.8.8.8};