DNS Exercice 2: Configuration d'un domaine
==========================================

Dans cet exercice, vous allez créer un nouveau domaine, 
"nom-de-domaine.cctld.sn.". Vous mettrez en place le 
service maître sur votre machine et  trouverez  quelqu'un 
d'autre qui sera votre esclave. Vous demanderez  après à 
l'administrateur du domaine parent(cctld.sn.) de vous 
déléguer votre domaine.

Pour commencer, noter que chaque machine dans la classe a 
un nom DNS fonctionnel: pcX.cctld.sn. Vérifier que la 
machine est bien configurée avec la commande `hostname`
- e.g. sur le pc1, on doit voir

>     # hostname
>     pc1.cctld.sn

Sinon, configurez votre machine avec son nom: e.g. pour pc1

>     # hostname pc1.cctld.sn
>     # vi /etc/rc.conf
>     ...
>     hostname="pc1.cctld.sn"
>     # vi /etc/hosts
>     ...
>     196.1.97.131     pc1.cctld.sn

Vous devriez également voir le nom de votre machine à l'écran 
d'ouverture de session:

>     FreeBSD/i386 (pc1.cctld.sn) (ttyv0)
> 
>     login:


Exercice
--------

*   Choisissez un nouveau domaine, Ecrivez le ici:  
    `___________________.cctld.sn`  
    (Ne pas choisir un nom de machine comme sous-domaine)

     Nous recommandons votre cctld (e.g. ga,td,ne,dj,sn,bf,rw)

*   Vérifiez que les répertoires dont vous avez besoin existent. 
    Sinon créez les:

        # mkdir /var/cctld/maître
        # mkdir /var/cctld/esclave
        # chown bind /var/cctld/esclave

*   Trouvez quelqu'un qui accepte d'être esclave pour votre 
    domaine. Vous devrez choisir quelqu'un sur une table autre 
    que la vôtre. (Se rappeler du RFC2182: Les esclaves doivent 
    être sur des réseaux distants). Vous pouvez avoir plus d'un 
    esclave si vous voulez.

*   Créez votre fichier de zone dans `
    /var/cctld/maître/xxxxxx.cctld.sn`
    (où xxxxxx est le nom choisi)

    >     $TTL 10m
    >     @       IN      SOA     pcX.cctld.sn. votre-nom.example.com. (
    >                                     2005091300    ; Serial
    >                                     10m           ; Refresh
    >                                     10m           ; Retry
    >                                     4w            ; Expire
    >                                     10m )         ; Negative
    > 
    >                 IN      NS      pcX.cctld.sn.   ; maître
    >                 IN      NS      pcY.cctld.sn.   ; esclave
    > 
    >     www     IN      A       196.1.97.X   ; l'adresse IP de votre machine

    Remplacez `votre-nom.exemple.com.` par votre adresse 
    électronique, en changeant "@" en "." et ajoutant un "." à 
    la fin.

    Nous avons choisi exprès de petites valeurs pour TTL, 
    refresh, and retry  pour rendre la résolution de problè
    mes  facile dans la classe.Pour un site en production,vous 
    devriez utiliser des valeurs plus élevées e.g. `$TTL 1d`

*   Editer `/etc/named.conf` pour configurer que votre machine 
    en tant que maître pour votre domaine (Voir slides sur 
    comment faire ceci)

*   Vérifier que votre fichier de configuration et le fichier 
    de zone sont valides et recharger le démon du serveur de nom:

        # named-checkconf
        # named-checkzone xxxxxx.cctld.sn 
        /var/cctld/maître/xxxxxx.cctld.sn

    *S'il a y a des erreurs,corrigez les*

        # rndc reload
        # tail /var/log/messages

    *certaines erreurs de configuration peuvent conduire à 
     l'arrêt total du démon.Dans ce cas démarrer le de nouveau*. 

    démarrer le de nouveau:

        # named -u bind 

*   Assistez votre esclave à se configurer comme esclave pour 
    votre domaine, et configurez vous en tant que esclave si 
    quelqu'un d'une autre table vous le demande.
 
    Une fois encore, les instructions sur comment faire ces 
    configurations sont dans les slides. Si vous avez changer 
    votre `named.conf` pour être esclave pour quelqu'un d'autre,
    assurez-vous qu'il n'y a pas des erreurs dans `/var/log/messages` 
    après un `rndc reload`.

*   Vérifiez que les esclaves donnent des réponses autoritaires 
    pour votre domaine:

        # dig +norec @196.1.97.X xxxxxx.cctld.sn. soa
        # dig +norec @196.1.97.Y xxxxxx.cctld.sn. soa

    Vérifiez que vous avez un "AA" (authoritative answer) des deux,  
    et que les numéros de série sont les mêmes.

*   Maintenant vous être prêt pour demander la délégation. 
    Apportez le formulaire suivant à l'instructeur jouant le rô
    le de hostmaître:

        Nom de domaine:          ___________________.cctld.sn

        Serveur maître:    pc____.cctld.sn

       Serveur esclave:     pc____.cctld.sn

        Serveur esclave:     pc____.cctld.sn (optional)

        Serveur esclave:     pc____.cctld.sn (optional)

*   Vous n'aurez pas de délégation jusqu'à ce que le hostmaître 
    s'assure que:

    - Vos serveurs de nom sont tous autoritaires pour votre domaine
    - Ils ont le même numéro de série
    - Les enregistrements NS dans la zone correspondent à la 
      liste de serveurs sur lesquels vous demandez la délégation
    - Les esclaves ne sont pas sur la même table que vous

*   Une fois la délégation faite, essayer de résoudre 
    www.xxxxxx.cctld.sn:

    - Avec votre machine dig @196.1.97.x www.xxxxxx.cctld.sn
    - Avec la machine de quelqu'un d'autre(qui n'est pas esclave 
      pour votre domaine)
	dig @196.1.97.z www.xxxxxx.cctld.ucan.sn
    - Avec un serveur récursif sur l'Internet si vous en avez 
      accès
    - essayer de résoudre www.xxxxxx.cctld.sn de la racine vers 
      vos NS
 
     # dig  www.xxxxxx.cctld.sn. A +trace

*   Ajoutez un nouvel enregistrement de ressources à votre zone. 
    N'oubliez pas d'augmenter le numéro de série. Vérifiez que 
    les esclaves ont transféré la nouvelle zone. Essayez de 
    résoudre ce nouvel enregistrement de ressource de quelque 
    part d'autre.

* Restreindre les transferts de zone par IP
 - En tant que maître, insérer "allow-transfer { 196.1.97.Y; };" 
   dans la configuration de la zone dans /etc/named.conf
 - En tant qu'esclave, insérer "allow-transfer { none; };" 
   dans la configuration de la zone dans /etc/named.conf   
 -Faites un changement dans votre zone (changer le numéro de 
  série et recharger la zone)
 - Vérifiez que les esclaves ont transféré le fichier de zone
 - Essayez de transférer le fichier de zone de quelque part d'autre

  # dig  @pcX.cctld.sn  xxxxxx.cctld.sn. axfr

* Restreindre les transferts de zone sur clés et IP

A faire pendant jour 4

Préparé par Alain Patrick AINA
Traduit par Alain Patrick AINA

--------------------------------