- FICHE DE PROCEDURE - Configurer un serveur DNS avec Bind9 sur Debian SISR3 N 1 Pré requis : Debian installé. Avoir une IP fixe pour le serveur DNS. Disposer d une connexion à l Internet. Création d un serveur DNS nommé «dnsserveur» sur le domaine «plc.lan» en IP privées de classe A. Voici les fichiers importants de configuration pour Bind9. Dans le dossier «/etc/bind/» : 1 named.conf 2 named.conf.options 3 named.conf.local Ou bien dans le dossier «/etc» : 1 /etc/resolv.conf 2 /etc/host.conf 3 /etc/hosts 1- Configuration du nom du serveur Dans «/etc/hostname», complétez le nom de votre serveur avec son nom FQDN (Fully Qualified Domain Name) afin que le service DNS puisse fonctionner correctement par la suite: 1 dnsserveur.plc.lan Puis démarrez le service : 1 /etc/init.d/hostname.sh start 2- Configuration de la procédure de résolution des noms Dans «/etc/host.conf», insérez les paramètres suivants : 1 order hosts, bind 2 multi on Dans «/etc/hosts», modifiez le fichier en fonction du nom de votre serveur : 1 127.0.0.1 localhost.localdomain localhost 2 192.20.1.1 dnsserveur.plc.lan dnsserveur Attention à faire après installation de BIND9!!! Pour modifier le fichier «/etc/resolv.conf», il faut changer les paramètres de connexion de la carte réseau concernant l'adresse IP du serveur DNS ici 192.20.1.1 et le nom de la zone de recherche ici plc.lan: 1 search home plc.lan 2 nameserver 127.0.1.1 3- Installation et configuration du DNS par l application BIND Installez Bind9 avec la commande suivante : 1 aptitude install bind9 Allez dans le dossier de BinD9 : 1 cd /etc/bind/ SISR3 - fiche de procédure n 1 - Procédure d installation d un DNS statique avec BIND Page 1
4- Configuration de la zone de recherche directe Copiez le fichier «db.local» en le renommant selon votre nom de domaine, exemple «db.plc.lan» : 1 cp db.local db.plc.lan Maintenant ouvrez votre fichier nouvellement créé : 1 nano db.plc.lan Changez les paramètres en fonction de votre nom de serveur et votre nom de domaine : 1 ; 2 ; BIND data file for eth0 interface 3 ; 4 $TTL 604800 5 @ IN SOA dnsserveur.plc.lan. root.plc.lan. ( 6 2 ; Serial 7 604800 ; Refresh 8 86400 ; Retry 9 2419200 ; Expire 10 604800 ) ; Negative Cache TTL 11 ; 12 @ IN NS dnsserveur.plc.lan. 13 14 dnsserveur IN A 192.20.1.1 5- Configuration de la zone de recherche inverse Copiez le fichier «db.127» en le renommant selon votre nom de domaine, exemple «db.plc.lan.inv» : 1 cp db.127 db.plc.lan.inv Maintenant ouvrez votre fichier : 1 nano db.plc.lan.inv Changez les paramètres en fonction de votre nom de serveur et votre nom de domaine : 1 ; 2 ; BIND reverse data file for eth0 interface 3 ; 4 $TTL 604800 5 @ IN SOA dnsserveur.plc.lan. root.plc.lan. ( 6 1 ; Serial 7 604800 ; Refresh 8 86400 ; Retry 9 2419200 ; Expire 10 604800 ) ; Negative Cache TTL 11 ; 12 @ IN NS dnsserveur.plc.lan. SISR3 - fiche de procédure n 1 - Procédure d installation d un DNS statique avec BIND Page 2
13 14 1 IN PTR dnsserveur.plc.lan. 6- Déclaration des zones gérées par votre serveur DNS Ouvrez le fichier suivant «named.conf.local» : 1 nano named.conf.local Modifiez-le avec vos propres paramètres en changeant le nom de domaine puis le nom du fichier de recherche : 1 zone "plc.lan" { 2 type master; 3 file "/etc/bind/db.plc.lan"; 4 forwarders{}; 5 }; Faites de même pour la zone inverse, toujours en adaptant les paramètres à votre réseau : 1 zone "1.20.192.in-addr.arpa" { 2 type master; 3 file "/etc/bind/db.plc.lan.inv"; 4 forwarders{}; 5 }; Puis redémarrez le service : 1 /etc/init.d/bind9 restart Utilisez les commandes suivantes pour vérifier si la syntaxe des fichiers de configuration est correcte : 1 named-checkzone webadonf.lan /etc/bind/db.plc.lan 2 named-checkzone webadonf.lan /etc/bind/db.plc.lan.inv 3 named-checkconf /etc/bind/named.conf 4 named-checkconf /etc/bind/named.conf.options Si vous éprouvez toujours des difficultés à vous donner des migraines, écoutez votre serveur et pensez à regarder les logs pour rechercher les erreurs. 1 tail -30 /var/log/syslog Et enfin si après de nombreux efforts qui vous auront coûtés tant de larmes vous êtes toujours là, testez votre configuration avec les commandes suivantes. Pour tester la résolution de noms et la zone de recherche inverse. 1 host + nom_du_serveur 2 host + @IP_du_serveur SISR3 - fiche de procédure n 1 - Procédure d installation d un DNS statique avec BIND Page 3
La commande «nslookup» (Name System Look Up) est un outil permettant d interroger un serveur de noms afin d obtenir les informations concernant un domaine ou un hôte et permet ainsi de diagnostiquer les éventuels problèmes de configuration du DNS : 1 nslookup + nom_du_serveur 2 nslookup + @IP_du_serveur La commande «dig» permet de faire sensiblement la même chose que «nslookup» : 1 dig + nom_du_serveur 2 dig + nom_de_domaine 3 dig -x + @IP_du_serveur Rappels du cours : Le serveur «maître» s occupe des enregistrements DNS d un domaine enregistré ou non (par exemple pour le cas d un réseau local fermé comme celui de notre tuto «plc.lan»). Une zone est l ensemble des enregistrements DNS pour un nom de domaine. Il existe une zone de recherche directe (correspondance entre le nom d hôte et l adresse IP) et une zone de recherche inverse (correspondance entre l adresse IP et le nom d hôte). Le serveur «secondaire» assure la redondance du serveur «maître» et prend le relais de celui-ci en cas de panne. Le serveur «cache» stocke les requêtes déjà résolues ce qui permet d économiser la bande passante et de réduire le temps de latence. Les différents types d enregistrement (record) spécifiés par l IANA : - : Le Point. Le nom de la zone est concaténé à la fin du nom et il faut impérativement ne pas l omettre. Par exemple «dnsserveur.plc.lan» devra être enregistré de la manière suivante : «dnsserveur.plc.lan». -@ : Si la zone a pour nom de domaine webadonf.lan alors @ prendra la valeur webadonf.lan. C est un alias pour le nom de la zone déclarée dans /etc/name.conf. -A : Address record. Elle fait correspondre un nom d hôte à une adresse IPv4 de type 192.168.1.1. -IN : the internet. Il spécifie que l enregistrement par défaut correspond aux données internet (IPv4). -NS : Name Server Record. Il indique le serveur de noms qui fait autorité sur la zone et prend en charge les enregistrements. -PTR : Pointer Record. Il fait correspondre une IP à un nom d hôte. -SOA : Star Of Authority Record. Il décrit une zone en spécifiant le serveur principal, le courriel de contact, la durée de vie et le numéro de série de la zone. -TTL : Time To Live. Il détermine la durée de vie des enregistrements de la zone dans un serveur cache. Les paramètres d une zone sont les suivants : 201103161112 : Serial. Une fois décomposé ce numéro correspond à : année-mois-jour-heure-minute. Dans notre cas ils sont simplement numérotés 1 et 2 parce que nous sommes dans un domaine fermé «plc.lan». 604800 : Refresh. C est l écart en secondes entre le serveur «esclave» et le serveur «maître». 86400 : Retry. C est le délai en secondes que le serveur «secondaire» ou «esclave» attend avant d effectuer une nouvelle demande au serveur «maître» en cas de non réponse. 2419200 : Expire. La zone sera considérée comme invalide arrivé au terme de ce délai en secondes en cas de non réponse du serveur principal aux serveurs «secondaires» ou «esclaves». 604800 : Negative Cache TTL. C est la durée de vie en secondes des nouveaux enregistrements mis en cache. Comment se décompose la notion de temps? SISR3 - fiche de procédure n 1 - Procédure d installation d un DNS statique avec BIND Page 4
1M : une minute, soit 60 secondes. 1H : une heure, 3600 secondes. 1D : un jour, 86400 secondes. 1W : une semaine, 604800 secondes. 365D : un an, 3153600 secondes. SISR3 - fiche de procédure n 1 - Procédure d installation d un DNS statique avec BIND Page 5