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
--------------------------------