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 [14/09/2014 10:44]
Hypathie [Installer et configurer un serveur DNS cache]
atelier:chantier:dns-bind9-sur-wheezy [23/10/2014 11:53]
Hypathie [Configurer des clients du réseau local]
Ligne 143: Ligne 143:
  
  
-=====Pré-requis à la l'​installation d'un DNS Maître du réseau ​en local===== +=====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 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 
 +  * Soit un autre ordi sur le réseau local : "​debian-hp"​ avec l'IP 192.168.0.23 
 +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.
  
-===IP statique=== +===Connaître ​le nom du système ​sur lequel on installera Bind ===
-  * 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 === +<​code ​user>​hostname </​code>​
- +
-<​code ​root>vim /etc/hostname </​code>​+
 <​code>​debian-serveur</​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 171: 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 187: Ligne 192:
 ff02::1 ip6-allnodes ff02::1 ip6-allnodes
 ff02::2 ip6-allrouters ff02::2 ip6-allrouters
 +
 </​code>​ </​code>​
  
Ligne 192: Ligne 198:
  
 If faut déclarer un nom de domaine dans /​etc/​resolv.conf.\\ ​ If faut déclarer un nom de domaine dans /​etc/​resolv.conf.\\ ​
-On peut, sur le système sur lequel il va être installer bind, indiquer d'​autres ​DNS extérieurs, ​ceux du FAI, ou même indiquer seulement l'IP local 127.0.0.1.\\ +Et retirer les DNS extérieurs, ​afin que Bind soit consulté.\\  
 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.\\ ​ 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.\\ ​
  
Ligne 207: Ligne 214:
   - Onglet "​Paramètres IPv4" (et aussi IPv6 si vous l’utilisez) ;   - Onglet "​Paramètres IPv4" (et aussi IPv6 si vous l’utilisez) ;
   - Méthode : Adresses automatiques uniquement (DHCP) ;   - 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))+  - 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é. Puis appliquez les modifications. Si la connexion est partagée entre tous les utilisateurs,​ un mot de passe administrateur vous sera demandé.
Ligne 215: Ligne 222:
 <​code>​domain mondomaine.hyp <​code>​domain mondomaine.hyp
 search mondomaine.hyp search mondomaine.hyp
-nameserver 127.0.0.1 +nameserver 127.0.0.1</​code>​
-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>​+
  
  
Ligne 227: Ligne 230:
   * Création du script pour networkmanager :   * Création du script pour networkmanager :
 <code root>cd /​etc/​NetworkManager/</​code>​ <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 root>vim /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
Ligne 234: Ligne 235:
 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 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 
-cho "​nameserver ​8.8.4.4" >> /​etc/​resolv.conf</​code>​ +echo "#nameserver ​212.27.40.241" >> /​etc/​resolv.conf 
->​Adapter ​le contenu selon le choix de votre forwarder, ici 8.8.8.8 et 8.8.4.4 sont les DNS de Google.+</​code>​ 
 + 
 +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 248: Ligne 251:
 <​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 192.168.0.14 ​ À remplacer par l'IP du système sur lequel Bind sera installé. +#​nameserver ​212.27.40.240 
-nameserver ​8.8.8.8 +#nameserver ​212.27.40.241
-nameserver ​8.8.4.4+
 </​code>​ </​code>​
  
Ligne 260: Ligne 262:
  
 <note tip> <note tip>
-  * Voir : [[https://​wiki.debian.org/​fr/​NetworkConfiguration#​Configuration_de_DNS_pour_network-manager]]+  * 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 :   * Attention la suppression de networkmanager déstabilise le système :
Ligne 318: Ligne 320:
 <​code>​ <​code>​
 ; ;
-; BIND data file for local loopback ​interface+; BIND data file for eth0 interface
 ; ;
 $TTL    604800 $TTL    604800
Ligne 330: Ligne 332:
 @       ​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 356: Ligne 357:
 @       ​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 372: Ligne 372:
         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 377: Ligne 378:
         file "/​etc/​bind/​db.192";​         file "/​etc/​bind/​db.192";​
 }; };
- 
 </​code>​ </​code>​
  
Ligne 396: Ligne 396:
  
          ​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 435: Ligne 435:
 </​code>​ </​code>​
  
-==== Vérifier le DNS==== 
-Pour avoir le nom complet : 
-<code root>​hostname</​code>​ 
-<​code>​ 
-debian-serveur</​code>​ 
  
