Configuration Bind9 et paramétrage avec OVH

Blog > Administration serveur dédié

Ce tutoriel s’adresse aux personnes souhaitant configurer un serveur DNS Bind9 sous Linux.

Il détaille également comment déclarer et gérer ses domaines dans le manager d’OVH.

Il s’appuie sur un cas concret rencontré lors de la configuration du domaine idneo.fr sur un serveur VPS tournant sous ubuntu mais pourra être facilement adapté aux autres distributions linux.

Configuration du serveur

  • Ubuntu 15.04
  • Bind 9.9.5
  • Adresse ip : 51.254.103.213
  • Nom : vps196126.ovh.net

Introduction sur le DNS

Tous les ordinateurs connectés à un réseau possèdent une adresse IP permettant leur identification et la communication entre les machines (exemple d’adresse au format IPv4 : 91.121.172.143). Ces identifiants numériques sont très facilement manipulables par les ordinateurs mais difficilement mémorisable pour les utilisateurs. C’est pourquoi avec le développement des réseaux est rapidement né la nécessité de pouvoir accéder à une machine par un identifiant alphanumérique facilement mémorisable plutôt que par une adresse IP.

Pour répondre à cette problématique, le système des noms de domaine a été mis en place ainsi que des services permettant de convertir les noms de domaines manipulés par les utilisateurs en adresses IP manipulables par les ordinateurs. Le Domain Name System (DNS) est le service assurant actuellement cette tâche. Il a fait sont apparition en 1983 en remplacement d’un système de résolution par l’intermédiaire d’un fichier texte centralisé HOSTS.TXT maintenu par le Network Information Center.

Le DNS est un système réparti, composé de centaines de milliers de serveur à travers le monde, permettant de résoudre les noms de domaine en IP et inversement de déterminer quels noms de domaines sont associés à une IP.

Les deux type de serveur DNS qui nous intéressent sont :

  • Serveur DNS primaire : chargé de la résolution des noms et de la résolution inverse
  • Serveur DNS secondaire : seconde le DNS primaire en cas de défaillance

Il existe également des serveurs DNS cache qui conservent en mémoire la réponse des résolutions de nom afin d’améliorer le temps de réponse du système.

La partie culturelle du tutoriel est terminée on va pouvoir passer aux choses sérieuses !

Déclaration du domaine sur le DNS secondaire d’OVH

On se connecte au manager d’ovh, on sélectionne le VPS et on accède à la section DNS secondaire :

Web -> VPS -> Mode expert -> DNS secondaire -> Ajouter un domaine

On demande le prise en charge de notre domaine pour le dns secondaire d’Ovh.

  • Lors de l’étape 1, on ajoute le nom de domaine seul. Il ne doit pas être précédé de « www » ou tout autre préfixe.
  • Lors de l’étape 2, on valide notre demande d’ajout et on relève le nom du DNS secondaire (ici : sdns2.ovh.net)

Une fois le formulaire remplis, une procédure de vérification de la propriété du domaine pourra être demandée. Il suffira alors de relever la valeur communiqué dans l’encadré rouge et nous l’utiliserons plus tard

Important : L’exemple donné ici est pour un VPS, mais cette méthode sera la même pour les serveurs dédiés ou les serveurs kimsufi. Seule la localisation du bouton d’ajout de votre domaine au DNS secondaire changera.

Installation de Bind9

L’installation de Bind9 ne pose aucune difficulté

$ apt-get install bind9

Configuration de Bind9

Déclaration des zones

On édite le fichier /etc/bind/named.conf.local et on y ajoute les deux zones qui vont être utilisées par le domaine.

Zone assurant la résolution de domaine

Cette zone assure la traduction du nom de domaine en adresse IP.

zone "idneo.fr" {
  type master;
  file "/etc/bind/zones/db.idneo.fr";
};

Zone de reverse

