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:27]
Hypathie [Côté client]
atelier:chantier:dns-bind9-sur-wheezy [14/09/2014 09:34]
Hypathie [Côté client]
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 142: Ligne 144:
  
 =====Configurer un server DNS Maître en local sous wheezy===== =====Configurer un server DNS Maître en local sous wheezy=====
-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 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 212: Ligne 214:
 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 228:
 search mondomaine.hyp search mondomaine.hyp
 nameserver 127.0.0.1 nameserver 127.0.0.1
 +nameserver 192.168.0.14
 nameserver 8.8.8.8 nameserver 8.8.8.8
 nameserver 8.8.4.4 nameserver 8.8.4.4
Ligne 238: Ligne 241:
 ===installation du paquetage=== ===installation du paquetage===
 <code root> <code root>
-apt-get update ​apt-get+apt-get update
 </​code>​ </​code>​
  
Ligne 401: Ligne 404:
 <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 432:
 <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 server DNS local au sujet d'un client du réseau ==== ====Interroger le server DNS local au sujet d'un client du réseau ====
Ligne 489: Ligne 492:
 > exit</​code>​ > 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 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>​
  
 =====Côté client ===== =====Côté client =====
-Installer le script pour networkmanager [[atelier:​chantier:​dns-bind9-sur-wheezy?&#​declarer-un-nom-de-domaine-dans-etc-resolvconf|networkmanager]] avant tout.\\ ​ 
  
 +  * Éditer /​etc/​hosts.conf :
 +Afin que le serveur bind du réseau local soit interrogé par le client.
 +
 +<code root>vim /​etc/​host.conf</​code>​
 +<​code>​
 +order hosts,​bind ​
 +multi on 
 +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 
 +> **''​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.
 +
 +  * Installer un script client pour **/​etc/​resolv.conf** : 
 +Là aussi pour 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.\\ ​
 +
 +<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
 +echo "​domain mondomaine.hyp"​ > /​etc/​resolv.conf
 +echo "​search mondomaine.hyp"​ >> /​etc/​resolv.conf
 +echo "​nameserver 192.168.0.14"​ >> /​etc/​resolv.conf</​code>​
 +
 +<code root>​bash /​etc/​NetworkManager/​dispatcher.d/​99-dns</​code>​
 +
 +<code user>​less /​etc/​resolv.conf</​code>​
 +<​code>​
 +domain mondomaine.hyp
 +search mondomaine.hyp ​
 +nameserver 192.168.0.14
 +</​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 :
 +
 <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 :
 +
 +<code user>​host -a debian-serveur</​code>​
 +<​code>​
 +Trying "​debian-serveur.mondomaine.hyp"​
 +;; ->>​HEADER<<​- opcode: QUERY, status: NOERROR, id: 10787
 +;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
 +
 +;; QUESTION SECTION:
 +;​debian-serveur.mondomaine.hyp. IN ANY
 +
 +;; ANSWER SECTION:
 +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>​
 +
 +; <<>>​ 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
 +
 +;; QUESTION SECTION:
 +;​mondomaine.hyp. IN A
 +
 +;; AUTHORITY SECTION:
 +mondomaine.hyp. 604800 IN SOA debian-serveur.mondomaine.hyp. root.mondomaine.hyp. 2 604800 86400 2419200 604800
 +
 +;; 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>​
 +
 +
 +  * Avec la réserve :
 +<code user>dig -x 192.168.0.14</​code>​
 +<​code>​
 +; <<>>​ DiG 9.8.4-rpz2+rl005.12-P1 <<>>​ -x 192.168.0.14
 +;; 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
 +
 +;; QUESTION SECTION:
 +;​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]]
  
  
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