-  * Avec nslookup : +====Configurer le serveur ​Bind au sujet des clients====
-<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 +
-Address: 192.168.0.14 +
-> exit</​code>​ +
- +
-  * Idem pour la zone inverse : +
-<code root>​nslookup</​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. +
-> exit</​code>​ +
- +
-Il répond aux deux, donc tout va bien ! +
- +
-  *Avec dig : +
-<code root>dig debian-serveur</​code>​+
  
-<code root>dig mondomaine.hyp</​code>​ +====Interroger le server DNS local au sujet des autres clients ​du réseau==== 
- +===Configuration ​de Bind ===
-<code root>dig -x @192.168.0.14</​code>​ +
- +
-====Interroger le server DNS local au sujet d'un client ​du réseau ==== +
-===Configuration ===+
 <code root>vim /​etc/​bind/​db.mondomaine.hyp</​code>​ <code root>vim /​etc/​bind/​db.mondomaine.hyp</​code>​
 <​code>;​ <​code>;​
Ligne 510: Ligne 479:
 <code root>/​etc/​init.d/​bind9 restart</​code>​ <code root>/​etc/​init.d/​bind9 restart</​code>​
  
-===Vérification==+=====Configurer les clients du réseau===== 
-<code root>​nslookup</​code>​ +Sur chacun ​d'euxil faut configurer les fichiers ci-dessous
- +===Éditer ​le fichier ​/​etc/​hosts.conf===
-<​code>​ +
-> debian-client1 +
-Server:​ 127.0.0.1 +
-Address:​ 127.0.0.1#​53 +
- +
-Name:​ debian-client1.mondomaine.hyp +
-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. +
-> exit</​code>​ +
- +
-=====Générer une clé d'​authentification avec l'​utilitaire rndc===== +
- +
-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.\\  +
- +
- 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. +
- +
-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. +
- +
-<​note>​ +
-__Remarques sur la configuration de rndc.__\\  +
- +
-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**. +
- +
-</​note>​ +
- +
-  * Dans /etc/bind/ on voit le fichier rndc.key : +
- +
-<code root>ls /​etc/​bind/</​code>​ +
-<​code>​ +
-bind.keys ​ db.empty ​   named.conf.default-zones ​ zones.rfc1918 +
-db.0    ​db.local ​   named.conf.local +
-db.127  ​  ​db.root ​    ​named.conf.options +
-db.255  ​  ​named.conf ​ rndc.key +
-</​code>​ +
- +
-<note warning>​ +
-**rndc.key ne s'​édite pas !** +
-</​note>​ +
- +
-  * Générer une clé : +
- +
-<code root>​rndc-confgen >/​etc/​bind/​rndc.key</​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>​ +
- +
-  * Éditer /​etc/​bind/​rndc.key pour commenter toute la fin à partir de ''​options {''​ : +
-<code root>vim /​etc/​bind/​rndc.key</​code>​ +
-<​code>#​ Start of rndc.conf +
-key "​rndc-key"​ { +
-        algorithm hmac-md5; +
-        secret "​xxxxxxxxxxxxxxxxx";​ +
-}; +
- +
-#options { +
-#       ​default-key "​rndc-key";​ +
-#       ​default-server 127.0.0.1;​ +
-#       ​default-port 953; +
-#}; +
-# End of rndc.conf +
- +
-# Use with the following in named.conf, adjusting the allow list as needed: +
-# 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>​ +
- +
-===Configurer les zones qui utilise la clé === +
- +
-  * Éditer /​etc/​bind/​named/​conf.local : +
- +
-<code root>vim /​etc/​bind/​named.conf.local</​code>​ +
-<​code>//​ +
-// Do any local configuration here +
-// +
- +
-// Consider adding the 1918 zones here, if they are not used in your +
-// organization +
-//include "/​etc/​bind/​zones.rfc1918";​ +
-zone "​mondomaine.hyp"​ { +
-        type master; +
-        file "/​etc/​bind/​db.mondomaine.hyp";​ +
-        allow-update {key rndc-key;​};​ +
-}; +
-zone "​0.168.192.in-addr.arpa"​ { +
-        type master; +
-        file "/​etc/​bind/​db.192";​ +
-        allow-update {key rndc-key;​};​ +
-}; +
-</​code>​ +
- +
-===Relancer bind9=== +
- +
-<code root>/​etc/​init.d/​bind9 restart</​code>​ +
- +
-<​code>​[....] Stopping domain name service...: bind9waiting for pid 5441 to die +
-. ok  +
-[ ok ] Starting domain name service...: bind9.</​code>​ +
- +
-=====Côté client ===== +
-===Éditer /​etc/​hosts.conf===+
 Afin que le serveur bind du réseau local soit interrogé par le client. Afin que le serveur bind du réseau local soit interrogé par le client.
  
Ligne 631: Ligne 488:
 order hosts,​bind ​ order hosts,​bind ​
 multi on  multi on 
-nospoof on </​code>​+nospoof on</​code>​
  
-> **''​order''​** ​ : indique l'​ordre des requêtes : ici, d'​abord le fichier hosts, puis, en cas d'​échec,​ le serveur de noms +> **''​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.
 > **''​multi''​** ​ mis à **''​on''​** : plusieurs adresses IP peuvent être associées à un même nom.  > **''​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. > **''​nospoof''​** :  oblige, par sécurité, à vérifier la concordance entre adresse IP et nom lors de la résolution d'​adresses inverse.
  
-===Configurer ​le fichier /​etc/​resolv.conf===+ 
 +<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>​ 
 + 
 +===Editer ​le fichier /​etc/​resolv.conf===
 Deux solutions : Deux solutions :
  
   * Solution 1 : Installer un script client pour **/​etc/​resolv.conf**   * 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.\\ +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.\\ ​
  
 <code root>cd /​etc/​NetworkManager/</​code>​ <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 root>vim /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
- 
  
 <​code>#​!/​bin/​sh <​code>#​!/​bin/​sh
Ligne 658: Ligne 514:
  
 <code root>​bash /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​ <code root>​bash /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
 +
 +<code root>​chmod 755 /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
  
 <code user>​less /​etc/​resolv.conf</​code>​ <code user>​less /​etc/​resolv.conf</​code>​
Ligne 665: Ligne 523:
 nameserver 192.168.0.14 nameserver 192.168.0.14
 </​code>​ </​code>​
 +
 +On fait cela sur tous les systèmes clients du réseau local. ​
  
   * Solution 2 : **Configurer Network Manager**   * Solution 2 : **Configurer Network Manager**
Ligne 676: Ligne 536:
   - Onglet "​Paramètres IPv4" (et aussi IPv6 si vous l’utilisez) ;   - Onglet "​Paramètres IPv4" (et aussi IPv6 si vous l’utilisez) ;
   - Méthode : Adresses automatiques uniquement (DHCP) ;   - 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))+  - Serveurs DNS : //IP du serveur DNS local// ((Par exemple ici 192.168.0.14))
  
