logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
utilisateurs:hypathie:tutos:dns-bind [01/09/2014 08:38]
Hypathie [Configurer un server DNS Maître en local sous wheezy]
utilisateurs:hypathie:tutos:dns-bind [03/10/2014 08:09] (Version actuelle)
Hypathie [Configurer un server DNS Maître en local sous wheezy]
Ligne 1: Ligne 1:
-======DNS : Bind ======+======DNS : Bind9 ======
  
-  * Objet : installer ​et configurer Bind+  * Objet : installer ​un server DNS en local bind9 
   * Niveau requis :  {{tag>​débutant avisé}}   * Niveau requis :  {{tag>​débutant avisé}}
   * Commentaires : //Contexte d'​utilisation du sujet du tuto. //    * Commentaires : //Contexte d'​utilisation du sujet du tuto. // 
Ligne 27: Ligne 27:
 Dans l'ordi de ce client on a configuré un ou plusieurs DNS dans le fichier **/​etc/​resolve.conf** dans lequel est indiqué l'​adresse IP de serveur local Bind comme server de référence.\\ ​ Dans l'ordi de ce client on a configuré un ou plusieurs DNS dans le fichier **/​etc/​resolve.conf** dans lequel est indiqué l'​adresse IP de serveur local Bind comme server de référence.\\ ​
  
-Cette ordi a donc l'​adresse IP d'un DNS est lui pose la question "donne moi l'IP de **<​nowiki>​www.toto.com</​nowiki>​**.\\ ​+Cet ordi a donc l'​adresse IP d'un DNS, et lui pose la question ​"donne moi l'IP de **<​nowiki>​www.toto.com</​nowiki>​**.\\ ​
  
-Si le server sait répondre il lui donne l'IP, s'il ne sait pas il va interroger les serveurs DNS au dessus de lui, TLD, Racine...\\ Quand il a l'​adresse,​ il répond au client qui peut joindre l'ordi de toto.com\\+Si le server sait répondreil lui donne l'IP, s'il ne sait pasil va interroger les serveurs DNS au dessus de lui, TLD, Racine...\\ Quand il a l'​adresse,​ il répond au client qui peut joindre l'ordi de toto.com\\
  
 ===Vocabulaire === ===Vocabulaire ===
Ligne 40: Ligne 40:
   * Serveur secondaire : serveur qui des informations sur une zone à partir d'un serveur primaire et non grâce à sa configuration.\\ ​   * Serveur secondaire : serveur qui des informations sur une zone à partir d'un serveur primaire et non grâce à sa configuration.\\ ​
  
-  * Faire autorité sur un domaine : C'est le fait pour un serveur DNS de répondre directement aux requêtes un domaine, sans passer par un autre serveur ou un cache. Le cache c'est le fichier dans lequel le serveur DNS récursif conserve l'​information qu'il a obtenu d'un autre serveur à la suite d'une requête qui lui a été faite par un client.\\ ​+  * Faire autorité sur un domaine : C'est le fait pour un serveur DNS de répondre directement aux requêtes ​d'un domaine, sans passer par un autre serveur ou un cache. Le cachec'est le fichier dans lequel le serveur DNS récursif conserve l'​information qu'il a obtenu d'un autre serveur à la suite d'une requête qui lui a été faite par un client.\\ ​
  
 Donc les serveur qui font autorité sur un domaine sont, soit des serveurs primaires, soit des serveurs secondaires s'ils ont une copie de ces informations.\\ ​ Donc les serveur qui font autorité sur un domaine sont, soit des serveurs primaires, soit des serveurs secondaires s'ils ont une copie de ces informations.\\ ​
Ligne 132: Ligne 132:
  
   *Nom de la zone dans l'​entête ;   *Nom de la zone dans l'​entête ;
-  *type (**master** pour primaire ou **slave** pour secondaire ou **int** pour Le programme qui lance le server : /​usr/​sbin/​nracine) ;+  *type (**master** pour primaire ou **slave** pour secondaire ou **int** pour le programme qui lance le server : /​usr/​sbin/​nracine) ;
   *fichier chemin du fichier de configuration de zone   *fichier chemin du fichier de configuration de zone
   *éventuellement des options   *éventuellement des options
Ligne 152: Ligne 152:
 ===IP statique=== ===IP statique===
   * Configurer une IP statique pour le serveur sur lequel on installe bind9.   * Configurer une IP statique pour le serveur sur lequel on installe bind9.
-Se rendre sur le site de son FAI, et associer l'​adresse mac du serveur à l'IP dans les BAUX/DHCP.+Se rendre sur le site de son FAI, et associer l'​adresse mac du serveur à son IP dans les BAUX/DHCP.
  
 ===Compléter /​etc/​hostname === ===Compléter /​etc/​hostname ===
Ligne 178: Ligne 178:
 192.168.0.22 ​   debian.mondomaine.hyp debian 192.168.0.22 ​   debian.mondomaine.hyp debian
  
