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
Prochaine révision Les deux révisions suivantes
atelier:chantier:dns-bind9-sur-wheezy [01/09/2014 09:21]
Hypathie [Configurer un server DNS Maître en local sous wheezy]
atelier:chantier:dns-bind9-sur-wheezy [23/10/2014 11:07]
Hypathie [Installer et configurer un serveur DNS]
Ligne 9: Ligne 9:
   * 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 !))    * 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 ​local===== 
-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'agir de configurer ​un serveur ​DNS qui servira de serveur cache pour le système ​sur lequel Bind va être installé, ​et qui sera de serveur DNS maître pour les systèmes clients du réseau local.
-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"​ +  * Soit un server sous Debian Wheezy nommé : "​debian-serveur"​ 
-  *Adresse IP pour "eth0 " du serveur "​debian-serveur"​ : 192.168.0.14 +  * Adresse IP pour "eth0 " du serveur "​debian-serveur"​ : 192.168.0.14 
-  *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==== +  * Soit un autre ordi sur le réseau local : "​debian-hp" avec l'IP 192.168.0.23 
-===IP statique=== +Les IP des ordinateurs clients et du système ​sur lequel ​il va être installé Bind sont fixées par le serveur DHCP par exemple celui du modem fourni par son FAI((Se rendre sur le site de son FAI, et associer l'​adresse mac du serveur à l'IP dans les BAUX/DHCP.)), ou encore par un serveur DHCP installé entre le routeur et les clients du réseau local.
-  * 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.+
  
-===Compléter /​etc/​hostname ​===+===Connaître le nom du système sur lequel on installera Bind ===
  
-<​code ​root>vim /etc/hostname </​code>​ +<​code ​user>​hostname </​code>​ 
-<​code>​debian-serveur.mondomaine.hyp</​code>​+<​code>​debian-serveur</​code>​ 
 + 
 +  * Si on veut le changer pour lui donner un nom plus significatif de sa fonction de server : 
 + 
 +<code root>vim /​etc/​hostname</​code>​ 
 + 
 +  * Puis ré-initialiser :
  
 <code root>/​etc/​init.d/​hostname.sh start</​code>​ <code root>/​etc/​init.d/​hostname.sh start</​code>​
  
 ===Compléter /​etc/​host.conf=== ===Compléter /​etc/​host.conf===
 +Il s'agit là de la partie cliente du système sur lequel va être installé Bind. Un même système peut être à la fois client et serveur, c'​est-à-dire,​ serveur DNS "pour lui-même"​. ​
  
 <code root>vim /​etc/​host.conf </​code>​ <code root>vim /​etc/​host.conf </​code>​
Ligne 169: Ligne 175:
  
 ===Compléter /​etc/​hosts=== ===Compléter /​etc/​hosts===
 +Il s'agit là encore de l'​aspect client du système. On renseigne tous les clients du réseau local.\\ ​
 +On renseigne aussi le nom de domaine de ce système en tant que client.
  
 <code root>vim /​etc/​hosts</​code>​ <code root>vim /​etc/​hosts</​code>​
  
 <​code>​ <​code>​
-127.0.0.1 localhost.localdomain ​localhost+127.0.0.1 ​      ​localhost.mondomaine.hyp ​     ​localhost 
 +192.168.0.14 ​   debian-serveur.mondomaine.hyp debian-serveur 
 +192.168.0.22 ​   debian-client1 
 +192.168.0.23 ​   debian-hp
  
-192.168.0.14 ​   serveur-debian.mondomaine.hyp serveur-debian 
-192.168.0.22 ​   debian.mondomaine.hyp debian 
- 
-192.168.0.1 ​    ​gateway.modomaine.hyp gateway 
  
  
Ligne 185: Ligne 192:
 ff02::1 ip6-allnodes ff02::1 ip6-allnodes
 ff02::2 ip6-allrouters ff02::2 ip6-allrouters
 +
 </​code>​ </​code>​
  
 ===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.\\  +Et retirer les DNS extérieurs, afin que Bind soit consulté.\\ 
-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 ​:+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.\\ ​
  
-<code root>​apt-get remove --purge network-manager-gnome netwok-manager</​code>​+Deux solutions pour résoudre ce problème : soit on configure Network Manager, soit on se crée un script.
  
-</​note>​+  * **Configurer Network Manager**.
  
