Gérer un serveur de nom sur son dédié.

Nous allons voir ici l’installation d’un serveur de Nom (DNS). Même si un tel serveur n’est franchement pas utile pour gérer quelques noms de domaines. Pour rappel, on nomme aussi DNS l’ensemble du système qui permet de transformer un nom (www.domaine.com) en adresse I.P.. Dans ce cas, DNS signifie Domaine Name Service.

Nous allons nous intéresser au Domaine Name Server que nous allons installer via debian mais l’installation diffère peu entre toutes les versions de Linux.

Le principe de fonctionnement

Généralement les serveurs de noms marchent par deux. Un primaire et un secondaire (la copie du primaire). Ceci principalement pour l’intégrité des données et avoir une roue de secours en cas de panne du serveur primaire.

Les informations des DNS sont regroupées par Zone, une zone peut être primaire ou secondaire. Voyons un peu plus loin un fichier de configuration en installant Bind.

Nous allons installer la version 9 de Bind qui est la plus sécurisée

apt-get install bind9

cd /etc/bind/

pico named.conf

Le fichier named.conf contient les informations de toutes les zones. L’installeur nous a normalement configuré par défaut plusieurs zones de ce type

zone "localhost" {

        type master;

        file "/etc/bind/db.local";

};

Le nom de la zone (ici localhost) doit être contenu entre guillemet, il s’agit du nom que l’on tape par exemple dans un navigateur. Par exemple votredomaine.com

Le type définit si la zone est primaire ou secondaire, dans ce cas le paramètre master définit une zone primaire.

Enfin le paramètre file indique un fichier contenant tous les autres paramètres de la zone.

Par conséquent, on ajoutera la gestion de notre nom de domaine en ajoutant une zone de ce type

zone "sos-dedie.com" {

        type master;

        file "/etc/bind/db.sos-dedie.com";

};

Donc c’est très simple.

Configuration d’une zone.

Maintenant que nous avons déclaré notre zone il faut donner les renseignements sur les services de cette zone dans le fichier db.sos-dedie.com

Tout d’abord commence une déclaration

$TTL 86400

Cette variable indique simplement la durée de vie de tout enregistrement (si une instruction contraire dans l’enregistrement n’est pas mentionnée)

@       IN      SOA     ns1.sos-dedie.com. postmaster.sos-dedie.com. (

					20050321        ;Serial

                       			604800          ;Refresh

                       			86400           ;Retry

                       			2419200         ;Expire

                       			604800  )       ;Cache TTL

Cette partie indique des paramètres généraux. Le signe @ correspond au nom de la zone. Ensuite nous déclarons le nom de notre serveur DNS et l’adresse email du responsable. Veuillez noter que le nom du serveur se termine par un point et que l’adresse du responsable ne contient pas d’arobase, celui-ci est remplacé par un point.

Le serial est un nombre, par convention la date à l’envers permettant aux autres serveurs de reconnaître une nouvelle configuration. Si vous changez le fichier, n’oubliez pas de remettre ce serial à jour. Les autres champs : Refresh, Retry, Expire, et Cache TTL indique aux serveurs esclaves divers paramètres de rafraîchissement.

 @       IN      NS      	ns1.sos-dedie.com.

Cette ligne indique que pour cette zone (pour rappel @ remplace sos-dedie.com) il existe un serveur de nom qui s’appelle ns1.sos-dedie.com.

@	IN        A       84.244.3.78

Ensuite on indique l’adresse IP effective du nom de domaine sos-dedie.com, pour une adresse IPv6 (nouvelle version du protocole IP) vous devez remplacer A par AAAA

@	IN	MX      5 mail

Enfin, on indique que l’adresse du serveur de courrier sera mail.sos-dedie.com et que celui-ci a une priorité de 5. On pourrait rajouter d’autres adresses de serveurs de courrier en créant d’autre ligne identique et en changeant la priorité et l’adresse. Les priorités permettent d’essayer l’accès à plusieurs serveurs de courrier dans l’ordre de la priorité.

Enfin nous finissons en indiquant que mail et www ont une adresse IP

www	IN      A       84.244.3.78

mail	IN      	A       84.244.3.78

Remarquez que pour ces deux lignes on ne mentionne pas www.sos-dedie.com. Ou mail.sos-dedie.com. En effet, Bind rajoute automatiquement le nom de la zone si la mention de la colonne de gauche ne contient pas de . à la fin. Comme ici c’est le cas, bind interprete donc www comme étant www.sos-dedie.com.

Comme d’habitude on fait un restart du service

  /etc/init.d/bind9 restart

On peut regarder ce que nous dit Bind dans le syslog

tail /var/log/syslog

Et enfin on peut tester la résolution des noms avec la commande host

apt-get install bind9-host

host www.yahoo.fr ns1.sos-dedie.com

Normalement, la commande nous renvoi quelquechose de ce genre

Using domain server:

Name: ns1.sos-dedie.com

Address: 84.001.2.8#53

Aliases:

www.yahoo.fr is an alias for www.euro.yahoo.akadns.net.

www.euro.yahoo.akadns.net has address 217.12.3.11

qui indique bien que le nom www.yahoo.fr a été résolu grâce à notre serveur de nom dont l’adresse est ns1.sos-dedie.com

Dernière étape

Il ne reste plus qu’à indiquer à notre registrar nos nouveaux serveurs de noms. Nous lui indiquons donc que le DNS primaire est maintenant ns1.sos-dedie.com. Comme il ne connaît pas du tout ce serveur de nom, il y a de forte chance qu’il vous demande son adresse IP.