JoJo MISE EN ŒUVRE D’UN SERVER DNS SOUS
Domain Name System
DNS PRIMAIRE ET DNS SECONDAIRE
Diodio MBODJ Page 1
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo A)
DNS PRIMAIRE 1. Préparation
Rappel : Distribution : Centos 5.5 Nom du serveur : servdns Adresse IP du serveur : 192.168.20.1 Nom du domaine : jojo.sn Network : 192.168.20.0/24
Avant d'installer le serveur DNS, certaines opérations sont à effectuer...
Définition du nom du serveur Editer le fichier /etc/sysconfig/network /etc/sysconfig/network et le renseigner ainsi :
Et on redémarre la machine pour que le nom de la machine change. ch ange. Diodio MBODJ Page 2
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo L’attribution d’adresse IP au serveur DNS Saisir la commande ifconfig de la façon suivante :
(eth0 correspond au nom du du point de de montage de de la carte réseau par défaut) défaut)
Remarque : si le système ne garde l’IP de la machine après un re démarrage, vous utilisez la commande setup. Cette dernère permet de donner physiquement une adresse IP à la machine.
Diodio MBODJ Page 3
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo
Diodio MBODJ Page 4
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo On donne l’adresse IP de la machine. Dans notre cas :
IP : 192.168.20.1 Netmask : 255.255.255.0
La commande ci-dessous permet de redémarrer le service network pour que les modifications modifications prennent effet.
[root@servdns ]# service network restrat
Diodio MBODJ Page 5
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo La commande ifconfig eth0 permet de visualiser l’adresse l’adresse IP et le mask de la machine de eth0 (spécifie l’interface eth0)
2. Installation des paquetages Vérification et installation installation des paquetages nécessaires, à savoir : bind, bind-utils et caching-nameserver.
Pour vérifier si ces paquetages sont déjà sont installés ou pas, voici la commande à effectuer :
[root@servdns ]# rpm -q nom_paquetage Exemple :
Diodio MBODJ Page 6
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo caching-nameserver, bind-utils et Les paquetages à instller sont caching-nameserver,
bind.
Il faut d’abord monter le cd centos(SE) et se placer dans le répertoire.
L’installation de caching-nameserver avec rpm –ivh
L’installation de bind-utils
L’installation de bind
Diodio MBODJ Page 7
avec rpm –ivh
avec rpm –ivh
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo Après l’installation, on peut v érifier nos paquetages installés par la commande
[root@servdns ]# rpm -q nom_paquetage
Diodio MBODJ Page 8
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo
3. Création et Paramétrage du Serveur DNS Les fichiers à paramétrer dans le répertoire /etc sont /etc/resolv.conf , /etc/named.caching-nameserver.conf et /etc/named.rfc1912.zones.
Ces deux derniers forment le fichier /etc/named.conf sous sous RedHat.
Diodio MBODJ Page 9
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo
Nous sommes dans leFichier /etc/named.caching-nameserv /etc/named.caching-nameserver.conf er.conf Mettons l’adresse IP à la ligne 15 et l’adresse réseau + le mask à la ligne 27
On déclare ces zones dans le fichier /etc/named.rfc1912.zones
Diodio MBODJ Page 10
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo « jojo.sn » est la zone d’accès direct « direct » est la référence au fichier direct « 20.168.192.in.addr.arpa » est la zone d’accès inversée « inverse » est la référence au fichier inverse notify no indique que ce serveur va travailler pour son compte. Cette option est utile lorsque plusieurs plusieurs DNS doivent se synchroniser. Ce n'est pas notre cas. cas. type master indique que nous sommes le serveur d’autorité pour cette zone. Il convient maintenant maintenant de créer les deux fichiers référencés ci-dessus ci-dessus : direct et inverse Ils doivent être dans /var/named/. Pour aller plus vite dans cette démarche, on peut peut copier le fichier named.local named.local tout en le renommant.
Il faut maintenant éditer ces fichiers :
Diodio MBODJ Page 11
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo On peut découper ce fichier en deux parties: • L'en-tête: qui commence au début du fichier $TTL et se finit à la “)” • Les enregistrements de la zone, à savoir le reste du fichier.
Concernant l’entête :
$TTL : l'indication du TTL (Time To Live) ou la durée de vie de la zone, exprimée en secondes par défaut, ou dans une autre unité si on la spécifie. SOA :est l’abréviation de « Start of Authority » (origine de l’autorité).Le @ est une notation spéciale qui désigne l’origine. Et comme le nom de la zone est jojo.sn, la première ligne signifie donc : jojo.sn IN
SOA ……..
servdns.jojo.sn. servdns.jojo.sn. : nom du serveur faisant faisant autorité pour pour la zone. root.jojo.sn. : email du responsable technique de la zone en remplaçant le “@” de l'email par un “.”
Serial : Le numéro de version de la zone. Ce chiffre est particulièrement important. A chaque fois que l’on modifie quoi que ce soit dans un fichier de zone, on doit impérativement impérativement incrémenter ce numéro, autrement les changements ne seront pas pris en compte par le reste du monde et particulièrement par le serveur secondaire. C'est ce numéro, s'il est incrémenté, incrémenté, qui indique au reste du monde que notre zone a subi un changement et que donc les autres serveurs DNS doivent redemander la zone de notre serveur pour prendre en compte ces changements.
Diodio MBODJ Page 12
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo On a l'habitude de suivre une règle simple pour être sûr d'incrémenter ce numéro de version, on le compose par la suite des chiffres de l'année en cours, mois, jour et le nombre de changements effectués effectués ce jour là: Donc par exemple si on modifie modifie la zone le 10 juillet 2005 , on va mettre 2005 200507 0710 1001 01, puis on le modifie à nouveau le même jour, donc ce serial devient 2005 200507 0710 1002 02 , et si on modifie à nouveau le fichier le 15 août de la même année le serial devient alors 2005 200508 0815 1501 01. Refresh : Temps en secondes d'attente d'attente du serveur secondaire avant de contrôler contrôler si le serveur primaire a subi une modification au niveau de sa zone. Sur 8 chiffres max. Retry : Temps d'attente du serveur secondaire secondaire avant de faire à nouveau une demande si le serveur primaire n'a pas répondu à une requête. Sur 8 chiffres max. Expire : Temps pendant lequel le serveur secondaire va conserver les données en cache. Si ce délai est dépasse et que le serveur secondaire n'a pas pu contacter le serveur primaire, il va alors considérer que les données qu'il a en cache ne sont plus fiable et ne pourra plus servir de serveur secondaire pour la zone tant qu'il n'aura pas réussi à contacter le serveur primaire. Sur 8 chiffres max. Minimum : Valeur par défaut de ttl t tl des enregistrements. On peut spécifier les ttls au niveau de chaque enregistrement, mais d'une manière générale on défini ici un ttl qui vaut pour tous les enregistrements.
Concernant la suite :
servdns IN A 192.168.20.1 Nous indiquons ici que l'hôte servdns correspond à l'adresse 192.168.20.1 Tous les enregistrements d'une zone suivent cette syntaxe : hôte_ou_wildcard
Diodio MBODJ Page 13
(ttl facultatif)
ETUDIANTE EN DITI5
classe
type (priorité_si_besoin) valeur
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo hôte_ou_wildcard hôte_ou_wildcard : indique si on défini une machine machine ou un ensemble de machine. machine.
classe : type de classe, a comme valeur IN pour l'Internet.
Type : Indique quel type d'enregistrement nous sommes sommes en train de définir. Les types les plus utilisés sont A pour une adresse, CNAME pour un alias de nom, NS pour un serveur de nom, MX pour un serveur de Mail, TXT pour des commentaires.
(priorité_si_besoin) (priorité_si_besoin) : Si le type à besoin d'une priorité, nous l'indiquons ici. Valeur : la valeur ou la donnée de l'enregistrement que nous définissons.
Dans notre exemple ci-dessus, nous indiquons ici que l'hôte par ex, « www » correspond à l'hôte « servdns.jojo.sn ». On aurait pu aussi le définir en type A et mettre l'adresse ip correspond à « « servdns.jojo.sn » comme valeur. Mais dans ce cas, si la machine « « servdns.jojo.sn » change d'adresse IP IP on doit doit modifier modifier la valeur de « www» pour la zone « jojo.sn »
Donc le champ CNAME (canonical name) sert à donner plusieurs noms à la même machine.
Enfin il est sage de suivre la règle selon laquelle laquelle un champ CNAME, MX ou SOA ne doit jamais se référer à un un champ déjà défini défini avec CNAME mais toujours se référer référer à un champ A.
Diodio MBODJ Page 14
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo Configuration du fichier inverse
PTR dit que l’adresse « 1 » dans le sous réseau 20.168.192.in-addr.arpa, donc 192.168.20.1 est appelé servdns.jojo.sn ; c’est la résolution inverse.
Diodio MBODJ Page 15
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo Test du Bon fonctionnement
Diodio MBODJ Page 16
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo Attribution de droits des fichiers direct et inverse au user named avec la commande chown
Diodio MBODJ Page 17
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo
Diodio MBODJ Page 18
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo Test des fichiers de configuration en de Problème
Diodio MBODJ Page 19
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo B) DNS SECONDAIRE Rappel : Distribution : Centos 5.5 Nom du serveur : servsecond Adresse IP du serveur : 192.168.20.2 Nom du domaine : jojo.sn Network : 192.168.20.0/24
Cas d’un serveur DNS secondaire, ce dernier sera configuré dans une autre machine
Centos. Il peut s’avérer utile d’installer un se rveur DNS secondaire. En effet,
si le
primaire tombait en panne, le secondaire pourrait prendre le relais de la résolution de nom. L’installation est la même que pour le serveur DNS Primaire. Par contre le
paramétrage du fichier /etc/named.rfc1912.zones est différent. Dans le server DNS Secondaire,
Le fichier /etc/named.rfc1912.zones
zone "jojo.sn" {
(zone à ajouter dans le fichier)
type slave;
(slave montre qu’il s’agit d’un DNS secondaire)
file " direct";
(fichier qui sera créé dans /var/named)
masters { 192.168.20.1; };
(adresse IP du DNS primaire)
};
Diodio MBODJ Page 20
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo zone "20.168.192.in-addr.arpa" {
(Idem ci-dessus)
type slave; file " inverse";
masters { 192.168.20.1; }; }; Bien entendu, certaines modifications sont à apporter dans le fichier /etc/named.rfc1912.zones du DNS principal. Il faut ajouter les commandes allow-
transfer et notify yes de la manière suivante :
Dans le server DNS Primaire,
Le fichier /etc/named.rfc1912.zones
zone "jojo.sn" { notify yes; type master; allow-transfer allow-transfer { 192.168.20.2; };
(adresse IP du DNS secondaire)
file "direct"; };
zone "20.168.192.in-addr.arpa" { notify yes; type master; Diodio MBODJ Page 21
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO
JoJo allow-transfer allow-transfer { 192.168.20.2; };
(adresse IP du DNS secondaire)
file "inverse"; };
Paramétrés ainsi, le DNS secondaire se mettra à jour automatiquement. Si le DNS primaire tombe en panne, il pourra prendre le relais sans problème.
Diodio MBODJ Page 22
ETUDIANTE EN DITI5
ISI 2011-2012
[email protected] Prof : Massamba LO