Sie sind auf Seite 1von 135

Domain Name System : DNS

Historique du nommage
 ARPANET(1970)
 HOST.TXT
 Rcupr partir d'une seule machine
 Problmes
o trafic et charge
o Collisions de noms
o Cohrence
 Le DNS a t cr en 1983 par Paul Mockapetris (RFCs 1034 et
1035), modifi, mis jour, et amlior par une multitude de RFCs:
2181, etc.

S.ALLAOUI

Domain Name System : DNS


 Un mcanisme de correspondance d'objet en d'autres objets;
 Une base de donnes dynamique, globalement distribue,
cohrente, volutive et fiable;
 Compos de trois composantes :
 Une Zone == espace de nommage
 Les serveurs rendant l'espace de nommage disponible
 Les resolvers (clients) qui questionnent les serveurs propos
de l'espace de nommage

S.ALLAOUI

Domain Name System : DNS


Lorsque les htes d'un rseau se connectent entre eux au moyen
d'un nom d'hte, auquel on fait rfrence galement sous le terme
nom de domaine pleinement qualifi ou FQDN (fully qualified domain
name), le DNS est utilis pour associer les noms des diffrents
ordinateurs l'adresse IP de l'hte.
Le Systme de nom de domaine (DNS) fournit une correspondance
de noms en des ressources de plusieurs types

S.ALLAOUI

Domain Name System : DNS


L'utilisation du DNS et du FQDN offre aux administrateurs systme de
nombreux avantages et leur permet, en outre, de changer facilement
l'adresse IP d'un hte sans avoir d'impact sur les requtes bases sur
le nom qui sont envoyes cet ordinateur.

S.ALLAOUI

Domain Name System : DNS


Arborescence des noms de domaine
Chaque domaine appartient un domaine de niveau suprieur et peut
contenir des sousdomaines. Au sommet de l'arbre se trouve le domaine
racine (dsign par . ) et au premier niveau se trouve les domaines
de haut niveau (TLD : Top Level Domains).
Les TLD sont de deux types :
Les domaines de haut niveau gnriques (gTLD : generic Top Level
Domains) tels que .com, .org, .net, etc. ;
Les domaines de haut niveau relatifs aux codes des pays (ccTLD :
country code Top Level Domains) tels que .tn, .fr, .ca, .uk, .us, etc.
S.ALLAOUI

Domain Name System : DNS


Arborescence des noms de domaine
La gestion de tous les domaines est organise d'une manire
hirarchique en appliquant le mcanisme de dlgation.

S.ALLAOUI

Domain Name System : DNS


Arborescence des noms de domaine
L'ICANN (Internet Corporation for Assigned Numbers and Names) est
l'organisme autoritaire du domaine racine. L'ICANN dlgue la gestion
des domaines gTLD des organismes accrdits et les domaines
ccTLD aux pays correspondants.

S.ALLAOUI

Domain Name System : DNS


Arborescence des noms de domaine
Par exemple, le nom de domaine www.societe.com se compose de
deux parties www et societe.com . Le nom de domaine
societe.com a t dlgu la societe par un organisme accrdit
de niveau gTLD grant .com . Ce dernier a t son tour dlgu
par l'ICANN. La partie www correspond un nom d'hte attribu
par la socit, l'organisme autoritaire du domaine societe.com .

S.ALLAOUI

Domain Name System : DNS


Arborescence des noms de domaine
Les serveurs DNS racines (root DNS) sont sous la responsabilit de
l'ICANN. Il existe plusieurs serveurs racines rpartis sur Internet. Ces
serveurs doivent tre connus par tous les serveurs DNS publics car ils
reprsentent le point de dpart des oprations de recherche.
Les serveurs DNS TLD (gTLD ou ccTLD) sont grs par des agences
ou des organismes tels que l'Agence franaise pour le nommage
Internet en coopration (AFNIC) pour le domaine .fr et l'Agence
Nationale de Rglementation des Tlcommunications (ANRT) pour
le domaine .ma .

S.ALLAOUI

Domain Name System : DNS


Arborescence des noms de domaine
le domaine in-addr.arpa
Pour pouvoir rsoudre une adresse en nom, un pseudo-domaine a t
mis en place : le domaine in-addr.arpa.

S.ALLAOUI

Domain Name System : DNS


Rsolution de noms
Le resolver
Pour interroger un serveur de noms, on passe par une bibliothque
appele "resolver". Il s'agit d'un ensemble de fonctions crites en C
(comme gethostbyname, par exemple). Cette bibliothque est
indpendante du serveur DNS.
Il faut d'abord modifier deux fichiers pour indiquer quels services de
conversion de noms sont disponibles et quels serveurs de noms
utiliser.

S.ALLAOUI

Domain Name System : DNS


Rsolution de noms
Le resolver
Le fichier /etc/nsswitch.conf indique quels services de conversion de
noms sont disponibles, et dans quel ordre il faut les appliquer :
passwd: files nisplus

hosts: dns files


Le fichier de configuration du resolver s'appelle /etc/resolv.conf et
dtermine les serveurs DNS qui sont utiliss.
nameserver Addresse_IP_Serveur_DNS

S.ALLAOUI

Domain Name System : DNS


Rsolution de noms
Lorsqu'une application rseau veut communiquer en utilisant un nom
de domaine, elle demande la rsolution de la correspondance IP
l'application client DNS locale (resolver).
D'aprs la configuration (/etc/resolv.conf), le resolver consulte le DNS
adquat pour assurer cette correspondance.

S.ALLAOUI

Domain Name System : DNS


Rsolution de noms
Les tapes suivantes dcrivent le processus de rsolution du nom de
domaine www.exemple.com .
1. Le client DNS de l'hte envoie la requte de rsolution du nom de
domaine www.exemple.com au serveur DNS local ;
2. Le serveur DNS local cherche l'information dans sa table locale
(cache). Si l'information existe, le serveur envoie la rponse vers le
client DNS et le traitement de la requte est termin. Sinon, le
processus de rsolution de nom se poursuit avec les tapes suivantes :

S.ALLAOUI

Domain Name System : DNS