-Puis appliquez les modifications. Si la connexion est partagée entre tous les utilisateurs,​ un mot de passe administrateur vous sera demandé.+Puis appliquez les modifications. ​
  
 > On peut alors éditer le fichier **/​etc/​resolv.conf** afin qu'il ressemble à ceci : > On peut alors éditer le fichier **/​etc/​resolv.conf** afin qu'il ressemble à ceci :
Ligne 684: Ligne 544:
 <​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 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>​
- 
->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**. 
  
   * Puis recharger la configuration réseau :   * Puis recharger la configuration réseau :
Ligne 696: Ligne 551:
 <code root>/​etc/​init.d/​networking start</​code>​ <code root>/​etc/​init.d/​networking start</​code>​
  
-  * Vérifier que le client interroge le DNS local : 
  
 +=====Vérifier les relations DNS/clients =====
 +===Vérifier que le serveur DNS se connaisse lui-même===
 +Pour avoir le nom complet sur système avec Bind :
 +<code root>​hostname</​code>​
 +<​code>​
 +debian-serveur</​code>​
 +===Avec nslookup ===
 +  * Demander l'​adresse associée à un nom d'​hôte :
 +
 +<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
 +Address: 192.168.0.14
 +> exit</​code>​
 +
 +  * Idem pour la zone inverse, vérifier qu'IP correspond à un hôte:
 +<code root>​nslookup</​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.
 +> exit</​code>​
 +
 +Il répond aux deux, donc tout va bien !
 +
 +  * Avec dig :
 +<code root>dig debian-serveur</​code>​
 +
 +<code root>dig mondomaine.hyp</​code>​
 +
 +<code root>dig -x @192.168.0.14</​code>​
 +
 +===Vérifier que le serveur DNS connaissee les clients===
 +<code root>​nslookup</​code>​
 +
 +<​code>​
 +> debian-client1
 +Server:​ 127.0.0.1
 +Address:​ 127.0.0.1#​53
 +
 +Name:​ debian-client1.mondomaine.hyp
 +Address: 192.168.0.22
 +> 192.168.0.23
 +Server:​ 127.0.0.1
 +Address:​ 127.0.0.1#​53
 +
 +23.0.168.192.in-addr.arpa name = debian-hp.0.168.192.in-addr.arpa.
 +> exit</​code>​
 +
 +>Il connaît bien les deux clients, soit à partir d'un nom d'​hôte,​ soit à parti d'une adresse IP.
 +
 +====Vérifier que les clients interrogent le DNS local====
 +===Avec la commande host ===
 <code user>​host -a debian-serveur</​code>​ <code user>​host -a debian-serveur</​code>​
 <​code>​ <​code>​
