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

Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
atelier:chantier:dns-bind9-sur-wheezy [01/09/2014 09:16]
Hypathie créée
atelier:chantier:dns-bind9-sur-wheezy [14/09/2014 10:19]
Hypathie [Côté client]
Ligne 7: Ligne 7:
     * Création par [[user>​Hypathie]] 01/09/2014     * Création par [[user>​Hypathie]] 01/09/2014
     * Testé par <...> le <​...> ​     * Testé par <...> le <​...> ​
-  * Commentaires sur le forum : [[:url-invalide ​| Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) +  * Commentaires sur le forum : [[https://debian-facile.org/​viewtopic.php?​pid=97375#​p97375 ​| Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) 
  
 +
 +Source : [[http://​archil.fr/​Doc_install_BIND.html]]
 ===== Introduction au DNS===== ===== Introduction au DNS=====
 ====Quelques bases sur les servers DNS ==== ====Quelques bases sur les servers DNS ====
Ligne 141: Ligne 143:
  
  
-=====Configurer ​un server ​DNS Maître en local sous wheezy===== +=====Pré-requis à la l'​installation d'un DNS Maître ​du réseau ​en local===== 
-Il s'agit d'un serveur qui ne fera autorité que sur le réseau local et non sur aucune autre zone.\\ ​+Il s'agit d'un serveur qui ne fera autorité que sur le réseau local et sur aucune autre zone.\\ ​
 Il va s'​occuper d'​aller chercher les infos sur des forwarders ou des serveurs racine ... et de les stoker dans son cache. Il va s'​occuper d'​aller chercher les infos sur des forwarders ou des serveurs racine ... et de les stoker dans son cache.
  
Ligne 149: Ligne 151:
   *Soit un nom de domaine : "​mondomaine.hyp"​   *Soit un nom de domaine : "​mondomaine.hyp"​
   *Soit un ordi client sur le réseau local : "​debian-client"​ avec l'IP 192.168.0.22   *Soit un ordi client sur le réseau local : "​debian-client"​ avec l'IP 192.168.0.22
-====Pré-requis====+
 ===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.
Ligne 157: Ligne 159:
  
 <code root>vim /​etc/​hostname </​code>​ <code root>vim /​etc/​hostname </​code>​
-<​code>​debian-serveur.mondomaine.hyp</​code>​+<​code>​debian-serveur</​code>​
  
 <code root>/​etc/​init.d/​hostname.sh start</​code>​ <code root>/​etc/​init.d/​hostname.sh start</​code>​
Ligne 188: Ligne 190:
  
 ===Déclarer un nom de domaine dans /​etc/​resolv.conf=== ===Déclarer un nom de domaine dans /​etc/​resolv.conf===
 +
 If faut déclarer un nom de domaine dans /​etc/​resolv.conf.\\ ​ If faut déclarer un nom de domaine dans /​etc/​resolv.conf.\\ ​
-Au passage on peut indiquer d'autre DNS extérieurs ​que ceux du FAI.\\  +On peut, sur le système sur lequel il va être installer bind, indiquer d'autres ​DNS extérieursceux du FAI, ou même indiquer seulement l'IP local 127.0.0.1.\\  
-Il faut pour que la nouvelle configuration du fichier /​etc/​resolv.conf ​ne soit par effacer lors d'un redémarrage,​ par networmanager créer un script.\\  +Sur le système voué à servir de serveur DNS, s'il a été installé un environnement de bureau, lors du redémarrage du système, ​la nouvelle configuration du fichier ​**/​etc/​resolv.conf** sera effacée ​par Network Manager.\\ 
-<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 ​:+Deux solutions pour résoudre ce problème ​soit on configure Network Manager, soit on se crée un script.
  
-<code root>​apt-get remove --purge network-manager-gnome netwok-manager</​code>​+  * **Configurer Network Manager**.
  
-</note>+En faisant :\\  
 +-Système -> Préférences -> Connexions réseau \\ 
 +Puis il faut modifier toutes les connexions que vous avez dans tous les onglets (Filaire, Sans fil, etc…), en faisant, pour chacune d’entre-elles :
  
-On peut soit éditer le fichier **/​etc/​resolv.conf**, mais comme le script suivant est nécessaire pour ne pas être embêté ​par networmanager,​ on va modifier le fichier avec le script.+  - Cliquez sur la connexion à modifier ; 
 +  - Bouton "​Modifier"​ ; 
 +  - Onglet "​Paramètres IPv4" (et aussi IPv6 si vous l’utilisez) ; 
 +  - Méthode : Adresses automatiques uniquement (DHCP) ; 
 +  - Serveurs DNS : 127.0.0.1 ((on aussi mettre l'IP du serveur DNS local par exemple ici 192.168.0.14 ; et des DNS forwarders)) 
 + 
 +Puis appliquez les modifications. Si la connexion est partagée entre tous les utilisateurs,​ un mot de passe administrateur vous sera demandé. 
 + 
 +On peut alors éditer le fichier **/​etc/​resolv.conf** ​afin qu'il ressemble à ceci : 
 + 
 +<​code>​domain mondomaine.hyp 
 +search mondomaine.hyp 
 +nameserver 127.0.0.1 
 +nameserver 192.168.0.14 ​ # À remplacer ​par l'IP du système sur lequel Bind sera installé. 
 +nameserver 8.8.8.8 
 +nameserver 8.8.4.4 
 +</​code>​ 
 + 
 + 
 +  * **Script de démarrage pour effacer les modifications de Network Manager**. 
 +On va modifier le fichier avec le script, en même temps que résoudre le problème "​Network Manager",​ donc inutile d'​éditer /​etc/​resolv.conf après l'​exécution du script.
  
   * Création du script pour networkmanager :   * Création du script pour networkmanager :
Ligne 212: Ligne 235:
 echo "​search mondomaine.hyp"​ >> /​etc/​resolv.conf echo "​search mondomaine.hyp"​ >> /​etc/​resolv.conf
 echo "​nameserver 127.0.0.1"​ >> /​etc/​resolv.conf echo "​nameserver 127.0.0.1"​ >> /​etc/​resolv.conf
 +echo "​nameserver 192.168.0.14"​ >> /​etc/​resolv.conf
 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>​ +cho "​nameserver 8.8.4.4"​ >> /​etc/​resolv.conf</​code>​ 
- +>Adapter le contenu ​selon le choix de votre forwarder, ici 8.8.8.8 et 8.8.4.4 sont les DNS de Google.
->Adapter le contenu ​à la configuration+
  
 <code root>​chmod 755 /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ <code root>​chmod 755 /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
Ligne 226: Ligne 249:
 search mondomaine.hyp search mondomaine.hyp
 nameserver 127.0.0.1 nameserver 127.0.0.1
 +nameserver 192.168.0.14 ​ # À remplacer par l'IP du système sur lequel Bind sera installé.
 nameserver 8.8.8.8 nameserver 8.8.8.8
 nameserver 8.8.4.4 nameserver 8.8.4.4
 </​code>​ </​code>​
- 
  
   * Redémarrer le réseau :   * Redémarrer le réseau :
Ligne 235: Ligne 258:
 <code root>/​etc/​init.d/​networking start</​code>​ <code root>/​etc/​init.d/​networking start</​code>​
  
-====Installer et configurer ​bind ====+ 
 +<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>​ 
 + 
 + 
 +=====Installer et configurer ​un serveur DNS cache ====
 +<​note>​Dans le cas où vous partagez votre connexion internet (modem cable, adsl, ou même simple modem) il est très utile d'​utiliser un serveur DNS cache. Par contre, pour que vos stations qui utilisent cette connexion partagée se servent de ce serveur cache DNS, n'​oubliez surtout pas de configurer toutes les stations pour qu'​elles utilisent comme serveur DNS votre serveur et pas un autre. Pour cela, donnez comme adresse de serveur DNS l'​adresse interne (côté LAN donc) de votre serveur. </​note>​
 ===installation du paquetage=== ===installation du paquetage===
 <code root> <code root>
-apt-get update ​apt-get+apt-get update
 </​code>​ </​code>​
  
Ligne 361: Ligne 396:
                 8.8.8.8;                 8.8.8.8;
                 8.8.4.4;                 8.8.4.4;
-                212.27.40.240;​ +                ​// 212.27.40.240;​ 
-                212.27.40.241;​+                ​// 212.27.40.241;​
          };          };
  
Ligne 380: Ligne 415:
 </​code>​ </​code>​
  
-On peut mettre les forwarders qu'on souhaite, par exemple ici ceux de "​boxmachin"​ fournisseur adsl.+On peut mettre les forwarders qu'on souhaite, par exemple ici ceux de google ou/et ceux de "​boxmachin"​fournisseur adsl.
  
-  * redémarrer ​bind9 :+  * Redémarrer ​bind9 :
  
 <code root>​service bind9 restart</​code>​ <code root>​service bind9 restart</​code>​
Ligne 401: Ligne 436:
 <code root>​hostname</​code>​ <code root>​hostname</​code>​
 <​code>​ <​code>​
-debian-serveur.mondomaine.hyp</​code>​+debian-serveur</​code>​
  
   * Avec nslookup :   * Avec nslookup :
Ligne 429: Ligne 464:
 <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 server ​DNS local au sujet d'un client du réseau ====
 ===Configuration === ===Configuration ===
 <code root>vim /​etc/​bind/​db.mondomaine.hyp</​code>​ <code root>vim /​etc/​bind/​db.mondomaine.hyp</​code>​
Ligne 489: Ligne 524:
 > exit</​code>​ > exit</​code>​
  
-=====Configurer un server DNS Maître en local sous wheezy===== +=====Générer une clé d'​authentification avec l'​utilitaire rndc=====
-Il s'agit d'un serveur qui ne fera autorité que sur le réseau local et non sur aucune autre zone.\\  +
-Il va s'​occuper d'​aller chercher les infos sur des forwarders ou des serveurs racine ... et de les stoker dans son cache.+
  
-  *Soit un server sous Debian Wheezy nommé : "​debian-serveur"​ +Cet utilitaire permet d'​administrer notre serveur. ​Après ​l'installation ​de Bindla première chose à faire est de configurer rndc, ce qui consiste à configurer une clé d'authentification relative ​à la configuration de son réseau local.\\ 
-  *Adresse IP pour "eth0 " du serveur "​debian-serveur" : 192.168.0.14 +
-  *Soit un nom de domaine : "​mondomaine.hyp"​ +
-  *Soit un ordi client sur le réseau local : "​debian-client"​ avec l'IP 192.168.0.22 +
-====Pré-requis==== +
-===IP statique=== +
-  * Configurer une IP statique pour le serveur sur lequel on installe bind9. +
-Se rendre sur le site de son FAIet associer l'adresse mac du serveur ​à l'IP dans les BAUX/DHCP.+
  
-===Compléter /​etc/​hostname ===+ BIND contient un utilitaire appelé rndc qui permet d'​utiliser des lignes de commande pour administrer le démon named à partir de l'​hôte local ou d'un hôte distant.
  
-<code root>​vim ​/etc/hostname </code> +Afin d'​empêcher l'​accès non-autorisé au démon named, BIND utilise une méthode d'​authentification à clé secrète partagée pour accorder des privilèges aux hôtes. Ainsi, une clé identique doit être présente aussi bien dans /etc/named.conf que dans le fichier de configuration de rndc, à savoir ​/etc/rndc.conf.
-<​code>​debian-serveur.mondomaine.hyp</​code>​+
  
-<code root>/etc/init.d/​hostname.sh start</​code>​+<note> 
 +__Remarques sur la configuration de rndc.__\\ 
  
-===Compléter /etc/host.conf===+Pour utiliser rmdc à distance mettre sur la machine qui génère rndc les info données en sortie par la commande rndc-confgen à mettre dans **rndc.conf** et sur le serveur distant les infos à mettre dans **named.conf**.
  
-<code root>​vim ​/etc/​host.conf </​code>​ +</note>
-<​code>​order hosts, bind +
-multi on +
-</code>+
  
-===Compléter ​/etc/hosts=== +  * Dans /etc/bindon voit le fichier rndc.key :
- +
-<code root>​vim ​/etc/​hosts</​code>​+
  
 +<code root>ls /​etc/​bind/</​code>​
 <​code>​ <​code>​
-127.0.0.1 localhost.localdomain localhost +bind.keys  db.empty    named.conf.default-zones ​ zones.rfc1918 
- +db.0    db.local    named.conf.local 
-192.168.0.14    serveur-debian.mondomaine.hyp serveur-debian +db.127    db.root     named.conf.options 
-192.168.0.22    debian.mondomaine.hyp debian +db.255    named.conf  rndc.key
- +
-192.168.0.1     ​gateway.modomaine.hyp gateway +
- +
- +
-# The following lines are desirable for IPv6 capable hosts +
-::1     ​localhost ip6-localhost ip6-loopback +
-ff02::1 ip6-allnodes +
-ff02::2 ip6-allrouters+
 </​code>​ </​code>​
  
-===Déclarer un nom de domaine dans /​etc/​resolv.conf=== +<​note ​warning
-If faut déclarer un nom de domaine dans /​etc/​resolv.conf.\\  +**rndc.key ne s'​édite pas !**
-Au passage on peut indiquer d'​autre DNS extérieurs que ceux du FAI.\\  +
-Il faut pour que la nouvelle configuration du fichier /​etc/​resolv.conf ne soit par effacer lors d'un redémarrage,​ par networmanager créer un script.\\  +
-<​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>​ </​note>​
  
-On peut soit éditer le fichier ​**/​etc/​resolv.conf**,​ mais comme le script suivant est nécessaire pour ne pas être embêté par networmanager,​ on va modifier le fichier avec le script.+  ​Générer une clé :
  
-  * Création du script pour networkmanager : +<code root>rndc-confgen >/etc/bind/rndc.key</​code>​
-<code root>cd /etc/NetworkManager/</​code>​+
  
-<code root>touch /etc/NetworkManager/dispatcher.d/99-dns</​code>​+  * Indiquer le fichier rndc.key à la fin de /​etc/​bind/​named.conf : 
 +<code root>echo '​include "/etc/bind/rndc.key";'​ >> ​/etc/​bind/​named.conf</​code>​
  
-<code root>vim /etc/NetworkManager/dispatcher.d/99-dns</​code>​ +  * Éditer /​etc/​bind/​rndc.key pour commenter toute la fin à partir de ''​options {''​ : 
-<​code>#​!/bin/sh +<code root>vim /etc/bind/rndc.key</​code>​ 
-echo "​domain mondomaine.hyp"​ > /etc/resolv.conf +<​code># ​Start of rndc.conf 
-echo "search mondomaine.hyp" ​>> /​etc/​resolv.conf +key "rndc-key" ​{ 
-echo "​nameserver 127.0.0.1"​ >> /​etc/​resolv.conf +        ​algorithm hmac-md5; 
-echo "nameserver 8.8.8.8" ​>> /​etc/​resolv.conf +        ​secret ​"xxxxxxxxxxxxxxxxx"; 
-echo "​nameserver 8.8.4.4"​ >> /​etc/​resolv.conf</​code>​+};
  
->Adapter le contenu à la configuration+#options { 
 +#       ​default-key "​rndc-key";​ 
 +#       ​default-server 127.0.0.1;​ 
 +#       ​default-port 953; 
 +#}; 
 +# End of rndc.conf
  
-<code root>​chmod 755 /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ +# Use with the following in named.conf, adjusting the allow list as needed
- +# key "​rndc-key"​ { 
-  * Exécution du script ​+#       ​algorithm hmac-md5; 
- +#       ​secret "​xxxxxxxxxxxxxx";​ 
-<code root>​bash /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ +# }; 
-<code root>​less /​etc/​resolv.conf</​code>​ +# 
-<​code>​domain mondomaine.hyp +# controls { 
-search mondomaine.hyp +#       ​inet ​127.0.0.1 ​port 953 
-nameserver ​127.0.0.1 +#               allow { 127.0.0.1; } keys { "​rndc-key";​ }; 
-nameserver 8.8.8.8 +# }; 
-nameserver 8.8.4.4+# End of named.conf
 </​code>​ </​code>​
  
 +===Configurer les zones qui utilise la clé ===
  
-  * Redémarrer le réseau ​:+  * Éditer /​etc/​bind/​named/​conf.local ​:
  
-<code root>/​etc/​init.d/​networking start</​code>​ 
- 
-====Installer et configurer bind ==== 
-===installation du paquetage=== 
-<code root> 
-apt-get update apt-get 
-</​code>​ 
- 
-<code root> 
-apt-get install bind9 
-</​code>​ 
- 
-===Configuration de bind pour un serveur DNS maître local=== 
-<note tip> 
-__Quelques commandes utiles lors de la configuration de bind9__ : 
- 
-  * Si la configuration est difficile on peut chercher les erreurs avec les commandes suivantes : 
-<code root>​named-checkzone webadonf.lan /​etc/​bind/​db.webadonf.lan</​code>​ 
-<code root>​named-checkzone webadonf.lan /​etc/​bind/​db.webadonf.lan.inv</​code>​ 
-<code root>​named-checkconf /​etc/​bind/​named.conf</​code>​ 
-<code root>​named-checkconf /​etc/​bind/​named.conf.options</​code>​ 
- 
- 
-  *Voir aussi les logs : 
-<code root>​tail -30 /​var/​log/​syslog</​code>​ 
- 
-</​note>​ 
- 
-  *Le dossier **/​etc/​bind/​** : 
- 
-<code root>cd /etc/bind/ && ls</​code>​ 
- 
-<​code>​bind.keys ​ db.127 ​ db.empty ​ db.root named.conf.default-zones ​ named.conf.options ​ zones.rfc1918 
-db.0    ​db.255 ​ db.local ​ named.conf ​ named.conf.local  ​  ​rndc.key 
-</​code>​ 
- 
-  * Créer le fichier "​**/​etc/​bind/​db.mondomaine.hyp**"​ : 
- 
-Prendre le fichier /​etc/​bind/​db.local pour modèle. 
- 
-<code root>cp /​etc/​bind/​db.local /​etc/​bind/​db.mondomaine.hyp</​code>​ 
- 
-Éditer "/​etc/​bind/​db.mondomaine.hyp"​ : 
- 
-<code root>vim /​etc/​bind/​db.mondomaine.hyp</​code>​ 
-<​code>​ 
-; 
-; BIND data file for local loopback interface 
-; 
-$TTL    604800 
-@       ​IN ​     SOA     ​debian-serveur.mondomaine.hyp. root.mondomaine.hyp. ( 
-                              2         ; Serial 
-                         ​604800 ​        ; Refresh 
-                          86400         ; Retry 
-                        2419200 ​        ; Expire 
-                         ​604800 )       ; Negative Cache TTL 
-; 
-@       ​IN ​     NS      debian-serveur.mondomaine.hyp. 
-debian-serveur ​ IN   ​A ​ 192.168.0.14 
- 
-</​code>​ 
- 
-  * Créer le fichier de recherche inverse "​**db.mondomaine.hyp.inv**"​ : 
- 
-Prendre pour modèle /​etc/​bind/​db.127 
- 
-<code root>cp /​etc/​bind/​db.127 /​etc/​bind/​db.192</​code>​ 
- 
-Éditer "/​etc/​bind/​db.192"​ : 
- 
-<code root>vim /​etc/​bind/​db.192</​code>​ 
-<​code>​ 
-; 
-; BIND reverse data file for eth0  interface 
-; 
-$TTL    604800 
-@       ​IN ​     SOA     ​debian-serveur.mondomaine.hyp. root.mondomaine.hyp. ( 
-                              1         ; Serial 
-                         ​604800 ​        ; Refresh 
-                          86400         ; Retry 
-                        2419200 ​        ; Expire 
-                         ​604800 )       ; Negative Cache TTL 
-; 
-@       ​IN ​     NS      debian-serveur. 
-14      IN      PTR     ​debian-serveur.mondomaine.hyp. 
- 
-</​code>​ 
- 
-  * Configurer le fichier "/​etc/​bind/​named.conf.local"​ : 
 <code root>vim /​etc/​bind/​named.conf.local</​code>​ <code root>vim /​etc/​bind/​named.conf.local</​code>​
-<​code>​ +<​code>//​
-//+
 // Do any local configuration here // Do any local configuration here
 // //
Ligne 682: Ligne 603:
         type master;         type master;
         file "/​etc/​bind/​db.mondomaine.hyp";​         file "/​etc/​bind/​db.mondomaine.hyp";​
 +        allow-update {key rndc-key;};
 }; };
 zone "​0.168.192.in-addr.arpa"​ { zone "​0.168.192.in-addr.arpa"​ {
         type master;         type master;
         file "/​etc/​bind/​db.192";​         file "/​etc/​bind/​db.192";​
 +        allow-update {key rndc-key;};
 }; };
- 
 </​code>​ </​code>​
  
-  * Configurer "/​etc/​bind/​named.conf.options"​ : +===Relancer bind9===
-<code root>vim /​etc/​bind/​named.conf.options</​code>​ +
-<​code>​ +
- ​options { +
-        directory "/​var/​cache/​bind";​+
  
-        ​// If there is a firewall between you and nameservers you want +<code root>/etc/init.d/bind9 restart</code>
-        // to talk to, you may need to fix the firewall to allow multiple +
-        // ports to talk See http://​www.kb.cert.org/​vuls/id/800113+
  
-        // If your ISP provided one or more IP addresses ​for stable +<​code>​[....] Stopping domain name service...: bind9waiting ​for pid 5441 to die 
-        // nameservers,​ you probably want to use them as forwarders+ok  
-        // Uncomment the following block, and insert the addresses replacing +[ ok ] Starting domain name service...: bind9.</​code>​
-        // the all-0'​s placeholder.+
  
-         ​forwarders { +=====Côté client ===== 
-                ​192.168.0.1;​ +===Éditer ​/etc/hosts.conf=== 
-                8.8.8.8; +Afin que le serveur bind du réseau local soit interrogé par le client.
-                8.8.4.4; +
-                ​// 212.27.40.240; +
-                // 212.27.40.241;​ +
-         };+
  
-        //​======================================================================== +<​code ​root>​vim ​/etc/host.conf</code> 
-        // If BIND logs error messages about the root key being expired, +<​code>​ 
-        ​// you will need to update your keys See https://​www.isc.org/bind-keys +order hosts,bind  
-        //​======================================================================== +multi on  
-        dnssec-validation auto;+nospoof on </code>
  
-        auth-nxdomain no;    # conform to RFC1035 +> **''​order''​** ​ : indique l'​ordre des requêtes : ici, d'​abord le fichier hosts, puis, en cas d'​échec,​ le serveur de noms  
-        ​version none; +> **''​multi''​** ​ mis à **''​on''​** : plusieurs adresses IP peuvent être associées à un même nom.  
-        forward only; +> **''​nospoof''​** :  oblige, par sécurité, à vérifier la concordance entre adresse IP et nom lors de la résolution d'​adresses inverse.
-//      listen-on-v6 { any; }; +
-};+
  
 +===Configurer le fichier /​etc/​resolv.conf===
 +Deux solutions :
  
-</code>+  * Solution 1 : Installer un script client pour **/etc/​resolv.conf** 
 +  
 +Ce qui  permet aussi de ne plus être embêté par [[atelier:​chantier:​dns-bind9-sur-wheezy?&#​declarer-un-nom-de-domaine-dans-etc-resolvconf|networkmanager]],​ on peut éditer un script avec l'​adresse IP du serveur local bind mais sans forwarder.\\ ​
  
-On peut mettre les forwarders qu'on souhaite, par exemple ici ceux de google et/ou ceux de "​boxmachin"​ fournisseur adsl.+<code root>​cd ​/etc/​NetworkManager/</​code>​
  
-  * Redémarrer bind9 :+<code root>​touch /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
  
-<code root>​service bind9 restart</​code>​ 
  
-ou+<code root>vim /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
  
-<code root>/​etc/​init.d/​bind9 restart</​code>​ 
  
-<​code>​ +<​code>​#!/bin/sh 
-[....] Stopping ​domain ​name service...: bind9rndc: connect failed: 127.0.0.1#953: connection refused +echo "domain ​mondomaine.hyp" > /etc/resolv.conf 
-ok  +echo "​search mondomaine.hyp" >> /etc/resolv.conf 
-[ ok ] Starting domain name service...: bind9.+echo "​nameserver 192.168.0.14" >> /etc/resolv.conf</​code>​
  
-</​code>​+<code root>​bash /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
  
-==== Vérifier le DNS==== +<​code ​user>less /​etc/​resolv.conf</​code>​
-Pour avoir le nom complet : +
-<​code ​root>hostname</​code>​+
 <​code>​ <​code>​
-debian-serveur.mondomaine.hyp</​code>​+domain mondomaine.hyp 
 +search ​mondomaine.hyp ​ 
 +nameserver 192.168.0.14 
 +</​code>​
  
-  * Avec nslookup ​: +  * Solution 2 **Configurer Network Manager**
-<code root>​nslookup</​code>​ +
-<​code>>​ debian-serveur.mondomaine.hyp +
-Server:​ 127.0.0.1 +
-Address:​ 127.0.0.1#​53+
  
-Name: debian-serveur.mondomaine.hyp +En faisant ​:\\  
-Address: 192.168.0.14 +-Système -Préférences -> Connexions réseau \\ 
-exit</​code>+Puis il faut modifier toutes les connexions que vous avez dans tous les onglets (Filaire, Sans fil, etc…), en faisant, pour chacune d’entre-elles :
  
-  ​* Idem pour la zone inverse : +  ​- Cliquez sur la connexion à modifier ; 
-<code root>​nslookup</​code>​ +  - Bouton "​Modifier"​ ; 
-<​code>>​ 192.168.0.14 +  - Onglet "​Paramètres IPv4" (et aussi IPv6 si vous l’utilisez) ; 
-Server: 127.0.0.1 +  - Méthode : Adresses automatiques uniquement (DHCP) ; 
-Address:​ 127.0.0.1#53+  - Serveurs DNS : 127.0.0.1 ​((on aussi mettre l'IP du serveur DNS local par exemple ici 192.168.0.14 ; et des DNS forwarders))
  
-14.0.168.192.in-addr.arpa name = debian-serveur.mondomaine.hyp. +Puis appliquez les modificationsSi la connexion est partagée entre tous les utilisateurs,​ un mot de passe administrateur vous sera demandé.
-> exit</​code>​+
  
-Il répond aux deux, donc tout va bien !+> On peut alors éditer le fichier **/​etc/​resolv.conf** afin qu'il ressemble à ceci :
  
-  *Avec dig : +<​code>​domain mondomaine.hyp 
-<​code ​root>dig debian-serveur</​code>​+search mondomaine.hyp 
 +nameserver 127.0.0.1 
 +nameserver 192.168.0.14 ​ # À remplacer par l'IP du système sur lequel Bind sera installé. 
 +nameserver 8.8.8.8 
 +nameserver 8.8.4.4 
 +</​code>​
  
-<code root>dig mondomaine.hyp</code>+>Le client va lire le fichier **hosts.conf** et rechercher l'​adresse correspondant au nom demandé d'​abord dans le fichier hosts local ; si la requête échoue, il va s'​adresser à bind, le serveur DNS du réseau local. Pour qu'il trouve l'​adresse de ce serveur DNS, un deuxième fichier est nécessaire,​ **/etc/​resolv.conf**.
  
-<code root>/​code>​dig -x @192.168.0.14</​code>​+  * Puis recharger la configuration réseau :
  
-====Interroger le DNS local sur un client du réseau ==== +<code root>/​etc/​init.d/networking start</​code>​
-===Configuration === +
-<code root>vim /etc/bind/db.mondomaine.hyp<​/code> +
-<​code>;​ +
-; BIND data file for local loopback interface +
-+
-$TTL    604800 +
-@       ​IN ​     SOA     ​debian-serveur.mondomaine.hyp. root.mondomaine.hyp. ( +
-                              2         ; Serial +
-                         ​604800 ​        ; Refresh +
-                          86400         ; Retry +
-                        2419200 ​        ; Expire +
-                         ​604800 )       ; Negative Cache TTL +
-+
-@       ​IN ​     NS      debian-serveur.mondomaine.hyp. +
-debian-serveur ​ IN   ​A ​ 192.168.0.14 +
-debian-client1 ​ IN   ​A ​ 192.168.0.22 +
-</​code>​+
  
-Et pour la réserve inverse ​:+  * Vérifier que le client interroge le DNS local :
  
-<​code ​root>vim /​etc/​bind/​db.192</​code>​ +<​code ​user>host -a debian-serveur</​code>​ 
-<​code>​+<​code>​ 
-; BIND reverse data file for eth0  interface +Trying "debian-serveur.mondomaine.hyp" 
-+;; ->>​HEADER<<​- opcode: QUERY, status: NOERROR, id: 10787 
-$TTL    604800 +;; flags: qr aa rd raQUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
-@       ​IN ​     SOA     debian-serveur.mondomaine.hyp. root.mondomaine.hyp. ( +
-                              ​1 ​        Serial +
-                         ​604800 ​        Refresh +
-                          ​86400 ​        Retry +
-                        2419200 ​        Expire +
-                         ​604800 )       Negative Cache TTL +
-+
-@       ​IN ​     NS      debian-serveur. +
-14      IN      PTR     ​debian-serveur.mondomaine.hyp. +
-22      IN      PTR     ​debian-client1. +
-</​code>​+
  
-On recharge bind +;; QUESTION SECTION
-<code root>/​etc/​init.d/bind9 restart</​code>​+;​debian-serveur.mondomaine.hyp. IN ANY
  
-===Vérification=== +;; ANSWER SECTION: 
-<code root>​nslookup</​code>​+debian-serveur.mondomaine.hyp. 604800 IN A 192.168.0.14
  
 +;; AUTHORITY SECTION:
 +mondomaine.hyp. 604800 IN NS debian-serveur.mondomaine.hyp.
 +
 +Received 77 bytes from 192.168.0.14#​53 in 0 ms</​code>​
 +
 +  * Ou avec dig 
 +
 +<code user>dig mondomaine.hyp</​code>​
 <​code>​ <​code>​
-> debian-client1 
-Server:​ 127.0.0.1 
-Address:​ 127.0.0.1#​53 
  
-Name:​ debian-client1.mondomaine.hyp +; <<>>​ DiG 9.8.4-rpz2+rl005.12-P1 <<>> ​mondomaine.hyp 
-Address192.168.0.22 +;; global options+cmd 
-192.168.0.22 +;; Got answer: 
-Server: 127.0.0.1 +;; ->>​HEADER<<​- opcode: QUERY, status: NOERROR, id: 12579 
-Address: 127.0.0.1#53+;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: ​1, ADDITIONAL: 0
  
-22.0.168.192.in-addr.arpa name = debian-client1. +;; QUESTION SECTION: 
-> exit</​code>​+;mondomaine.hyp. IN A
  
-=====Côté client ===== +;; AUTHORITY SECTION: 
-Se débarrasser [[utilisateurs:hypathie:​tutos:​dns-bind?&#​desactiver-networkmanager|de networkmanager]] avant tout.\\ +mondomaine.hyp. 604800 IN SOA debian-serveur.mondomaine.hyp. root.mondomaine.hyp2 604800 86400 2419200 604800
  
-  *Il n'y a qu'un fichier à éditer "/​etc/​resolv.conf":+;; Query time: 0 msec 
 +;; SERVER: 192.168.0.14#​53(192.168.0.14) 
 +;; WHENSun Sep 14 09:00:08 2014 
 +;; MSG SIZE  rcvd: 88</​code>​
  
-<code root>vim /​etc/​resolv.conf</​code>​ 
  
 +  * Avec la réserve :
 +<code user>dig -x 192.168.0.14</​code>​
 <​code>​ <​code>​
-domaine mondomaine.hyp +; <<>>​ DiG 9.8.4-rpz2+rl005.12-P1 <<>>​ -x 192.168.0.14 
-search mondomaine.hyp +;; global options: +cmd 
-nameserver ​192.168.0.14 +;; Got answer: 
-</code>+;; ->>​HEADER<<​- opcode: QUERY, status: NOERROR, id: 47078 
 +;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
  
-  * Puis recharger la configuration réseau ​+;; QUESTION SECTION
-<​code ​root>/etc/init.d/networking start</code>+;​14.0.168.192.in-addr.arpa. IN PTR 
 + 
 +;; ANSWER SECTION: 
 +14.0.168.192.in-addr.arpa. 604800 IN PTR debian-serveur.mondomaine.hyp. 
 + 
 +;; AUTHORITY SECTION: 
 +0.168.192.in-addr.arpa. 604800 IN NS debian-serveur. 
 + 
 +;; Query time: 0 msec 
 +;; SERVER: 192.168.0.14#​53(192.168.0.14) 
 +;; WHEN: Sun Sep 14 09:03:29 2014 
 +;; MSG SIZE  rcvd: 114</code> 
 + 
 + 
 +Sur la commande dig : [[http://www.system-linux.eu/index.php?​post/2009/​04/​23/​La-commande-dig]]
  
 +Pour la configuration des clients Windows [[http://​valaurea.free.fr/​documents/​sig11_bind9_1.html]]
  
atelier/chantier/dns-bind9-sur-wheezy.txt · Dernière modification: 20/06/2020 13:59 par tuFek

Pied de page des forums

Propulsé par FluxBB