Rsolution de noms
Les tapes suivantes dcrivent le processus de rsolution du nom de
domaine www.exemple.com .
3. La requte est envoye vers un serveur racine qui renvoie
l'adresse d'un serveur TLD grant le domaine .com ;
4. La requte est envoye au serveur TLD .com qui renvoie
l'adresse du serveur DNS grant le domaine exemple.com ;
5. La requte est envoye au serveur DNS grant exemple.com
qui envoie la rponse vers le client DNS.

S.ALLAOUI

Domain Name System : DNS


Rsolution de noms
Le resolver permet de lancer la rsolution de nom en deux modes :
Mode rcursif : le client envoie une requte au serveur DNS; ce
dernier renvoie une rponse complte au client qui soit la
correspondance recherche soit un message derreur.
Mode itratif (non rcursif) : le client envoie une requte au serveur
DNS; ce dernier renvoie soit la rponse complte (sil est autoritaire
pour la zone concerne) soit une rponse partielle (adresse dun autre
serveur de noms). Le client va alors lancer une autre requte vers le
serveur spcifi dans la rponse prcdente.

S.ALLAOUI

Domain Name System : DNS


Rsolution de noms
Rsolution rcursive

La rsolution est dite


rcursive si les requtes
des tapes 3, 4 et 5 sont
envoyes par le serveur
local.

S.ALLAOUI

Domain Name System : DNS


Rsolution de noms
Rsolution itrative

La rsolution est dite


itrative si ces requtes
sont envoyes par le client
DNS lui-mme.

S.ALLAOUI

Domain Name System : DNS


Rsolution de noms
Le service DNS est une application TCP/IP fonctionnant sur le port 53
et utilisant les deux protocoles UDP et TCP.
le service transport UDP est utilis pour les requtes et les rponses.
le service transport TCP est utilise pour le transfert des zones entre
un serveur primaire et un serveur secondaire.

S.ALLAOUI

Domain Name System : DNS


Zones de serveurs de noms
 Les zones sont des espaces administratifs
 Les administrateurs de zone sont responsables pour la portion de
l'espace de nommage du domaine
 L' administrateur d'un domaine peut dlguer la responsabilit de la
gestion d'un sous domaine quelqu'un d'autre

S.ALLAOUI

Domain Name System : DNS


Zones de serveurs de noms
Les zones sont dfinies sur des serveurs de noms qui font autorit par
l'intermdiaire de fichiers de zone. Les fichiers de zone sont stocks
sur des serveurs de noms primaires (aussi appels serveurs de noms
matres), qui font vraiment autorit et constituent l'endroit o des
changements peuvent tre apports aux fichiers ; les serveurs de noms
secondaires (aussi appels serveurs de noms esclaves) quant eux
reoivent leurs fichiers de zone des serveurs de noms primaires.

S.ALLAOUI

Domain Name System : DNS


Zones de serveurs de noms
Tout serveur de noms peut tre simultanment matre ou esclave pour
diffrentes zones et peut aussi tre considr comme faisant autorit
pour de multiples zones. Tout cela dpend de la configuration du
serveur de noms.

S.ALLAOUI

Domain Name System : DNS


Domain versus Zone

Zones et dlgation

S.ALLAOUI

Domain Name System : DNS


Zones et dlgation

S.ALLAOUI

Domain Name System : DNS


DNS versus UNIX

 Structure sous forme darbre


 NOM DNS versus Nom de fichier
 DNS database versus UNIX filesystem
 Domain names versus UNIX directory

S.ALLAOUI

Domain Name System : DNS


DNS versus UNIX
DNS database versus UNIX filesystem

S.ALLAOUI

Domain Name System : DNS


DNS versus UNIX
Nom DNS versus Nom de fichier

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
BIND en tant que serveur de noms
L'Universit de Berkeley est l'origine de BIND mais, actuellement,
c'est lInternet System Consortium (ISC) qui assure sa maintenance.
Le dmon named est le serveur DNS fourni par le paquetage BIND
Une fois lanc, named enregistre son numro de processus (PID :
Process IDentifier) dans le fichier /var/run/named.pid.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
BIND stocke ses fichiers de configuration aux emplacements suivants :
/etc/named.conf : Le fichier de configuration du dmon named.
/var/named/ : Le rpertoire de travail de named qui stocke les
fichiers de zone, de statistiques et les fichiers de cache.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Syntaxe et options
La syntaxe de lancement du dmon named est :
# named [option ]
Les options les plus courantes de named sont :
-c fichier : spcifie un fichier de configuration autre que named.conf ;
-p port : indique le numro de port d'coute du serveur, par dfaut
c'est le port 53 ;
-u utilisateur : spcifie le contexte de l'utilisateur dans lequel sera
excut le dmon.
-v : affiche la version.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Signaux
Le dmon named ragit certains signaux (envoys par la commande
kill) d'une manire particulire :
SIGHUP : le dmon relit le fichier de configuration ainsi que les
fichiers de zone ;
SIGINT et SIGTERM : le dmon s'arrte normalement.
Dans un fonctionnement normal, l'utilisation de la commande rndc est
prfre aux envois de signaux.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Dmarrage et arrt
Pour dmarrer ou arrter le dmon named, la majorit des
distributions Linux utilisent les scripts RC ou des commandes
quivalentes. Les lignes de commandes qui suivent sont utilises pour
les distributions Debian et drives :
# /etc/init.d/bind9 {start|stop|reload|restart|status}
# # ceci est quivalent :
# invoke-rc.d bind9 {start|stop|reload|restart|status}

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Les commandes quivalentes pour les distributions Red Hat et
drives sont :
# /etc/init.d/named {start|stop|reload|restart|status}
# # ceci est quivalent :
# service named {start|stop|reload|restart|status}
Pour installer loutil system-config-bind

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichier de configuration named.conf
named.conf est le fichier de configuration principal du serveur DNS
BIND. Il est le premier fichier lu par named. La directive include permet
de rpartir la configuration sur plusieurs fichiers pour des fins de clart
ou d'organisation.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichier de configuration named.conf
named.conf est structur en clauses regroupant chacune un ensemble
d'instructions sous la forme d'un bloc. Il faut imprativement respecter
la syntaxe du fichier qui peut tre rsume par les rgles suivantes :
 une instruction se termine par ; ;
 un bloc d'instruction dbute par { et se termine par }; ;
 un commentaire est crit sous l'une des formes suivantes :