-192.168.0.1 ​    ​gateway.modomaine.hyp gateway+192.168.0.1 ​    ​gateway.mondomaine.hyp gateway
  
  
Ligne 188: Ligne 188:
  
 ===Déclarer un nom de domaine dans /​etc/​resolv.conf=== ===Déclarer un nom de domaine dans /​etc/​resolv.conf===
-Il faut pour que la configuration ne soit par effacer lors d'un redémarrage, ​désinstaller networmanager.+Il faut déclarer un nom de domaine dans /​etc/​resolv.conf.\\  
 +Au passage on peut indiquer d'​autres DNS extérieurs que ceux du FAI.\\  
 +On va créer un script ​pour que la nouvelle ​configuration ​du fichier /​etc/​resolv.conf ​ne soit par effacer lors d'un redémarrage, ​par  **[[https://​wiki.debian.org/​fr/​NetworkManager|NetworkManager]]**.\\  
 +<note warning>​ 
 +  * Voir :\\ [[https://​wiki.debian.org/​fr/​NetworkConfiguration#​Configuration_de_DNS_pour_network-manager]]
  
-  * Désactiver "​networkmanager : +  * Attention ​la suppression de  ​NetworkManager ​déstabilise ​le système ​:
-<code root>​service networking stop</​code>​ +
- +
-  * Sauvegarder ​la configuration ​ +
-<code root>cp /etc/NetworkManager/​NetworkManager.conf /​etc/​NetworkManager/​NetworkManager.conf.OLD</​code>​ +
- +
- +
-  * Déclarer un nom de domaine dans /​etc/​resolv.conf:​ +
-Il faut éditer le fichier et ajouter les deux premières lignes, en remplaçant "​mondomaine.hyp"​ par le nom choisi.\\  +
-Pour un serveur DNS cache, il n'est pas nécessaire d'​acheté un nom de domaine auprès d'un registre. +
- +
-<code root>vim /​etc/​resolv.conf</​code>​ +
-<​code>​ +
-domain mondomaine.hyp +
-search mondomaine.hyp +
-nameserver 127.0.0.1 +
-nameserver 8.8.8.8 +
-nameserver 8.8.4.4 +
-</​code>​ +
- +
-  * Redémarrer ​le réseau ​: +
- +
-<code root>/​etc/​init.d/​networking start</​code>​+
  
-<note>Pour revenir en arrière :\\ +<code root>​apt-get remove --purge network-manager-gnome network-manager</​code>
  
-<code root>​service networking stop</​code>​ 
-<code root>cp /​etc/​NetworkManager/​NetworkManager.conf.OLD\ 
- /​etc/​NetworkManager/​NetworkManager.conf</​code>​ 
-<code root>​service networking start</​code>​ 
 </​note>​ </​note>​
  
-===Configurer networkmanager === +On peut soit éditer le fichier ​**/​etc/​resolv.conf**, ​mais comme le script suivant est nécessaire pour ne pas être embêté par  NetworkManager,​ on va modifier le fichier avec le script.
-Si un environnement de bureau est installer sur la machine servant de serveur, et sur la machine cliente, il faut faire en sorte que networkmanager cesse de ré-initiliser les fichiers ​**/​etc/​resolv.conf** ​des machinesen remettant à chaque démarrage les DNS du FAI.\\  +
-  +
-<note tip> +
-  * Voir : [[https://​wiki.debian.org/​fr/​NetworkConfiguration#​Configuration_de_DNS_pour_network-manager]] +
- +
-  * Attention la suppression de networkmanager déstabilise le système : +
- +
-<code root>​apt-get remove --purge network-manager-gnome netwok-manager</​code>​ +
- +
-</​note>​+
  
-  * La solution est de créer un script pour networkmanager ​:+===Création du script pour networkmanager===
 <code root>cd /​etc/​NetworkManager/</​code>​ <code root>cd /​etc/​NetworkManager/</​code>​
- +  * Création ​d'un fichier de démarrage :
-<code root>​touch /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​+
  
 <code root>vim /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ <code root>vim /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
 +>​**Adapter le contenu son nom de domaine et à son de choix de forwarder**
 +
 <​code>#​!/​bin/​sh <​code>#​!/​bin/​sh
 echo "​domain mondomaine.hyp"​ > /​etc/​resolv.conf echo "​domain mondomaine.hyp"​ > /​etc/​resolv.conf
Ligne 246: Ligne 215:
 echo "​nameserver 8.8.8.8"​ >> /​etc/​resolv.conf echo "​nameserver 8.8.8.8"​ >> /​etc/​resolv.conf
 echo "​nameserver 8.8.4.4"​ >> /​etc/​resolv.conf</​code>​ echo "​nameserver 8.8.4.4"​ >> /​etc/​resolv.conf</​code>​
 +>On met après l'​instruction ''​domain''​ le nom de son domaine : il n'est pas nécessaire pour une utilisation locale que ce soit un nom de domaine acheté ou loué auprès un registre de noms de domaine.
 +>Puis l'​instruction ''​search''​ et son nom de domaine ;
 +>Puis l'​intruction ''​nameserver''​ suivi de l'IP d'un serveur de nom qui soit interrogeable.\\ Ici ce sont ceux de Google, mais il est peut-être préférable de laisser ceux de son FAI.
 +>On peut aussi ajouter en dessous de la ligne comportant l'​instruction ''​search''​ :
 +>''​echo nameserver ip-fixe-du-serveur-bind''​.
  
->Adapter le contenu à la configuration+  * On donne les droits d'​exécution
  
 <code root>​chmod 755 /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ <code root>​chmod 755 /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
 +
 +  * On exécution le script :
 +
 +<code root>​bash /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
 +
 +  * On peut vérifier :
 +
 +<code root>​less /​etc/​resolv.conf</​code>​
 +<​code>​domain mondomaine.hyp
 +search mondomaine.hyp
 +nameserver 127.0.0.1
 +nameserver 8.8.8.8
 +nameserver 8.8.4.4
 +</​code>​
 +
 +
 +  * Redémarrer le réseau :
 +
 +<code root>/​etc/​init.d/​networking start</​code>​
  
 ====Installer et configurer bind ==== ====Installer et configurer bind ====
 ===installation du paquetage=== ===installation du paquetage===
 <code root> <code root>
-apt-get update ​apt-get+apt-get update
 </​code>​ </​code>​
  
Ligne 261: Ligne 254:
 </​code>​ </​code>​
  
-===Configuration de bind pour un serveur DNS maître local===+===Configuration de bind pour un serveur DNS maître ​en local===
 <note tip> <note tip>
 __Quelques commandes utiles lors de la configuration de bind9__ : __Quelques commandes utiles lors de la configuration de bind9__ :
Ligne 445: Ligne 438:
 <code root>dig mondomaine.hyp</​code>​ <code root>dig mondomaine.hyp</​code>​
  
-<code root>/code>dig -x @192.168.0.14</​code>​+<code root>dig -x @192.168.0.14</​code>​
  
 ====Interroger le DNS local sur un client du réseau ==== ====Interroger le DNS local sur un client du réseau ====
Ligne 539: Ligne 532:
  
   * Ajouter la nouvelle clé à la fin de /​etc/​bind/​named.conf :   * Ajouter la nouvelle clé à la fin de /​etc/​bind/​named.conf :
-<code root>tail /​etc/​bind/​rndc.key >> named.conf</​code>​+<code root>echo '​include "/​etc/​bind/​rndc.key";' ​>> ​/etc/bind/named.conf</​code>​
  
-  * Éditer /etc/bind/named.conf: +  *  Éditer /etc/bind/rndc.key pour commenter toute la fin à partir de ''​option ​{''​ :
-<code root>vim /​etc/​bind/​named.conf</​code>​ +
-<​code>​include "/​etc/​bind/​named.conf.options";​ +
-include "/​etc/​bind/​named.conf.local";​ +
-//include "/​etc/​bind/​named.conf.default-zones";​ +
- key "​rndc-key" ​{ +
-        algorithm hmac-md5; +
-        secret "​HnKmxWg2p6U0t6Ov+qoM8A==";​ +
- }; +
- +
- ​controls { +
-        inet 127.0.0.1 port 953 +
-                allow { 127.0.0.1; } keys { "​rndc-key";​ }; +
- }; +
-# End of named.conf +
-</​code>​+
  
-  * Éditer /​etc/​bind/​rndc.key : 
 <code root>vim /​etc/​bind/​rndc.key</​code>​ <code root>vim /​etc/​bind/​rndc.key</​code>​
 <​code>#​ Start of rndc.conf <​code>#​ Start of rndc.conf
 key "​rndc-key"​ { key "​rndc-key"​ {
         algorithm hmac-md5;         algorithm hmac-md5;
-        secret "HnKmxWg2p6U0t6Ov+qoM8A==";+        secret "xxxxxxxxxxxxxxxxx";
 }; };
  
Ligne 576: Ligne 553:
 # key "​rndc-key"​ { # key "​rndc-key"​ {
 #       ​algorithm hmac-md5; #       ​algorithm hmac-md5;
-#       ​secret "HnKmxWg2p6U0t6Ov+qoM8A==";+#       ​secret "xxxxxxxxxxxxxx";
 # }; # };
 # #
Ligne 611: Ligne 588:
  
 ===Relancer bind9=== ===Relancer bind9===
- 
-<code root>/​etc/​init.d/​bind9 restart</​code>​ 
-<​code>​[....] Stopping domain name service...: bind9rndc: connection to remote host closed 
-This may indicate that 
-* the remote server is using an older version of the command protocol, 
-* this host is not authorized to connect, 
-* the clocks are not synchronized,​ or 
-* the key is invalid. 
-waiting for pid 4979 to die 
-. ok  
-[ ok ] Starting domain name service...: bind9.</​code>​ 
- 
- 
-Une deuxième fois : 
  
 <code root>/​etc/​init.d/​bind9 restart</​code>​ <code root>/​etc/​init.d/​bind9 restart</​code>​
utilisateurs/hypathie/tutos/dns-bind.1409553514.txt.gz · Dernière modification: 01/09/2014 08:38 par Hypathie

Pied de page des forums

Propulsé par FluxBB