Dans ce tutoriel, vous allez apprendre à installer Bind9 avec Debian et à configurer l'environnement de travail en fonction de vos besoins.
Première étape après l’installation de l’OS, mettre à jour le système avec la commande :
Deuxième étape, installer le service bind9 et les utilitaires DNS (nslookup, dig, etc.…)
Nous allons maintenant modifier certains fichiers de configuration afin de
correspondre à notre demande.
Premier fichier de configuration (A adapter selon votre configuration.):
Deuxième fichier de configuration :
Une fois cette étape terminée pour vérifier si votre serveur est bien configuré, entrez la commande :
Si votre configuration est bonne, le serveur utilisé et l’adresse du serveur devrait correspondre à votre vous-même. Pour moi la commande renvoie en Server : 192.168.2.2 et en Address : 192.168.2.2#53 donc ma configuration est bonne. (bon mon serveur n'est actuellement pas capable de récupérer l'adresse de google mais c'est un début)
Si la commande renvoie un autre serveur que le vôtre, tentez de reboot. Si cela ne résoud pas la problématique, vérifiez vos fichiers de configuration.
A partir de cette étape nous allons modifier uniquement des fichiers de configurations de bind. Aussi je vous invite à vous déplacer dans /etc/bind avec la commande suivante :
Concernant BIND il y a 3 fichiers de configuration qui vont nous intéresser.
Le premier fichier à modifier sera named.conf.local
modifiez le fichier et ajoutez le contenu suivant :
En faisant cela je créer la zone pour mon domaine, je spécifie à mon serveur que c’est une zone “maitre” (donc principale) et je lui précise l’endroit où est mon fichier.
En dessous je vais rajouter une zone inversée. Attention, la règle de nommage de la zone inversée est à adapter selon votre configuration.
Par exemple si j’ai un réseau en 192.168.2.0/24 ma zone inversée s’appellera : 2.168.192.in-addr.arpa.
Un réseau en 10.0.0.0/8 sera 10.in-addr.arpa
Un réseau en 172.16.0.0/16 sera 16.172.in-addr.arpa
Et voilà, j’en ai terminé avec la configuration du serveur, je peux maintenant passer à mes zones.
Afin d’effectuer des modifications correctes concernant mes zones, ce que je vous conseille plutôt que de partir de zéro, c’est de faire une copie du fichier db.empty située dans /etc/bind avec la commande suivante
Avec ceci je fais une copie de db.empty et je le colle dans /etc/bind en lui donnant pour nom “monfichier” qui est le nom que j’avais donné à mon fichier de configuration pour ma zone “mondomaine”.
Je fais de même pour mon fichier inversé.
Je vais maintenant utiliser mon éditeur de texte pour modifier ce fichier de configuration, par défaut je me retrouve donc avec ce contenu :
Je vais donc effectuer les modifications nécessaires afin de faire correspondre ma zone à mes besoins (ici par exemple j'ajoute un enregistrement "client.mondomaine").
Pareil pour mon fichier de zone inversée
Dans ma zone inversée je vais spécifier que la zone inversée 2.168.192.inaddr.arpa est dans le NameServer monserver.mondomaine. Et que la 10ème adresse appartient à toto.mondomaine. Je lui spécifie donc que toto.mondomaine à l’adresse 192.168.2.10
Et voilà ! La configuration de mes zones est terminée, pour effectuer le test, je vais essayer de faire un nslookup de client puis un nslookup de 192.168.2.10
Mes zones sont donc bien configurées !
Ici je vais aller dans le fichier named.conf.options et ajouter ces éléments :
Par défaut, bind autorise uniquement les requêtes vers les redirecteurs si l’adresse IP du client se trouve dans le même sous réseau que le serveur. Nous définissons dans cet exemple une ACL pour un sous réseau qui nous appartient, 192.168.2.0/24 afin d’autoriser les requêtes vers notre forwarder 8.8.8.8
Pour configurer la zone esclave, il me faut évidemment un serveur “master” dans mon cas ce sera un serveur Windows 2019 en 192.168.2.1 avec un domaine reso.test je vais d’abord retourner sur mon named.conf.local et ajouter :
Ici je ne renseigne pas le chemin absolu de la zone pour laisser bind utiliser le dossier par défaut, les fichiers de zone seront stockés dans /var/cache/bind.
Je peux retourner dans mon named.conf.options et ajouter à dans la rubrique “options” :
nano named.conf.options
Et voilà, vous pouvez maintenant attendre que le transfert se fasse ou alors vous pouvez le forcer avec la commande :
Vous savez maintenant comment configurer DNS sur un environnement Linux.
Vous pouvez aller plus loin, si vous le souhaitez, n’hésitez pas à me contacter dans ce cas ou à vous renseigner sur les autres tutos présents sur mon wiki ou directement sur Google !
Si vous souhaitez avoir plus d’informations ou si vous avez découvert une coquille sur ce tutoriel, merci de me contacter à l’adresse i.martel@imweb.ovh
v1 - Version initiale