/* commentaire au style C */
// commentaire au style C++
# commentaire au style PERL/SHELL

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichier de configuration named.conf
acl (access control list) dfinit des groupes d'htes qui peuvent tre
autoriss ou non accder au serveur de noms.;
acl <acl-name> {
<match-element>;
[<match-element>; ...]
};
<acl-name> le nom de la liste du contrle d'accs
<match-element> une liste d'adresses IP spares entre elles par un
point virgule. Une adresse IP individuelle ou la notation rseau de l'IP
(telle que 10.0.1.0/24).
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichier de configuration named.conf
Les listes de contrle d'accs suivantes sont dj dfinies en tant que
mots-cls afin de simplifier la configuration :
any : Correspond toutes les adresses IP.
localhost : Correspond toute adresse IP utilise par le systme local.
localnets : Correspond toute adresse IP sur tout rseau auquel le
systme local est connect.
none : Ne correspond aucune adresse IP.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichier de configuration named.conf
Lorsqu'elles sont utilises avec d'autres dclarations (telles que la
dclaration options), les dclarations acl peuvent tre trs utiles pour
viter la mauvaise utilisation d'un serveur de noms BIND.
L'exemple ci-dessous tablit deux listes de contrle d'accs et utilise
une dclaration options pour dfinir la manire dont elles seront
traites par le serveur de noms :

S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration acl
acl Denied_Network {
10.0.2.0/24;
192.168.0.0/24;
};
acl Allowed_Network {
10.0.1.0/24;
};
options {
allow-query { Allowed_Network; };
allow-recursion { Allowed_Network; };
}
S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration options
La dclaration options dfinit les options globales de configuration
serveur et tablit des valeurs par dfaut pour les autres dclarations.
Cette dclaration peut tre utilise entre autres pour spcifier
l'emplacement du rpertoire de travail named ou pour dterminer les
types de requtes autoriss.
Syntaxe:
options {
<option>;
[<option>; ...]
};
S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration options
Ci-dessous figure une liste des options couramment utilises :
allow-query : Spcifie les htes autoriss interroger ce serveur de
noms. Par dfaut, tous les htes sont autoriss interroger le serveur
de noms. Il est possible d'utiliser ici une liste de contrle d'accs ou un
ensemble d'adresses IP ou de rseaux afin de n'autoriser que des
htes particuliers interroger le serveur de noms.
allow-query-cache : de mme que Allow-query mais pour le cache de
serveur DNS.Cette option vitra les attaques sur le serveur Bind.

S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration options
allow-recursion : Semblable allow-query, cette option s'applique
des demandes rcursives. Par dfaut, tous les htes sont autoriss
effectuer des demandes rcursives sur le serveur de noms.
directory : Change le rpertoire de travail named pour une valeur
autre que la valeur par dfaut, /var/named/.
forwarders : Spcifie une liste d'adresses IP valides correspondant
aux serveurs de noms vers lesquels les requtes devraient tre
envoyes pour la rsolution.
S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration options
forward : Contrle le comportement de retransmission d'une directive
forwarders.
Les options suivantes sont acceptes :
o first : tablit que les serveurs de noms spcifis dans la directive
forwarders soient interrogs avant que named ne tente de rsoudre le
nom lui-mme.
o only : Spcifie que named ne doit pas tenter d'effectuer lui-mme
une rsolution de nom dans le cas o des demandes vers les serveurs
de noms spcifis dans la directive forwarders chouent.
S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration logging
La clause logging permet de paramtrer les oprations de
journalisation. Elle comporte plusieurs instructions, dont channel et
category sont les plus importantes. L'instruction channel dfinit la
destination des messages de journalisation et l'instruction category
dtermine l'information journaliser.

S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration logging
EXEMPLE

Le paramtrage de la clause logging suivante configure named de


faon ce quil envoie les messages de dbogage relatifs aux
requtes DNS vers le fichier /var/log/query.log.
logging {
channel query.log {
file "/var/log/query.log";
severity debug 3; // les valeurs de debug sont 1(par dfaut),2 et 3
};
category queries { query.log; };
};
S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration zone
Une dclaration zone dfinit les caractristiques d'une zone telle que
l'emplacement de ses fichiers de configuration et les options
spcifiques la zone. Cette dclaration peut tre utilise pour
remplacer les dclarations globales d'options.
Une dclaration zone se prsente sous le format suivant :
zone <zone-name> <zone-class> {
<zone-options>;
[<zone-options>; ...]
};

S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration zone
Parmi les options les plus courantes de la dclaration de zone figurent :
allow-query : Spcifie les clients qui sont autoriss demander des
informations propos de cette zone. Par dfaut toutes les requtes
d'informations sont autorises.
allow-transfer : Spcifie les serveurs esclaves qui sont autoriss
demander un transfert des informations relatvies la zone. Par dfaut
toutes les requtes de transfert sont autorises.

S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration zone
file : Spcifie le nom du fichier qui figure dans le rpertoire de travail
named et qui contient les donnes de configuration de la zone.
masters : Spcifie les adresses IP partir desquelles demander des
informations sur la zone faisant autorit. Cette option ne doit tre
utilise que si la zone est dfinie en tant que type slave.

S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration zone
type : Dfinit le type de zone. Les types numrs ci-dessous
peuvent tre utiliss.
Ci-aprs figure une liste des options valides :
forward : Retransmet toutes les requtes d'informations concerant
cette zone vers d'autres serveurs de noms
hint :Reprsente un type spcial de zone utilis pour diriger des
transactions vers les serveurs de noms racines qui rsolvent des
requtes lorsqu'une zone n'est pas connue autrement. Aucune
configuration autre que la valeur par dfaut n'est ncessaire avec une
zone hint.
S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration zone
master :Dsigne le serveur de noms faisant autorit pour cette zone.
Une zone devrait tre configure comme matre (master) si les fichiers
de configuration de la zone se trouvent sur le systme.
slave : Dsigne le serveur de noms comme serveur esclave (slave)
pour cette zone. Cette option spcifie galement l'adresse IP du
serveur de noms matre pour cette zone.