Ligne 715: Ligne 626:
 Received 77 bytes from 192.168.0.14#​53 in 0 ms</​code>​ Received 77 bytes from 192.168.0.14#​53 in 0 ms</​code>​
  
-  * Ou avec dig +===Avec la commande ​dig ===
  
 <code user>dig mondomaine.hyp</​code>​ <code user>dig mondomaine.hyp</​code>​
Ligne 761: Ligne 672:
 ;; MSG SIZE  rcvd: 114</​code>​ ;; MSG SIZE  rcvd: 114</​code>​
  
 +Et voilà 8-)
 +
 +=====Générer une clé d'​authentification avec l'​utilitaire rndc=====
 +
 +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.\\ ​
 +
 + 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.
 +
 +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.
 +
 +<​note>​
 +__Remarques sur la configuration de rndc.__\\ ​
 +
 +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**.
 +
 +</​note>​
 +
 +  * Dans /etc/bind/ on voit le fichier rndc.key :
 +
 +<code root>ls /​etc/​bind/</​code>​
 +<​code>​
 +bind.keys ​ db.empty ​   named.conf.default-zones ​ zones.rfc1918
 +db.0    ​db.local ​   named.conf.local
 +db.127  ​  ​db.root ​    ​named.conf.options
 +db.255  ​  ​named.conf ​ rndc.key
 +</​code>​
 +
 +<note warning>
 +**rndc.key ne s'​édite pas !**
 +</​note>​
 +
 +  * Générer une clé :
 +
 +<code root>​rndc-confgen >/​etc/​bind/​rndc.key</​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>​
 +
 +  * Éditer /​etc/​bind/​rndc.key pour commenter toute la fin à partir de ''​options {''​ :
 +<code root>vim /​etc/​bind/​rndc.key</​code>​
 +<​code>#​ Start of rndc.conf
 +key "​rndc-key"​ {
 +        algorithm hmac-md5;
 +        secret "​xxxxxxxxxxxxxxxxx";​
 +};
 +
 +#options {
 +#       ​default-key "​rndc-key";​
 +#       ​default-server 127.0.0.1;
 +#       ​default-port 953;
 +#};
 +# End of rndc.conf
 +
 +# Use with the following in named.conf, adjusting the allow list as needed:
 +# 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>​
 +
 +===Configurer les zones qui utilise la clé ===
 +
 +  * Éditer /​etc/​bind/​named/​conf.local :
 +
 +<code root>vim /​etc/​bind/​named.conf.local</​code>​
 +<​code>//​
 +// Do any local configuration here
 +//
 +
 +// Consider adding the 1918 zones here, if they are not used in your
 +// organization
 +//include "/​etc/​bind/​zones.rfc1918";​
 +zone "​mondomaine.hyp"​ {
 +        type master;
 +        file "/​etc/​bind/​db.mondomaine.hyp";​
 +        allow-update {key rndc-key;};
 +};
 +zone "​0.168.192.in-addr.arpa"​ {
 +        type master;
 +        file "/​etc/​bind/​db.192";​
 +        allow-update {key rndc-key;};
 +};
 +</​code>​
 +
 +===Relancer bind9===
 +
 +<code root>/​etc/​init.d/​bind9 restart</​code>​
 +
 +<​code>​[....] Stopping domain name service...: bind9waiting for pid 5441 to die
 +. ok 
 +[ ok ] Starting domain name service...: bind9.</​code>​
 +
 +
 +=====Références====
  
 Sur la commande dig : [[http://​www.system-linux.eu/​index.php?​post/​2009/​04/​23/​La-commande-dig]] 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]] Pour la configuration des clients Windows [[http://​valaurea.free.fr/​documents/​sig11_bind9_1.html]]
 +
 +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