Elle assure l’opération inverse en permettant de retrouver un domaine à partir d’une adresse IP.
Le nom de la zone est constitué de l’adresse IP du serveur prise en sens inverse à laquelle on ajoute « .in-addr.arpa ».

Dans notre cas, l’adresse du serveur est 51.254.103.213, on devra donc définir la zone de la manière suivante :

zone "213.103.254.51.in-addr.arpa" {
  type master;
  file "/etc/bind/zones/213.103.254.51.in-addr.arpa";
};

Explications complémentaires

type master : Précise que cette configuration est celle du serveur primaire.
file : Adresse du fichier de zone.
allow-transfer : Adresse IP autorisée à copier le fichier de zone.

Création des fichiers de zone

On crée le répertoire zones et l’on y crée les fichiers détaillant les deux zones déclarées précédemment.

$ mkdir /etc/bind/zones

/etc/bind/zones/db.idneo.fr

$TTL 12H
$ORIGIN idneo.fr.
@          IN              SOA             vps196126.ovh.net. postmaster.idneo.fr. (
           2015080801      ; Serial
           8H              ; Refresh
           30M             ; Retry
           4W              ; Expire
           8H              ; Minimum TTL
)
           IN              NS              vps196126.ovh.net.
           IN              NS              sdns2.ovh.net. 
           IN              MX      10      mail.idneo.fr.
idneo.fr.  IN              A 51.254.103.213
ns         IN              A 51.254.103.213
mail       IN              A 51.254.103.213
www        IN              CNAME           idneo.fr.
ftp        IN              CNAME           idneo.fr.
ownercheck IN              TXT             "2a1187d9"

/etc/bind/zones/213.103.254.51.in-addr.arpa

$TTL 12H
@          IN              SOA             vps196126.ovh.net. postmaster.idneo.fr. (
           2015080801      ; Serial
           8H              ; Refresh
           30M             ; Retry
           4W              ; Expire
           8H              ; Minimum TTL
)
           IN NS   vps196126.ovh.net.
           IN NS   sdns2.ovh.net.
           IN PTR  idneo.fr.

Explications complémentaires

$TTL (Time To Live) : Définit la durée pendant laquelle l’enregistrement sera conservé par les DNS cache.
$ORIGIN : Le nom du domaine.
Détail du SOA :

  • vps196126.ovh.net. : Nom pleinement qualifié du serveur de nom.
  • postmaster.idneo.fr. : Adresse mail de l’administrateur du domaine (l’arobase de l’adresse est remplacée par un . ).
  • Serial : Numéro de série permettant au serveur secondaire de savoir si il doit se mettre à jour. Il doit dont être incrémenté à chaque modification du fichier. Son écriture est libre mais par convention il est généralement composé de la manière suivante : yyyymmdd + numéro de la modification. Dans notre cas, il s’agit de la première modification du 8 août 2010.
  • Refresh : Fréquence à laquelle le serveur secondaire vient consulter le serveur primaire.
  • Retry : Délai au bout duquel il retente de consulter le serveur primaire si il n’a pas répondu lors du refresh.
  • Expire : Durée après laquelle il considérera que le serveur primaire a été retiré du service.
  • Minimum TTL : Durée de vie minimum du cache.

NS : Noms des serveurs de nom gérant le domaine (la deuxième ligne correspond au « Nom d’host secondaire » que l’on a relevé dans le manager d’ovh) .
MX : Adresse des relais pour le courrier électronique.
A : Enregistrement associant un nom à une adresse IP.
CNAME : Alias renvoyant le nom à droite vers le serveur inscrit à gauche (très utile pour les hôtes virtuels).
TXT : Texte demandé par OVH pour prouver que le domaine nous appartient, on indiwue la valeur fournie dans le manager.
PTR : Précise les zones gérées par cette IP.

Important : La présence ou l’absence des . derrière les noms permet à bind de savoir si il s’agit de nom complet ou non.
Par exemple idneo.fr. sera laissé comme tel alors que mail sera compris comme mail.idneo.fr.