S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration zone
Exemples de dclarations zone
Ci-dessous se trouve un exemple de dclaration zone pour le serveur
de noms primaire hbergeant example.com (192.168.0.1) :
zone "example.com" IN {
type master;
file "example.com.zone";
allow-update { none; };
};
S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration zone
Exemples de dclarations zone
Ci-dessous se trouve un exemple de dclaration zone de serveur de
noms pour la zone example.com :
zone "example.com" {
type slave;
file "example.com.zone";
masters { 192.168.0.1; };
};

S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration Zones particulires
Le fichier named.conf inclut par dfaut la dclaration des zones
particulires racine, localhost et 127.in-addr.arpa :
le fichier de la zone racine, dsign par . et de type hint, contient
la liste des serveurs interroger lorsqu'un serveur de nom n'arrive
pas rsoudre une requte ;
la zone localhost permet la rsolution du nom localhost
l'adresse de boucle locale 127.0.0.1 lors de l'utilisation du serveur
DNS ;
la zone 127.in-addr.arpa assure la rsolution inverse de
l'adresse de boucle locale 127.0.0.1 .
S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Dclaration Zones particulires
EXEMPLE

La portion du fichier
named.conf qui suit illustre
la dclaration de ces
zones particulires.

zone "." {
type hint;
file "/etc/bind/db.root";
};
zone "localhost" {
type master;
file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Autres types de dclarations
include permet des fichiers d'tre inclus dans un fichier named.conf.
La dclaration include permet des fichiers d'tre inclus dans un
fichier named.conf. Ce faisant, des donnes de configurations
critiques (telles que les cls, keys) peuvent tre places dans un
fichier spar dot de permissions restrictives.
Une dclaration include se prsente sous le format suivant :
include "<file-name>"

S.ALLAOUI

Domain Name System : DNS


Fichier de configuration named.conf
Autres types de dclarations
controls : Configure diverses contraintes de scurit ncessaires
l'utilisation de la commande rndc pour administrer le service named.
key "<key-name>" Dfinit une cl spcifique par nom. Les cls
servent valider diverses actions, comme les mises jour
scurises ou l'utilisation de la commande rndc. Deux options sont
utilises avec key :
o algorithm <algorithm-name> : Reprsente le type d'algorithme
utilis, tel que dsa ou hmac-md5.
o secret "<key-value>" Reprsente la cl crypte.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichier de configuration named.conf
Le fichier named.conf est gnralement sous la forme :
// dfinition des ACL
acl "nomACL" {...};
// configuration de la journalisation
logging {...};
// dfinition des options globales
options {...};
// dclaration des zones prdfinies
zone {...};
// dclaration des zones rsoudre
zone {...} ;
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Les fichiers de zone contiennent des informations sur un espace de
nom particulier.
Ces informations sont stocks dans le rpertoire de travail named qui
est par dfaut /var/named/.
Le fichier de zone contient deux types de dclaration:
o Directives
o Enregistrements RR (Ressource Record)

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Directives des fichiers de zone
Les directives sont identifies par le symbole dollar ($)
$INCLUDE : Configure named de faon ce qu'il inclue un autre
fichier de zone dans ce fichier de zone l'endroit o la directive
apparat. Ce faisant, il est possible de stocker des configurations de
zone supplmentaires l'cart du fichier de zone principal.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Directives des fichiers de zone
$ORIGIN : Attache le nom de domaine des enregistrements nonqualifis, comme ceux qui spcifient seulement l'hte et rien de plus.
Par exemple, un fichier de zone peut contenir la ligne suivante :
$ORIGIN example.com.
Tous les noms utiliss dans les enregistrement de ressources qui ne
se terminent pas par un point (.) se verront ajouter example.com .

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Directives des fichiers de zone
$TTL : Rgle la valeur par dfaut de Time to Live (TTL) (ou temps de
vie) pour la zone. Cette valeur exprime en secondes, correspond la
dure pendant laquelle un enregistrement de ressources de zone est
valide.
Chaque enregistrement de ressources peut contenir sa propre valeur
TTL, qui remplace alors cette directive.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
Toutes les informations des divers fichiers de base de donnes named
sont stockes sous un format appel resource record
(enregistrement de ressources). Chaque enregistrement est associ
un type qui indique la fonction de lenregistrement.
Un enregistrement de ressources
dinformation utilis par named.

S.ALLAOUI

est

le

plus

petit

lment

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
Il existe de nombreux types d'enregistrements de ressources des
fichiers de zone. Ceux numrs ci-dessous sont nanmoins les plus
frquemment utiliss :
A : Enregistrement d'adresse qui spcifie une adresse IP assigner
un nom, comme dans l'exemple ci-dessous :
<host> IN A <IP-address>

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
Dans l'exemple qui suit, l'adresse 192.168.1.10 est associe au
nom serveur1.exemple.com
$ORIGIN exemple.com.
;nom ttl classe type ip
serveur1 IN. A 192.168.1.10

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
CNAME : Enregistrement de nom canonique mappant un nom un
autre. Ce type d'enregistrement est plus connu sous le nom
d'enregistrement d'alias.
<alias-name> IN CNAME <real-name>

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
L'exemple qui suit attribue les alias www.exemple.com
irc.exemple.com l'hte serveur1.exemple.com
$ORIGIN exemple.com.
;nom ttl classe type nomRelle
www IN CNAME serveur1.exemple.com
irc

IN CNAME serveur1.exemple.com
S.ALLAOUI

et

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
NS : Enregistrement de serveur de noms (NameServer) annonant
les serveurs de noms faisant autorit pour une zone particulire.
En gnral, Il est situ juste aprs l'enregistrement SOA et il est
utilis aussi pour dfinir les dlgations des sous domaines.
IN NS <nameserver-name>

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
La configuration qui suit dclare les htes dns.exemple.com et
dns2.exemple.com comme les serveurs DNS de la zone
exemple.com et dlgue la gestion du sous domaine
sd.exemple.com au serveur DNS dns.sd.exemple.com.

S.ALLAOUI

Domain Name System : DNS


$ORIGIN exemple.com.
BIND:
;SOA
RR Berkeley Internet Name Domain
;nom
ttl classe
Fichiers
detype
zonenom
IN
NS
dns.exemple.com.
Enregistrements
IN
NSde ressources
dns2.exemple.com.
dns
IN
A
192.168.1.1
dns2
IN
A
192.168.1.2
;sd.exemple.com est un sous domaine exemple.com
$ORIGIN sd.exemple.com.
IN
NS
dns.sd.exemple.com.
...
dns
IN
A
192.168.2.1
;ou sans utiliser la directive $ORIGIN
;sd.exemple.com.
IN
NS
;dns.sd.exemple.com.
IN
A
S.ALLAOUI

dns.sd.exemple.com.
192.168.2.1

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
MX : l'enregistrement de type MX spcifie les noms et les prfrences
des serveurs de messagerie de la zone. Il est utilis par les
applications agents de messagerie (mail agents) pour router les
courriers lectroniques du domaine.
IN MX <preference-value> <email-server-name>

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
D'aprs l'exemple qui suit, les courriers lectroniques du domaine
exemple.com sont routs vers lhte mail.exemple.com . Si ce
dernier n'est pas disponible (arrt, drang ou en panne) alors les
courriers seront routs vers mail2.exemple.com .
$ORIGIN exemple.com.
;nom ttl classe type prf. nom
IN
MX 10 mail
;forme courte
; ceci est quivalent
; exemple.com. IN MX 10 mail.exemple.com.
IN
MX 20 mail2.exemple.com.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
PTR : Enregistrement PoinTeR, conu pour pointer vers une autre
partie de l'espace de nom.
Les enregistrements PTR servent essentiellement la rsolution
inverse des noms, puisqu'ils renvoient les adresses IP vers un nom
particulier.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
D'aprs l'exemple qui suit, l'adresse ip 192.168.1.10 sera retourne
pour une recherche inverse pour lhte serveur1.exemple.com .
$ORIGIN 1.168.192.IN-ADDR.ARPA.
...
;nomARPA ttl classe type nom
10
IN PTR serveur1.exemple.com.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
SOA : Enregistrement de ressources Start Of Authority, proclame
des informations importantes faisant autorit sur un espace de nom
pour le serveur de noms.
Situ aprs les directives, un enregistrement de ressources SOA est
le premier enregistrement de ressources dans un fichier de zone.
le premier enregistrement de ressource doit tre SOA (Start Of
Authority) ;
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
L'exemple qui suit montre la structure de base d'un enregistrement de
ressources SOA :
@ IN SOA <primary-name-server> <hostmaster-email> (
<serial-number>
<time-to-refresh>
<time-to-retry>
<time-to-expire>
<minimum-TTL> )
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
Le symbole @ place la directive $ORIGIN (ou le nom de zone, si la
directive $ORIGIN n'est pas dtermine) en tant qu'espace de nom
dfini par le prsent enregistrement de ressources SOA.
hostmaster-email : Adresse mail du responsable qui gre ce
domaine. Comme le caractre @ a un sens particulier dans les
enregistrements de ressources, il est remplac par un point.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
serial : Numro de version du fichier dinformations de zones. Ce
numro est utilis par les serveurs de noms secondaires pour
dterminer le moment o le fichier dinformations de zone a chang.
Il doit tre augment de 1 chaque modification du fichier.
refresh : Priode (en secondes) durant laquelle le serveur
secondaire attend avant de vrifier lenregistrement SOA du
serveur DNS primaire.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
Enregistrements de ressources
retry : Priode (en secondes) durant laquelle le serveur secondaire
attend avant dessayer nouveau une requte vers le serveur primaire
si celui-ci nest pas accessible.
expire : Priode (en secondes) durant laquelle le serveur secondaire
attend avant de rejeter les informations de zones sil na pas pu
contacter le serveur primaire.
minimum : Valeur ttl par dfaut pour les enregistrements de
ressources ne spcifiant pas de valeur ttl.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Fichiers de zone
La configuration qui suit dfinit les paramtres globaux de la zone exemple.com.

$ORIGIN exemple.com.
;name ttl classe type serveur
e-mail (nSerie raf ret exp ttl)
IN
SOA dns.exemple.com. root.exemple.com. (
2011092800 ; nSerie
172800
; ou 2d ? raf = 2 jours
900
; ou 15m ? ret = 15 minutes
1209600
; ou 2w ? exp = 2 semaines
3600
; ou 1h ? ttl = 1 heure
)
; Les lignes qui suivent sont aussi quivalentes:
;@
IN
SOA dns.exemple.com. root.exemple.com. ( ...)
S.ALLAOUI root.exemple.com. ( ...)
;exemple.com. IN SOA dns.exemple.com.

Domain Name System : DNS

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Configurations types
Il existe plusieurs manires de configurer un serveur DNS. Les
configurations types les plus frquentes sont : un serveur matre
(master), un serveur esclave (slave), un serveur de cache (caching
only) et un serveur de retransmission (forwarding).
En effet un serveur de noms peut tre configur pour fonctionner
comme matre pour certaines zones, esclave pour d'autres et fournir
le service de cache ou de retransmission pour tout le reste.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur matre
Un serveur de nom matre dfinit le fichier de la zone sur laquelle il fait
autorit. Cette autorit a t dlgue ce dernier, travers
l'enregistrement NS, par le serveur de niveau suprieur.
La portion suivante du fichier named.conf configure BIND comme
serveur matre (type master) pour la zone exemple.com dont les
enregistrements
seront
stocks
dans
le
fichier
/etc/bind/db.exemple.com.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur matre
L'instruction notify no indique que BIND ne doit pas notifier les serveurs
esclaves lors du changement du fichier de zone. Par dfaut, BIND
notifie les serveurs esclaves prciss dans les enregistrements NS.
zone "exemple.com" {
type master;
notify no;
file "/etc/bind/db.exemple.com";
};

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur esclave
Un serveur de nom esclave rcupre ses donnes de zone moyennant
l'opration de transfert de zone partir du serveur matre et rpond en
tant que serveur autoritaire aux requtes concernant cette zone. Il est
impossible de dterminer si la rponse d'une requte provient du
serveur matre de la zone ou de l'un de ses esclaves.
Pour une zone donne, il y a obligatoirement un serveur matre et
ventuellement un ou plusieurs serveur esclaves.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur esclave
La portion suivante du fichier named.conf configure BIND comme
serveur esclave (type slave) pour la zone exemple.com dont les
donnes seront rcupres partir du serveur prcis par l'instruction
masters {}. L'instruction file est optionnelle, elle permet au serveur
esclave de sauvegarder les donnes de la zone sur le disque afin de
les utiliser en cas de redmarrage.
zone "exemple.com" {
type slave;
file "/var/cache/bind/db.exemple.com";
masters { 192.168.1.1; }; // adresse IP du
serveur matre
};
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur esclave
Le fichier de configuration du serveur matre doit tre rectifi pour
autoriser le transfert de zone vers le(s) serveur(s) esclave(s) en
ajoutant l'instruction allow-transfer {...}:
zone "exemple.com" {
type master;
file "/etc/bind/db.exemple.com";
allow-transfer { 192.168.1.2; }; // liste des adresses IP des
// serveurs esclaves
};
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur de cache
Un serveur de cache rcupre les informations partir du serveur
matre de la zone contenant l'information et sauvegarde (cache) les
donnes localement. la prochaine requte pour la mme
information, le serveur de cache rpondra en utilisant les donnes
dj sauvegardes. Si la dur de vie (TTL : Time To Live) de
l'information expire, le serveur de cache refait l'opration de
rcupration de l'information.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur de cache
La rponse d'une requte est dite autoritaire si la rponse est reue :
 d'un serveur matre de la zone ;
 d'un serveur esclave de la zone avec des informations non encore
expires (non timeexpired);
 par l'intermdiaire d'un serveur de cache qui vient de la rcuprer
partir d'un serveur matre ou d'un serveur esclave. Si la rponse est lue
partir du cache, elle n'est pas autoritaire.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur de cache
En gnral la configuration d'un serveur de cache est utilise dans les
cas suivants :
un serveur agissant comme matre ou esclave d'une ou plusieurs
zones et comme serveur de cache pour le reste des requtes ;
un serveur local de cache seulement : typiquement utilis pour
minimiser le trafic extrieur ou compenser les liens externes de faible
dbit. Dans ce cas, il est dsign par serveur proxy DNS .

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur de cache
EXEMPLE

La portion suivante du fichier named.conf configure BIND comme


serveur de cache :
forwarders {
10.1.1.1; // par exemple : premier serveur DNS du FAI
10.1.1.2; // deuxime serveur DNS du FAI
};

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur de retransmission
Un serveur de retransmission est un serveur qui transfert toutes les
requtes un autre serveur DNS supportant les rsolutions
rcursives.
BIND peut tre configur comme serveur de retransmission en
utilisant les instructions forward et forwards dans la section options
(niveau global) ou dans la section zone (niveau domaine).

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur de retransmission
EXEMPLES

La portion du fichier de configuration named.conf suivante illustre une


retransmission globale :
options {
...
forwarders {10.0.0.1; 10.0.0.2;};
forward only;
};

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Serveur de retransmission
EXEMPLES

La portion du fichier de configuration named.conf suivante illustre une


retransmission de niveau domaine pour la zone exemple.com :
zone "exemple.com" IN {
type forward;
forwarders {192.168.1.1; 192.168.1.2;};
};

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
rndc permet d'utiliser des lignes de commande pour administrer le
dmon named partir de l'hte local ou d'un hte distant.
Il communique avec named d'une manire scurise travers une
connexion TCP, par dfaut sur le port 953.
Fichier de configuration de rndc est /etc/rndc.conf

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
Par dfaut, l'administration de dmon named par rndc est autorise
pour les connexions locales. Pour les connexions distantes, il faut
rajouter la clause controls au fichier de configuration named.conf.
Afin d'empcher l'accs non-autoris au dmon named, BIND utilise
une mthode d'authentification cl secrte partage pour accorder
des privilges aux htes.
Ainsi, une cl identique doit tre prsente aussi bien dans named.conf
que dans le fichier de configuration de rndc, savoir /etc/rndc.conf

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
Pour que rndc puisse se connecter un service named, une dclaration
controls doit tre prsente dans le fichier /etc/named.conf du serveur
BIND.
La dclaration controls, dcrite dans l'exemple qui suit, permet rndc
de se connecter partir d'un hte local.
controls {
inet 127.0.0.1 allow { localhost; } keys { <nom-cl>; };
};

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
EXEMPLES

La clause controls dcrite dans l'exemple qui suit demande named


(s'excutant sur le hte 192.168.1.1) d'autoriser les commandes
rndc provenant de l'hte 192.168.1.20, si la cl adquate est
donne.
controls {
inet 192.168.1.1 allow { 192.168.1.20; } keys {<nomCl-192.168.1.1>;};

};
<nomCl> fait rfrence la clause key du fichier de configuration de named
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
L'exemple suivant illustre une clause key utilisant l'algorithme HMACMD5.
key "<nomCl-192.168.1.1>" {
algorithm hmac-md5;
secret "<valeurCl-192.168.1.1>";
};

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
la dclaration <key-value> utilise l'algorithme HMAC-MD5. Afin de
crer des cls l'aide de l'algorithme HMAC-MD5, utilisez la
commande suivante :
#dnssec-keygen -a hmac-md5 -b <bit-length> -n HOST <key-filename>
La cl qui doit tre place dans la zone <key-value> se trouve dans le
fichier <key-file-name> gnr par cette commande.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
Paramtrage de rndc.conf
le fichier de configuration rndc peut galement spcifier diffrentes
cls pour diffrents serveurs, comme le montre l'exemple suivant :
server localhost {
key "<key-name>";
};

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
EXEMPLE

Le fichier de configuration rndc.conf suivant permet l'utilitaire rndc de


contrler le dmon named distant d'adresse 192.168.1.1 en utilisant la
cl <nomCl-192.168.1.1>.
key "<nomCl-192.168.1.1>" {
algorithm hmac-md5;
secret "<valeurCl-192.168.1.1>";
};
server 192.168.1.1{
key "<nomCl-192.168.1.1>";
};
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
Une commande rndc se prsente sous le format suivant :
rndc <options> <command> <command-options>
Les options les plus utilises sont :
-c fichier : spcifie un fichier de configuration autre que rndc.conf;
-p port : spcifie un autre numro de port ;
-s serveur : spcifie un serveur autre que le serveur par dfaut;
-y cl : spcifie une cl autre que celle par dfaut (default-key).
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
Les sous commandes de rndc sont :
halt : arrte immdiatement le service named ;
querylog : Journalise toutes les requtes effectues auprs de ce
serveur de noms.;
stop : Arrte correctement le serveur
stats : vide les statistiques courantes de named vers le fichier
/var/named/named.stats.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc
reload : Recharge les fichiers de zone mais conserve toutes les
rponses prcdemment mises en cache. Cette commande permet
galement d'apporter des changements aux fichiers de zone sans
perdre toutes les rsolutions de nom stockes.
Si les changements n'affectent qu'une zone particulire, rechargez
seulement cette zone en ajoutant le nom de la zone aprs la
commande reload.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire rndc

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commandes de diagnostic et de configuration
La distribution BIND fournit avec le dmon named, des commandes
de diagnostic (host, nslookup, dig, etc), de vrification (namedcheckconf, named-checkzone, etc) et de scurit (dnssec-keygen,
dnssec-signzone, etc).

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Utilitaire de consultation DNS
Commande hosts
 Utilitaire nslookup
Utilitaire dig

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande host
Host est une commande simple pour effectuer des recherches DNS.
host [option ] nom [serveur]
nom : le nom d'hte ou de domaine rsoudre. Il peut tre aussi
une adresse IP dans le cas d'une rsolution inverse ;
Serveur : nom ou adresse IP du serveur DNS interroger. Par
dfaut, la commande host utilise le serveur DNS recens dans le
fichier /etc/resolv.conf.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande host
EXEMPLES

Les lignes de commandes suivantes assurent la rsolution du nom


d'hte www.exemple.com partir du serveur DNS par dfaut.
# host www.exemple.com
# host -t a www.exemple.com

Mme exemple mais en interrogeant le serveur dns.exemple.com.


# host www.exemple.com dns.exemple.com
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande host
EXEMPLES

Les lignes de commande suivantes sont quivalentes et assurent la


rsolution inverse de l'hte d'adresse IP 192.168.1.10 .
# host 192.168.1.10
# host -t ptr 10.1.168.192.in-addr.arpa

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande nslookup
La commande nslookup est officiellement abandonne et remplace
par la commande dig.
nslookup [option ] nom [serveur]
Les paramtres nom et Serveur ont les mmes significations que
ceux de la commande host.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande dig
La commande dig est l'outil prfr de diagnostic d'un serveur DNS.
Elle est plus puissante et plus riche que la commande nslookup.
dig [@serveur] nom [type-req] [+option-req ...] [-option-dig ...]
serveur : nom ou adresse IP du serveur DNS interroger. Il doit tre
prcd par @ . Par dfaut c'est le serveur dfini dans resolv.conf ;
Nom : nom d'hte ou de domaine ou adresse IP rsoudre ;
Type-req : type d'enregistrement retourner : a (par dfaut), mx, ns,
soa, etc. La valeur particulre any indique n'importe quel type et la
valeur particulire axfr demande la liste complte de tous RR.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande dig
option-req : prcise une option de la requte ou un style d'affichage
des rsultats. Elle doit tre prcd par + ;
option-dig : option de la commande dig.
Quelques options de la commande dig :
o -P : lance un ping sur le serveur utiliser ;
o -p port : change le port vers lequel seront envoyes les
requtes ;

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande dig

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande named-checkconf
La commande named-checkconf vrifie la syntaxe d'un fichier de
configuration de named ainsi que les fichiers inclus travers
l'instruction include.
named-checkconf [option ] [fichier]
avec fichier : chemin du fichier de configuration vrifier. Si aucun
fichier n'est spcifi, named.conf sera trait.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande named-checkconf
Les fichiers lus par named et qui ne sont pas spcifis par l'instruction
include tel que rndc.key ne sont pas traits automatiquement par
named-checkconf. Il faut vrifier ces fichiers explicitement.

# named-checkconf
# named-checkconf /etc/bind/rndc.key

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Commande named-checkzone
La commande named-checkzone vrifie la syntaxe et l'intgrit d'un
fichier de zone. Elle effectue les mmes vrifications que named, d'o
l'intrt de l'utiliser avant d'ajouter les fichiers de zone la
configuration d'un serveur de noms.
named-checkzone [option ] zone fichier-zone
Avec
zone : nom de domaine de la zone vrifier ;
fichier-zone : fichier contenant les donnes de la zone.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurit
Dans un systme informatique ouvert sur Internet, le service DNS est un
service critique.
En effet :
la non disponibilit du serveur DNS entranera la non disponibilit des
serveurs web et de messagerie ;
une intrusion dans le serveur DNS, entrane la collecte d'informations
prives telles que les adresses IP d'autre serveurs, des postes clients, des
commutateurs, etc ;
si les informations du DNS sont empoisonnes (modifies), un pirate peut
rediriger les internautes vers ses serveurs au lieu des serveurs rels.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurit
Pour renforcer la scurit de ce service, les oprations suivantes
peuvent tre appliques :
 l'excution du dmon dans un environnement enferm ;
 l'utilisation des listes de contrle d'accs (ACL : Access control List) ;
 la signature des transactions (TSIG : Transaction SIGnature) et
 la signature des informations des zones (DNSSec : DNS Security).

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Environnement enferm
L'une des fonctionnalits utiles de BIND est la possibilit d'excuter le
dmon named dans le contexte d'un utilisateur non privilgi (option -u
de named).
Une autre fonctionnalit intressante de BIND est la possibilit
d'excuter le dmon named dans un environnement enferm
(chrooted environnement). Cette fonctionnalit permet de limiter les
dommages dans le cas o le serveur est compromis.
L'option -t rpertoire informe named qu'il sera excut dans un
environnement enferm.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Listes de contrle d'accs
L'utilisation des listes de contrle d'accs (ACL Access Control List)
permet de simplifier et d'affiner le contrle d'accs un serveur DNS.
Elles sont utilises avec les instructions allow-query, allow-recursion,
allow-transfer, blackhole, etc.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Listes de contrle d'accs
Le fichier named.conf suivante utilise les ACL n'autoriser les rsolutions
rcursives que pour les postes du rseau local.
acl "lan" { 192.168.1.0/24; };
options {
...
allow-query { "lan"; };
allow-recursion { "lan"; };
};
zone "exemple.com" {
type master;
file "/etc/named/db.exemple.com";
allow-query { any; };
S.ALLAOUI
};

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des transactions avec TSIG
La fonctionnalit TSIG (Transaction SIGnature) permet de crypter les
donnes changes lors d'un transfert de zone entre le serveur DNS
matre d'une zone et ses esclaves. Elle est aussi utilise pour les mises
jour dynamiques (dynamic updates) des enregistrements d'une zone.
Les transactions utilisant TSIG sont horodates. Il est donc ncessaire
que les horloges des entits communicantes soient synchronises. De
prfrence, elles doivent tre synchronises auprs d'un serveur de
temps commun.

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des transactions avec TSIG
La procdure qui suit numre les tapes de mise en place des
transactions scurises pour le transfert de la zone exemple.com
entre le serveur DNS matre dns1 et un serveur esclave dns2 .
1. Gnration d'un secret : la commande qui suit gnre une cl
symtrique de nom tsig-dns1-dns2, de type HOST en utilisant
l'algorithme HMAC-MD5 de taille 512 bits.
# dnssec-keygen -a HMAC-MD5 -b 512 -n HOST tsig-dns1-dns2
les deux fichiers Ktsig-dns1-dns2.+157+06761.[key,private] sont cres
et contenant le mme secret.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des transactions avec TSIG
2. Prise en charge de la cl : sur les deux serveurs, le fichier tsigns1-ns2 contenant la cl symtrique doit tre cr. Le contenu du
fichier est le suivant :
# vi tsig-dns1-dns2
key tsig-dns1-dns2. {
algorithm hmac-md5;
secret "Dey4YV...yzREUQ==";
};
Copier le fichier dans les deux serveurs master et slave
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des transactions avec TSIG
3. Re-configuration du matre : le fichier de configuration named.conf
du dns1 doit tre modifi pour y inclure le chemin d'accs la
cl symtrique.
include "/chemin/tsig-dns1-dns2";
zone "exemple.com" {
type master;
file "/etc/named/db.exemple.com";
allow-transfer {
key tsig-dns1-dns2.;
};
};
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des transactions avec TSIG
4. Re-configuration de l'esclave : le fichier de configuration
named.conf du dns2 doit tre modifi pour y inclure le chemin
d'accs la cl symtrique.
include "/chemin/tsig-dns1-dns2";
server 192.168.1.1 {
keys { tsig-dns1-dns2.; };
};
zone "exemple.com" {
type slave;
file "/etc/bind/db.exemple.com";
masters { 192.168.1.1; };
};
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des transactions avec TSIG
Test du transfert : la commande dig suivante interroge dns1 pour
un transfert de zone.
$ dig @dns1.exemple.com -k Ktsig-dns1-dns2.+157+06761.private exemple.com AXFR

Le message NOERROR est retourn s'il n'y a pas d'erreur. En cas


d'erreur, le message Transfer failed. BADSIG est retourn pour
une erreur de signature et le message Transfer failed. BADKEY
pour une erreur de nom de la cl.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des donnes avec DNSSEC
La fonctionnalit DNSSEC (DNS SECurity) permet de signer des
zones. Ceci permet de vrifier que les informations relatives une
zone spcifique proviennent du serveur DNS qui les a signes avec
une cl de zone (ZSK : Zone Signing Key).

S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des donnes avec DNSSEC
La procdure qui suit dcrit les tapes de signature de la zone
exemple.com :
1.Gnration des cls : les commandes qui suivent gnrent deux
paires de cls asymtriques l'une pour la signature de la zone (ZSK)
exemple.com et l'autre pour la signature de la cl (KSK) de la
zone. Le contenu des fichiers .key (cls publiques) gnrs est
ajout la fin du fichier zone exemple.com .
# dnssec-keygen -q -a RSASHA1 -b 512 -n ZONE exemple.com
Kexemple.com.+005+5823
# cat Kexemple.com.+005+5823.key >> /etc/named/db.exemple.com
# dnssec-keygen -q -a RSASHA1 -b 512 -f KSK -n ZONE exemple.com
Kexemple.com.+005+5281
S.ALLAOUI
# cat Kexemple.com.+005+5281.key >> /etc/named/exemple.com

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des donnes avec DNSSEC
2. Signature de la zone : la commande dnssec-signzone qui suit signe
la
zone
exemple.com
avec
la
cl
ZSK
Kexemple.com.+005+5823
et
la
cl
KSK
Kexemple.com.+005+5281. Les rsultats (zone signe) seront
enregistrs dans le fichier db.exemple.com.signed.
# dnssec-signzone -o exemple.com \
-f /etc/named/db.exemple.com.signed \
-k Kexemple.com.+005+5281.private \
/etc/named/db.exemple.com\
Kexemple.com.+005+5823.private
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des donnes avec DNSSEC
3. Chargement de la zone : le fichier named.conf doit tre modifi pour
remplacer
le
fichier
/etc/named/db.exemple.com
par
/etc/named/db.exemple.com.signed.
zone "exemple.com" {
type master;
file "/etc/named/db.exemple.com.signed";
...
};
Le dmon named doit recharger le fichier de configuration
named.conf puisqu'il vient d'tre modifi.
S.ALLAOUI

Domain Name System : DNS


BIND: Berkeley Internet Name Domain
Scurisation des donnes avec DNSSEC
4. Test de la zone signe : la commande dig suivante interroge
dns1 en activant le bit DO (Dnssec OK) travers l'option
+dnssec.
$ dig @dns1.exemple.com www.exemple.com a +dnssec

S.ALLAOUI

Das könnte Ihnen auch gefallen