-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.+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 : 
 + 
 +  - 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  
 + 
 +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</​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 211: Ligne 237:
 echo "​domain mondomaine.hyp"​ > /​etc/​resolv.conf echo "​domain mondomaine.hyp"​ > /​etc/​resolv.conf
 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 ​192.168.0.14" >> /​etc/​resolv.conf 
-echo "​nameserver ​8.8.8.8" >> /​etc/​resolv.conf +echo "#nameserver ​212.27.40.240" >> /​etc/​resolv.conf 
-echo "​nameserver ​8.8.4.4" >> /​etc/​resolv.conf</​code>​+echo "#nameserver ​212.27.40.241" >> /​etc/​resolv.conf 
 +</​code>​
  
->​Adapter ​le contenu à la configuration+Et c'est tout, Bind sera le server DNS du système sur lequel il est installé.\\  
 +On peut simplement commenter les anciens paramètres du fichier afin d'​avoir sous la main les DNS de son FAI.
  
 <code root>​chmod 755 /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ <code root>​chmod 755 /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
Ligne 225: Ligne 253:
 <​code>​domain mondomaine.hyp <​code>​domain mondomaine.hyp
 search mondomaine.hyp search mondomaine.hyp
-nameserver ​127.0.0.1 +nameserver ​192.168.0.14 
-nameserver ​8.8.8.8 +nameserver ​212.27.40.240 
-nameserver ​8.8.4.4+nameserver ​212.27.40.241
 </​code>​ </​code>​
- 
  
   * Redémarrer le réseau :   * Redémarrer le réseau :
Ligne 235: Ligne 262:
 <code root>/​etc/​init.d/​networking start</​code>​ <code root>/​etc/​init.d/​networking start</​code>​
  
-====Installer et configurer ​bind ==== + 
-===installation ​du paquetage===+<note tip> 
 +  * Au sujet de Network Manager:\\ [[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 ====
 + 
 +  
 +<​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===
 <code root> <code root>
-apt-get update ​apt-get+apt-get update
 </​code>​ </​code>​
  
Ligne 280: Ligne 322:
 <​code>​ <​code>​
 ; ;
-; BIND data file for local loopback ​interface+; BIND data file for eth0 interface
 ; ;
 $TTL    604800 $TTL    604800
Ligne 292: Ligne 334:
 @       ​IN ​     NS      debian-serveur.mondomaine.hyp. @       ​IN ​     NS      debian-serveur.mondomaine.hyp.
 debian-serveur ​ IN   ​A ​ 192.168.0.14 debian-serveur ​ IN   ​A ​ 192.168.0.14
- 
 </​code>​ </​code>​
  
Ligne 318: Ligne 359:
 @       ​IN ​     NS      debian-serveur. @       ​IN ​     NS      debian-serveur.
 14      IN      PTR     ​debian-serveur.mondomaine.hyp. 14      IN      PTR     ​debian-serveur.mondomaine.hyp.
- 
 </​code>​ </​code>​
  
Ligne 334: Ligne 374:
         type master;         type master;
         file "/​etc/​bind/​db.mondomaine.hyp";​         file "/​etc/​bind/​db.mondomaine.hyp";​
 +        allow-query { any; };        ​
 }; };
 zone "​0.168.192.in-addr.arpa"​ { zone "​0.168.192.in-addr.arpa"​ {
Ligne 339: Ligne 380:
         file "/​etc/​bind/​db.192";​         file "/​etc/​bind/​db.192";​
 }; };
- 
 </​code>​ </​code>​
  
