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 →
Ci-dessous, les différences entre deux révisions de la page.
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 11:53] 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 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 |
+ | 127.0.1.1 debian-serveur.mondomaine.hyp debian-serveur | ||
+ | 192.168.0.14 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 193: | ||
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 212: | Ligne 239: | ||
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 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 226: | Ligne 255: | ||
search mondomaine.hyp | search mondomaine.hyp | ||
nameserver 127.0.0.1 | nameserver 127.0.0.1 | ||
- | 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 263: | ||
<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> |
+ | * 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 ===== | ||
+ | |||
+ | |||
+ | <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 361: | Ligne 404: | ||
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 423: | ||
</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 444: | ||
<code root>hostname</code> | <code root>hostname</code> | ||
<code> | <code> | ||
- | debian-serveur.mondomaine.hyp</code> | + | debian-serveur</code> |
* Avec nslookup : | * Avec nslookup : | ||
Ligne 424: | Ligne 467: | ||
Il répond aux deux, donc tout va bien ! | Il répond aux deux, donc tout va bien ! | ||
- | *Avec dig : | + | * 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 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 482: | Ligne 525: | ||
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. |
- | Il s'agit d'un serveur qui ne fera autorité que sur le réseau local et non sur aucune autre zone.\\ | + | =====Générer une clé d'authentification avec l'utilitaire rndc===== |
- | 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 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.\\ |
- | *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 === | + | 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/bind/ on 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 612: | ||
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 | + | |
- | // 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 | + | |
- | // nameservers, you probably want to use them as forwarders. | + | |
- | // Uncomment the following block, and insert the addresses replacing | + | |
- | // the all-0's placeholder. | + | |
- | + | ||
- | forwarders { | + | |
- | 192.168.0.1; | + | |
- | 8.8.8.8; | + | |
- | 8.8.4.4; | + | |
- | // 212.27.40.240; | + | |
- | // 212.27.40.241; | + | |
- | }; | + | |
- | + | ||
- | //======================================================================== | + | |
- | // If BIND logs error messages about the root key being expired, | + | |
- | // you will need to update your keys. See https://www.isc.org/bind-keys | + | |
- | //======================================================================== | + | |
- | dnssec-validation auto; | + | |
- | + | ||
- | auth-nxdomain no; # conform to RFC1035 | + | |
- | version none; | + | |
- | forward only; | + | |
- | // listen-on-v6 { any; }; | + | |
- | }; | + | |
- | + | ||
- | + | ||
- | </code> | + | |
- | + | ||
- | On peut mettre les forwarders qu'on souhaite, par exemple ici ceux de google et/ou ceux de "boxmachin" fournisseur adsl. | + | |
- | + | ||
- | * Redémarrer bind9 : | + | |
- | + | ||
- | <code root>service bind9 restart</code> | + | |
- | + | ||
- | ou | + | |
<code root>/etc/init.d/bind9 restart</code> | <code root>/etc/init.d/bind9 restart</code> | ||
- | <code> | + | <code>[....] Stopping domain name service...: bind9waiting for pid 5441 to die |
- | [....] Stopping domain name service...: bind9rndc: connect failed: 127.0.0.1#953: connection refused | + | |
. ok | . ok | ||
- | [ ok ] Starting domain name service...: bind9. | + | [ ok ] Starting domain name service...: bind9.</code> |
- | </code> | ||
- | ==== Vérifier le DNS==== | + | =====Références==== |
- | Pour avoir le nom complet : | + | Sur la commande dig : [[http://www.system-linux.eu/index.php?post/2009/04/23/La-commande-dig]] |
- | <code root>hostname</code> | + | |
- | <code> | + | |
- | debian-serveur.mondomaine.hyp</code> | + | |
- | + | ||
- | * Avec nslookup : | + | |
- | <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> | + | |
- | + | ||
- | <code root>/code>dig -x @192.168.0.14</code> | + | |
- | + | ||
- | ====Interroger le DNS local sur un client du réseau ==== | + | |
- | ===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 : | + | |
- | + | ||
- | <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> | + | |
- | + | ||
- | ===Vérification=== | + | |
- | <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.22 | + | |
- | Server: 127.0.0.1 | + | |
- | Address: 127.0.0.1#53 | + | |
- | + | ||
- | 22.0.168.192.in-addr.arpa name = debian-client1. | + | |
- | > exit</code> | + | |
- | + | ||
- | =====Côté client ===== | + | |
- | 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 la configuration des clients Windows [[http://valaurea.free.fr/documents/sig11_bind9_1.html]] | ||