Tests de la configuration

Avant de charger les nouvelles zones, on s’assure qu’elles sont correctes.

Test de named.conf

$ named-checkconf /etc/bind/named.conf

Si aucun message d’erreur n’apparait c’est que tout fonctionne.

Test des fichiers de zone


$ cd /etc/bind/zones
$ named-checkzone idneo.fr db.idneo.fr
zone idneo.fr/IN: loaded serial 2015080801
OK
$ named-checkzone idneo.fr 213.103.254.51.in-addr.arpa
zone idneo.fr/IN: loaded serial 2015080801
OK

Notre configuration fonctionne, on peut forcer bind à la prendre en compte.

$ service bind9 reload

Important :Maintenant que Bind9 est configuré, il faudra penser à relancer la procédure de déclaration du domaine sur le DNS secondaire d’OVH dans la manager. Les étapes seront les même que précédemment, mais aucun message d’erreur apparaîtra.

Tests du serveur DNS

On teste à présent si notre serveur DNS répond correctement aux demandes depuis l’extérieur.
Grâce à la commande nslookup (disponible dans le paquet dnsutils) on commence par tester si la résolution de domaine fonctionne.

$ nslookup idneo.fr. vps196126.ovh.net
Server:         vps196126.ovh.net
Address:        51.254.103.213#53

Name:   idneo.fr
Address: 51.254.103.213

Tout fonctionne, on peut à présent tester la résolution inverse

$ nslookup 51.254.103.213 vps196126.ovh.net
Server:         vps196126.ovh.net
Address:        51.254.103.213#53

213.103.254.51.in-addr.arpa     name = idneo.fr.

On teste à présent le serveur secondaire afin de s’assurer qu’il a bien copié le fichier de résolution de domaine.
Pour cela on peut utiliser la première fonction nslookup en remplaçant vps196126.ovh.net par le nom d’host secondaire (ici sdns2.ovh.net). On peut également utiliser la commande dig qui nous fourni une multitude d’informations très utiles et notamment des informations sur les serveurs de nom gérant notre domaine.

$ dig idneo.fr +nssearch
SOA vps196126.ovh.net. postmaster.idneo.fr. 2015080801 600 1800 2419200 28800 from server 51.254.103.213 in 1 ms.
SOA vps196126.ovh.net. postmaster.idneo.fr. 2015080801 600 1800 2419200 28800 from server 213.251.188.141 in 0 ms.

On voit que deux serveurs de nom gèrent notre domaine et qu’ils ont tout les deux la version 2015080801 du fichier de zone.

Important : Si le serveur secondaire ne répond pas, c’est qu’il n’a pas encore chargé vos fichiers de zone. Il faudra attendre que cela soit fait pour continuer le tuto.

Si il répond, on s’assure que notre configuration est valide grâce au site https://www.zonemaster.fr/.

zonemaster

Modification des DNS du domaine depuis le manager d’OVH

On retourne dans le manager d’OVH et on sélectionne le domaine idneo.fr, puis on accède à la section Serveur DNS

reglage dns ovh

Il ne reste plus qu’à ajouter les deux serveurs DNS que l’on a configuré et attendre que les modifications soient prises en compte.

Astuce : Sans attendre la propagation des DNS, ont peux directement accéder au serveur avec le nom de domaine idneo.fr en modifiant le fichier hosts de windows (C:\WINDOWS\system32\drivers\etc\hosts). Il suffira d’insérer la ligne suivante et d’enregistrer.

51.254.103.213 idneo.fr

Inscrivez-vous à notre Newsletter

Recevez nos meilleurs articles et accédez au contenu exclussif reservé aux abonnés.

Cet article vous est proposé par IDNEO.

Notre agence de communication est spécialisée dans la création de sites Internet, le référencement, le graphisme et la photographie.

avatar