Ligne 358: Ligne 398:
  
          ​forwarders {          ​forwarders {
-                192.168.0.1;+                192.168.0.14;
                 8.8.8.8;                 8.8.8.8;
                 8.8.4.4;                 8.8.4.4;
Ligne 397: Ligne 437:
 </​code>​ </​code>​
  
-==== Vérifier le DNS==== +===== Vérifier le bon fonctionnement du DNS sur le réseau local===== 
-Pour avoir le nom complet :+====Vérifier côté serveur  ​==== 
 +Pour avoir le nom complet ​sur système avec Bind :
 <code root>​hostname</​code>​ <code root>​hostname</​code>​
 <​code>​ <​code>​
-debian-serveur.mondomaine.hyp</​code>​+debian-serveur</​code>​ 
 +===Vérifier le DNS avec nslookup === 
 +  * Demander l'​adresse associée à un nom d'​hôte :
  
-  * Avec nslookup : 
 <code root>​nslookup</​code>​ <code root>​nslookup</​code>​
 <​code>>​ debian-serveur.mondomaine.hyp <​code>>​ debian-serveur.mondomaine.hyp
Ligne 413: Ligne 455:
 > exit</​code>​ > exit</​code>​
  
-  * Idem pour la zone inverse :+  * Idem pour la zone inverse, vérifier qu'IP correspond à un hôte:
 <code root>​nslookup</​code>​ <code root>​nslookup</​code>​
 <​code>>​ 192.168.0.14 <​code>>​ 192.168.0.14
Ligne 424: Ligne 466:
 Il répond aux deux, donc tout va bien ! Il répond aux deux, donc tout va bien !
  
-  *Avec dig :+  * vérifier avec dig :
 <code root>dig debian-serveur</​code>​ <code root>dig debian-serveur</​code>​
  
 <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 des autres clients ​du réseau ==== 
-===Configuration ===+===Configuration ​de Bind ===
 <code root>vim /​etc/​bind/​db.mondomaine.hyp</​code>​ <code root>vim /​etc/​bind/​db.mondomaine.hyp</​code>​
 <​code>;​ <​code>;​
Ligne 482: Ligne 524:
 Name:​ debian-client1.mondomaine.hyp Name:​ debian-client1.mondomaine.hyp
 Address: 192.168.0.22 Address: 192.168.0.22
-> 192.168.0.22+> 192.168.0.23
 Server:​ 127.0.0.1 Server:​ 127.0.0.1
 Address:​ 127.0.0.1#​53 Address:​ 127.0.0.1#​53
  
-22.0.168.192.in-addr.arpa name = debian-client1.+23.0.168.192.in-addr.arpa name = debian-hp.0.168.192.in-addr.arpa.
 > exit</​code>​ > exit</​code>​
  
-=====Configurer un server DNS Maître en local sous wheezy===== +>Il connaît bien les deux clients, soit à partir ​d'​un ​nom d'hôte, soit à parti d'une adresse IP.
-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"​ +=====Les systèmes clients du réseau local le DNS Bind=====
-  *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 FAI, et associer l'​adresse mac du serveur à l'IP dans les BAUX/DHCP.+
  
-===Compléter /​etc/​hostname ​===+====Configurer des clients du réseau local ==== 
 +Ils faut les configurer afin qu'ils utilisent le serveur DNS local.\\ ​
  
-<code root>vim /​etc/​hostname </​code>​ +**Il faut sur chacun d'eux :**
-<​code>​debian-serveur.mondomaine.hyp</​code>​+
  
-<code root>/​etc/​init.d/​hostname.sh start</​code>​ +===Éditer ​/etc/hosts.conf=== 
- +Afin que le serveur bind du réseau local soit interrogé par le client.
-===Compléter ​/etc/host.conf=== +
- +
-<code root>vim /etc/host.conf </​code>​ +
-<​code>​order hosts, bind +
-multi on +
-</​code>​ +
- +
-===Compléter /​etc/​hosts=== +
- +
-<code root>vim /​etc/​hosts</​code>​+
  
 +<code root>vim /​etc/​host.conf</​code>​
 <​code>​ <​code>​
-127.0.0.1 localhost.localdomain localhost+order hosts,bind  
 +multi on  
 +nospoof on </​code>​
  
-192.168.0.14 ​   ​serveur-debian.mondomaine.hyp serveur-debian +> **''​order''​** ​ : indique l'​ordre des requêtes : ici, d'​abord le fichier hosts, puis, en cas d'​échec,​ le serveur ​de noms qui sera le serveur Bind quand le fichier /etc/resolv.conf aura été modifier pour ce faire
-192.168.0.22 ​   debian.mondomaine.hyp debian+> **''​multi''​** ​ mis à **''​on''​** : plusieurs adresses IP peuvent être associées à un même nom 
 +> **''​nospoof''​** :  oblige, par sécurité, à vérifier la concordance entre adresse IP et nom lors de la résolution d'​adresses inverse.
  
-192.168.0.1 ​    ​gateway.modomaine.hyp gateway 
  
 +<note tip>>​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, qui va lui-même demander à des forwarders s'il ne sait pas répondre. Pour qu'il trouve l'​adresse de ce serveur DNS, il consulte le fichier **/​etc/​resolv.conf** qu'il est donc nécessaire de modifier.</​note>​
  
-# The following lines are desirable for IPv6 capable hosts +===Configurer le fichier /​etc/​resolv.conf=== 
-::1     ​localhost ip6-localhost ip6-loopback +Deux solutions ​:
-ff02::1 ip6-allnodes +
-ff02::2 ip6-allrouters +
-</​code>​+
  
-===Déclarer ​un nom de domaine dans /​etc/​resolv.conf=== +  * Solution 1 : Installer ​un script client pour **/​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.\\  +Ce qui permet là aussi de ne plus être embêté par [[atelier:​chantier:​dns-bind9-sur-wheezy?&#​declarer-un-nom-de-domaine-dans-etc-resolvconf|networkmanager]],​ mais cette fois il va permettre de renseigner le système client ​DNS par l'adresse IP du serveur local bind.\\ 
-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>cd /​etc/​NetworkManager/</​code>​
  
-<code root>apt-get remove --purge network-manager-gnome netwok-manager</​code>​+<code root>touch /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
  
-</​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.+<code root>​vim ​/etc/NetworkManager/​dispatcher.d/​99-dns</​code>​
  
-  * Création du script pour networkmanager : 
-<code root>cd /​etc/​NetworkManager/</​code>​ 
  
-<code root>​touch /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ 
- 
-<code root>vim /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ 
 <​code>#​!/​bin/​sh <​code>#​!/​bin/​sh
 echo "​domain mondomaine.hyp"​ > /​etc/​resolv.conf echo "​domain mondomaine.hyp"​ > /​etc/​resolv.conf
 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 ​192.168.0.14" >> /​etc/​resolv.conf</​code>​
-echo "​nameserver 8.8.8.8"​ >> /​etc/​resolv.conf +
-echo "​nameserver 8.8.4.4"​ >> /​etc/​resolv.conf</​code>​ +
- +
->Adapter le contenu à la configuration +
- +
-<code root>​chmod 755 /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ +
- +
-  * Exécution du script :+
  
 <code root>​bash /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ <code root>​bash /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
-<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>​ 
  
- +<​code ​user>less /etc/resolv.conf</​code>​ 
-  * Redémarrer le réseau : +<​code>​ 
- +domain mondomaine.hyp 
-<​code ​root>/etc/init.d/​networking start</​code>​ +search mondomaine.hyp  
- +nameserver 192.168.0.14
-====Installer et configurer bind ==== +
-===installation du paquetage=== +
-<​code ​root+
-apt-get update apt-get+
 </​code>​ </​code>​
  
-<code root> +On fait cela sur tous les systèmes clients du réseau local. ​
-apt-get install bind9 +
-</​code>​+
  
-===Configuration de bind pour un serveur DNS maître local=== +  * Solution 2 **Configurer Network Manager**
-<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 ​+En faisant ​:\\  
-<code root>named-checkzone webadonf.lan /​etc/​bind/​db.webadonf.lan</​code> +-Système ​-> Préférences ​-> Connexions réseau \\ 
-<code root>​named-checkzone webadonf.lan /​etc/​bind/​db.webadonf.lan.inv</​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 :
-<code root>​named-checkconf /etc/​bind/​named.conf</​code>​ +
-<code root>​named-checkconf /​etc/​bind/​named.conf.options</​code>​+
  
 +  - 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 : //IP du serveur DNS local// ((Par exemple ici 192.168.0.14))
  
-  *Voir aussi les logs : +Puis appliquez ​les modifications. ​
-<code root>​tail -30 /​var/​log/​syslog</​code>​+
  
-</note>+On peut alors éditer le fichier **/​etc/​resolv.conf** afin qu'il ressemble à ceci :
  
-  *Le dossier **/​etc/​bind/​** : +<​code>​domain mondomaine.hyp 
- +search mondomaine.hyp 
-<code root>cd /etc/bind/ && ls</code> +nameserver ​127.0.0.1
- +
-<​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>​ </​code>​
  
-  * Créer le fichier "​**/​etc/​bind/​db.mondomaine.hyp**" ​:+  * Puis recharger la configuration réseau ​:
  
-Prendre le fichier ​/etc/bind/​db.local pour modèle.+<code root>/etc/init.d/​networking start</​code>​
  
-<code root>cp /​etc/​bind/​db.local /​etc/​bind/​db.mondomaine.hyp</​code>​ +====Vérifier que les clients interrogent le DNS local ==== 
- +===Avec la commande host === 
-Éditer "/​etc/​bind/​db.mondomaine.hyp"​ : +<​code ​user>host -a debian-serveur</​code>​
- +
-<​code ​root>vim /​etc/​bind/​db.mondomaine.hyp</​code>​+
 <​code>​ <​code>​
-+Trying "debian-serveur.mondomaine.hyp" 
-; BIND data file for local loopback interface +;; ->>​HEADER<<​- opcode: QUERY, status: NOERROR, id: 10787 
-+;; flags: qr aa rd raQUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: ​0
-$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>​+;; QUESTION SECTION: 
 +;​debian-serveur.mondomaine.hyp. IN ANY
  
-  * Créer le fichier de recherche inverse "**db.mondomaine.hyp.inv**" :+;; ANSWER SECTION: 
 +debian-serveur.mondomaine.hyp. ​604800 IN A 192.168.0.14
  
-Prendre pour modèle /​etc/​bind/​db.127+;; AUTHORITY SECTION: 
 +mondomaine.hyp. 604800 IN NS debian-serveur.mondomaine.hyp.
  
-<code root>cp /​etc/​bind/​db.127 /​etc/​bind/​db.192</​code>​+Received 77 bytes from 192.168.0.14#53 in 0 ms</​code>​
  
-Éditer "/​etc/​bind/​db.192"​ :+===Avec la commande dig ===
  
-<​code ​root>vim /​etc/​bind/​db.192</​code>​+<​code ​user>dig mondomaine.hyp</​code>​
 <​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>+; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>>​ mondomaine.hyp 
 +;; global options: +cmd 
 +;; Got answer: 
 +;; ->>​HEADER<<​- opcode: QUERY, status: NOERROR, id: 12579 
 +;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
  
-  * Configurer le fichier "/​etc/​bind/​named.conf.local" ​+;; QUESTION SECTION
-<code root>vim /​etc/​bind/​named.conf.local</​code>​ +;mondomaine.hyp. IN A
-<​code>​ +
-// +
-// Do any local configuration here +
-//+
  
-// Consider adding the 1918 zones here, if they are not used in your +;; AUTHORITY SECTION: 
-// organization +mondomaine.hyp. 604800 IN SOA debian-serveur.mondomaine.hyp. ​root.mondomaine.hyp2 604800 86400 2419200 604800
-//include "/​etc/​bind/​zones.rfc1918"​+
-zone "mondomaine.hyp" { +
-        type master; +
-        file "/​etc/​bind/​db.mondomaine.hyp"; +
-}; +
-zone "0.168.192.in-addr.arpa" { +
-        type master; +
-        file "/​etc/​bind/​db.192";​ +
-};+
  
-</​code>​+;; Query time: 0 msec 
 +;; SERVER: 192.168.0.14#​53(192.168.0.14) 
 +;; WHEN: Sun Sep 14 09:00:08 2014 
 +;; MSG SIZE  rcvd: 88</​code>​
  
-  ​Configurer "/​etc/​bind/​named.conf.options" ​+ 
-<​code ​root>vim /​etc/​bind/​named.conf.options</​code>​+  ​Avec la réserve ​
 +<​code ​user>dig -x 192.168.0.14</​code>​
 <​code>​ <​code>​
- options ​{ +; <<>>​ DiG 9.8.4-rpz2+rl005.12-P1 <<>>​ -x 192.168.0.14 
-        ​directory "/​var/​cache/​bind"​;+;; global ​options: +cmd 
 +;; Got answer: 
 +;; ->>​HEADER<<​- opcode: QUERY, status: NOERROR, id: 47078 
 +;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
  
-        // If there is a firewall between you and nameservers you want +;; QUESTION SECTION: 
-        // to talk to, you may need to fix the firewall to allow multiple +;14.0.168.192.in-addr.arpa. IN PTR
-        // ports to talk See http://www.kb.cert.org/​vuls/​id/​800113+
  
-        // If your ISP provided one or more IP addresses for stable +;; ANSWER SECTION: 
-        // nameservers,​ you probably want to use them as forwarders. +14.0.168.192.in-addr.arpa. 604800 IN PTR debian-serveur.mondomaine.hyp.
-        // Uncomment the following block, and insert the addresses replacing +
-        // the all-0's placeholder.+
  
-         ​forwarders { +;; AUTHORITY SECTION: 
-                192.168.0.1; +0.168.192.in-addr.arpa. 604800 IN NS debian-serveur.
-                8.8.8.8+
-                8.8.4.4; +
-                // 212.27.40.240; +
-                // 212.27.40.241;​ +
-         };+
  
-        //​======================================================================== +;; Query time: 0 msec 
-        // If BIND logs error messages about the root key being expired, +;; SERVER192.168.0.14#​53(192.168.0.14) 
-        // you will need to update your keys.  See https://www.isc.org/​bind-keys +;; WHEN: Sun Sep 14 09:03:29 2014 
-        //​======================================================================== +;; MSG SIZE  rcvd: 114</​code>​
-        ​dnssec-validation auto;+
  
-        auth-nxdomain no;    # conform to RFC1035 +Et voilà 8-)
-        version none; +
-        forward only; +
-//      listen-on-v6 { any; }; +
-};+
  
 +=====Générer une clé d'​authentification avec l'​utilitaire rndc=====
  
-</​code>​+Cet utilitaire permet d'​administrer notre serveur. Après l'​installation de Bind, la première chose à faire est de configurer rndc, ce qui consiste à configurer une clé d'​authentification relative à la configuration de son réseau local.\\ ​
  
-On peut mettre les forwarders qu'on souhaite, par exemple ici ceux de google et/ou ceux de "​boxmachin"​ fournisseur adsl.+ 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.
  
-  * Redémarrer bind9 :+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 root>​service bind9 restart</​code>+<note> 
 +__Remarques sur la configuration de rndc.__\\ ​
  
-ou+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>/etc/​init.d/​bind9 restart</​code>+</note>
  
 +  * Dans /etc/bind/ on voit le fichier rndc.key :
 +
 +<code root>ls /​etc/​bind/</​code>​
 <​code>​ <​code>​
-[....] Stopping domain name service...: bind9rndc: connect failed: 127.0.0.1#953: connection refused +bind.keys  db.empty    named.conf.default-zones ​ zones.rfc1918 
-ok  +db.0    db.local    named.conf.local 
-[ ok ] Starting domain name service...: bind9+db.127    db.root     named.conf.options 
 +db.255  ​  ​named.conf ​ rndc.key
 </​code>​ </​code>​
  
-==== Vérifier le DNS==== +<note warning
-Pour avoir le nom complet : +**rndc.key ne s'​édite pas !** 
-<code root>​hostname</​code+</note>
-<​code>​ +
-debian-serveur.mondomaine.hyp</code>+
  
-  * Avec nslookup ​: +  * Générer une clé :
-<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 +<code root>​rndc-confgen >/​etc/​bind/​rndc.key</​code>​
-Address: 192.168.0.14 +
-> exit</​code>​+
  
-  * Idem pour la zone inverse ​+  * Indiquer le fichier rndc.key à la fin de /​etc/​bind/​named.conf ​
-<code root>nslookup<​/code> +<code root>echo '​include "/etc/​bind/​rndc.key";' ​>> /​etc/​bind/​named.conf</code>
-<​code>​> 192.168.0.14 +
-Server:​ 127.0.0.1 +
-Address:​ 127.0.0.1#​53+
  
-14.0.168.192.in-addr.arpa name = debian-serveur.mondomaine.hyp+  * Éditer /​etc/​bind/​rndc.key pour commenter toute la fin à partir de ''​options {''​ : 
-exit</​code>​+<code root>vim /​etc/​bind/​rndc.key</​code>​ 
 +<​code>#​ Start of rndc.conf 
 +key "​rndc-key"​ { 
 +        algorithm hmac-md5; 
 +        secret "​xxxxxxxxxxxxxxxxx";​ 
 +};
  
-Il répond aux deux, donc tout va bien !+#options { 
 +#       ​default-key "​rndc-key";​ 
 +#       ​default-server 127.0.0.1;​ 
 +#       ​default-port 953; 
 +#}; 
 +# End of rndc.conf
  
-  *Avec dig +# Use with the following in named.conf, adjusting the allow list as needed
-<code root>dig debian-serveur</​code>​+# key "rndc-key" { 
 +#       ​algorithm hmac-md5; 
 +#       ​secret "​xxxxxxxxxxxxxx";​ 
 +# }; 
 +
 +# controls { 
 +#       inet 127.0.0.1 port 953 
 +#               allow { 127.0.0.1; } keys { "​rndc-key";​ }; 
 +# }; 
 +# End of named.conf 
 +</​code>​
  
-<code root>dig mondomaine.hyp</​code>​+===Configurer les zones qui utilise la clé ===
  
-<code root>/code>dig -x @192.168.0.14<​/code>+  * Éditer ​/etc/bind/​named/​conf.local :
  
-====Interroger le DNS local sur un client du réseau ==== +<code root>vim /etc/bind/named.conf.local</​code>​ 
-===Configuration === +<​code>​// 
-<code root>vim /etc/bind/db.mondomaine.hyp</​code>​ +// Do any local configuration here 
-<​code>​; +// 
-; BIND data file for local loopback interface + 
-; +// Consider adding the 1918 zones here, if they are not used in your 
-$TTL    604800 +// organization 
-@       ​IN ​     SOA     ​debian-serveur.mondomaine.hyp. root.mondomaine.hyp. ( +//include "/​etc/​bind/​zones.rfc1918";​ 
-                              2         Serial +zone "mondomaine.hyp" { 
-                         604800 ​        Refresh +        type master; 
-                          86400         Retry +        file "/​etc/​bind/​db.mondomaine.hyp"
-                        ​2419200 ​        Expire +        ​allow-update {key rndc-key;}
-                         604800 )       ; Negative Cache TTL +}
-+zone "0.168.192.in-addr.arpa" { 
-@       ​IN ​     NS      debian-serveur.mondomaine.hyp. +        type master; 
-debian-serveur ​ IN   ​A ​ 192.168.0.14 +        file "/​etc/​bind/​db.192"; 
-debian-client1 ​ IN   ​A ​ 192.168.0.22+        allow-update {key rndc-key;​};​ 
 +};
 </​code>​ </​code>​
  
-Et pour la réserve inverse :+===Relancer bind9===
  
-<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. 
-22      IN      PTR     ​debian-client1. 
-</​code>​ 
- 
-On recharge bind : 
 <code root>/​etc/​init.d/​bind9 restart</​code>​ <code root>/​etc/​init.d/​bind9 restart</​code>​
  
-===Vérification=== +<​code>​[....] Stopping domain name service...: bind9waiting for pid 5441 to die 
-<​code ​root>nslookup</​code>​+. ok  
 +[ ok ] Starting domain name service...: bind9.</​code>​
  
-<​code>​ 
-> debian-client1 
-Server:​ 127.0.0.1 
-Address:​ 127.0.0.1#​53 
  
-Name:​ debian-client1.mondomaine.hyp +=====Références====
-Address: 192.168.0.22 +
-> 192.168.0.22 +
-Server:​ 127.0.0.1 +
-Address:​ 127.0.0.1#​53+
  
-22.0.168.192.in-addr.arpa name = debian-client1. +Sur la commande dig : [[http://​www.system-linux.eu/index.php?post/2009/​04/​23/​La-commande-dig]]
-> exit</code>+
  
-=====Côté client ===== +Pour la configuration des clients Windows ​[[http://valaurea.free.fr/documents/sig11_bind9_1.html]]
-Se débarrasser ​[[utilisateurs:hypathie:​tutos:​dns-bind?&#​desactiver-networkmanager|de networkmanager]] avant tout.\\  +
- +
-  *Il n'y a qu'un fichier à éditer "/etc/resolv.conf":​ +
- +
-<code root>vim /etc/resolv.conf</code> +
- +
-<​code>​ +
-domaine mondomaine.hyp +
-search mondomaine.hyp +
-nameserver 192.168.0.14 +
-</code> +
- +
-  * Puis recharger la configuration réseau : +
-<code root>/​etc/​init.d/​networking start</​code>​+
  
 +Pour installer et configurer Bind sur une distribution linux à base de RPM [[http://​lea-linux.org/​documentations/​Reseau-name-dns1]]
  
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