Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
elearning:workbooks:lpic:22:450:l101 [2022/11/01 07:34] – created adminelearning:workbooks:lpic:22:450:l101 [2022/11/21 09:34] (Version actuelle) admin
Ligne 1: Ligne 1:
-=====Le serveur DNS=====+~~PDF:LANDSCAPE~~
  
-Le principe du DNS est basé sur l'équivalence entre un **FQDN** ( Fully Qualified Domain Name ) et une adresse IP. Les humains retiennent plus facilement des noms tels www.linuxelearning.com, tandis que les ordinateurs utilisent des chiffres. +Version : **2022.01** 
 + 
 +Updated: ~~LASTMOD~~ 
 + 
 +======Topic 207: Domain Name Server====== 
 + 
 +=====Contenu du Module===== 
 + 
 +  * **Topic 207: Domain Name Server** 
 +    * Présentation 
 +    * LAB #1 - L'installation 
 +      * 1.1 - Préparation à l'Installation 
 +      * 1.2 - Installation de bind 
 +    * LAB #2 - Les fichiers de configuration 
 +      * 2.1 - Le fichier named.ca 
 +      * 2.2 - Le fichier named.conf 
 +        * Les sections de zone 
 +          * La Valeur Type 
 +          * La Valeur File 
 +          * Exemples 
 +      * 2.3 - Le fichier named.rfc1912.zones 
 +      * 2.4 - Les fichiers de zone 
 +        * Le fichier db.fenestros.loc.hosts 
 +        * Le fichier db.2.0.10.hosts 
 +      * 2.5 - Tester le serveur DNS 
 +    * LAB #3 - L'utilitaire rndc 
 +      * 3.1 - La clef rndc 
 +      * 3.2 - Les fichiers de configuration 
 +    * Caractéristiques avancées de Bind 
 +      * DNSSEC 
 +      * TSIG 
 + 
 +=====Présentation===== 
 + 
 +Le principe du DNS est basé sur l'équivalence entre un **FQDN** ( Fully Qualified Domain Name ) et une adresse IP. Les humains retiennent plus facilement des noms tels www.i2tch.com, tandis que les ordinateurs utilisent des chiffres. 
  
 Le **DNS** ( Domain Name Service ) est né peut après l'introduction des FQDN en 1981.  Le **DNS** ( Domain Name Service ) est né peut après l'introduction des FQDN en 1981. 
  
-Lorque un ordinateur souhaite communiquer avec un autre par le biais de son nom, par exemple avec www.fenestros.com, il envoie une requête à un server DNS. Si le serveur DNS a connaissance de la correspondance entre le nom demandé et le numéro IP, il répond directement. Si ce n'est pas le cas, il démarre un processus de **Recursive Lookup**. +Lorsque un ordinateur souhaite communiquer avec un autre par le biais de son nom, par exemple avec www.i2tch.com, il envoie une requête à un server DNS. Si le serveur DNS a connaissance de la correspondance entre le nom demandé et le numéro IP, il répond directement. Si ce n'est pas le cas, il démarre un processus de **Recursive Lookup**. 
  
-Ce processus tente d'identifier le serveur de domaine responsable pour le **SLD** ( Second Level Domain ) afin de lui passer la reqûete. Dans notre exemple, il tenterait d'identifier le serveur de domaine responsable de **linuxelearning.com**.+Ce processus tente d'identifier le serveur de domaine responsable pour le **SLD** ( Second Level Domain ) afin de lui passer la requête. Dans notre exemple, il tenterait d'identifier le serveur de domaine responsable de **i2tch.com**.
  
 Si cette tentative échoue, le serveur DNS cherche le serveur de domaine pour le **TLD** ( Top Level Domain ) dans son cache afin de lui demander l'adresse du serveur responsable du SLD. Dans notre cas il tenterait trouver l'enregistrement pour le serveur de domaine responsable de **.com** Si cette tentative échoue, le serveur DNS cherche le serveur de domaine pour le **TLD** ( Top Level Domain ) dans son cache afin de lui demander l'adresse du serveur responsable du SLD. Dans notre cas il tenterait trouver l'enregistrement pour le serveur de domaine responsable de **.com**
Ligne 13: Ligne 47:
 Si cette recherche échoue, le serveur s'adresse à un **Root Name Server** dont il y en a peu. Si le Root Name Server ne peut pas répondre, le serveur DNS renvoie une erreur à la machine ayant formulé la demande.  Si cette recherche échoue, le serveur s'adresse à un **Root Name Server** dont il y en a peu. Si le Root Name Server ne peut pas répondre, le serveur DNS renvoie une erreur à la machine ayant formulé la demande. 
  
-Le serveur DNS sert à faire la résolution de noms. Autrement dit de traduire une adresse Internet telle **www.fenestros.com **en **numéro IP**.+Le serveur DNS sert à faire la résolution de noms. Autrement dit de traduire une adresse Internet telle **www.i2tch.com **en **numéro IP**.
  
-=====Préparation à l'Installation=====+=====LAB #1 - Installation=====
  
-Le serveur DNS nécessite à ce que la machine sur laquelle il est installé possède un nom FQDN et une adresse IP fixe. Il est également important à noter que le service de bind ne démarrera **pas** dans le cas où le fichier **/etc/hosts** comporte une anomalie. Trois étapes préparatoires sont donc nécessaires :+====1.1 - Préparation à l'Installation==== 
 + 
 +Le serveur DNS nécessite à ce que la machine sur laquelle il est installé possède un FQDN et une adresse IP fixe. Il est également important à noter que le service de bind ne démarrera **pas** dans le cas où le fichier **/etc/hosts** comporte une anomalie. Trois étapes préparatoires sont donc nécessaires :
  
   * Modification de l'adresse IP de la machine en adresse IP fixe   * Modification de l'adresse IP de la machine en adresse IP fixe
Ligne 25: Ligne 61:
 Afin d'étudier ce dernier cas, nous prenons en tant qu'exemple la machine suivante : Afin d'étudier ce dernier cas, nous prenons en tant qu'exemple la machine suivante :
  
-  * **FQDN** - centos.fenestros.loc +  * **FQDN** - centos7.fenestros.loc 
-  * **Adresse IP** - 10.0.2.15+  * **Adresse IP** - 10.0.2.51
  
-Vérifiez que votre fichier /etc/hosts prend la forme suivante :+Modifiez votre fichier /etc/hosts :
  
-<file bash hosts+<code> 
-10.0.2.15 centos.fenestros.loc +[root@centos7 ~]# vi /etc/hosts 
-127.0.0.1 localhost.localdomain localhost +[root@centos7 ~]# cat /etc/hosts 
-::1 centos localhost6.localdomain6 localhost6 +10.0.2.51       centos7.fenestros.loc 
-</file>+127.0.0.1       localhost.localdomain localhost 
 +::1             localhost6.localdomain6 localhost6 
 +</code>
  
-<WRAP center round important> +<WRAP center round important 60%
-Il est important de noter que la configuration du serveur DNS dépend du nom de votre machine. Dans le cas où vous changeriez ce nom, vous devez re-configurer votre serveur DNS en éditant les fichiers de configuration directement.+**Important** : Il est important de noter que la configuration du serveur DNS dépend du nom de votre machine. Dans le cas où vous changeriez ce nom, vous devez re-configurer votre serveur DNS en éditant les fichiers de configuration directement.
 </WRAP> </WRAP>
  
-=====Installation=====+====1.2 - Installation de bind====
  
 Pour installer le serveur DNS, utilisez la commande **yum**:  Pour installer le serveur DNS, utilisez la commande **yum**: 
  
 <code> <code>
-[root@centos6 ~]# yum install bind +[root@centos7 ~]# yum install bind
-Loaded plugins: fastestmirror, refresh-packagekit +
-Loading mirror speeds from cached hostfile +
- * base: mirrors.ircam.fr +
- * extras: mirrors.ircam.fr +
- * updates: mirrors.ircam.fr +
-Setting up Install Process +
- +
-Resolving Dependencies +
---> Running transaction check +
----> Package bind.i686 32:9.7.3-8.P3.el6_2.2 set to be updated +
---> Processing Dependency: bind-libs = 32:9.7.3-8.P3.el6_2.2 for package: 32:bind-9.7.3-8.P3.el6_2.2.i686 +
---> Processing Dependency: libdns.so.69 for package: 32:bind-9.7.3-8.P3.el6_2.2.i686 +
---> Processing Dependency: libisccfg.so.62 for package: 32:bind-9.7.3-8.P3.el6_2.2.i686 +
---> Processing Dependency: libisc.so.62 for package: 32:bind-9.7.3-8.P3.el6_2.2.i686 +
---> Running transaction check +
---> Processing Dependency: libdns.so.64 for package: 32:bind-utils-9.7.0-5.P2.el6_0.1.i686 +
---> Processing Dependency: libisc.so.60 for package: 32:bind-utils-9.7.0-5.P2.el6_0.1.i686 +
---> Processing Dependency: libisccfg.so.60 for package: 32:bind-utils-9.7.0-5.P2.el6_0.1.i686 +
----> Package bind-libs.i686 32:9.7.3-8.P3.el6_2.2 set to be updated +
---> Running transaction check +
----> Package bind-utils.i686 32:9.7.3-8.P3.el6_2.2 set to be updated +
---> Finished Dependency Resolution +
- +
-Dependencies Resolved +
- +
-================================================================================ +
- Package          Arch       Version                        Repository     Size +
-================================================================================ +
-Installing: +
- bind             i686       32:9.7.3-8.P3.el6_2.2          updates       3.9 M +
-Updating for dependencies: +
- bind-libs        i686       32:9.7.3-8.P3.el6_2.2          updates       850 k +
- bind-utils       i686       32:9.7.3-8.P3.el6_2.2          updates       177 k +
- +
-Transaction Summary +
-================================================================================ +
-Install       1 Package(s) +
-Upgrade       2 Package(s) +
- +
-Total download size: 4.9 M +
-Is this ok [y/N]: y +
-Downloading Packages: +
-(1/3): bind-9.7.3-8.P3.el6_2.2.i686.rpm                  | 3.9 MB     00:03      +
-(2/3): bind-libs-9.7.3-8.P3.el6_2.2.i686.rpm             | 850 kB     00:00      +
-(3/3): bind-utils-9.7.3-8.P3.el6_2.2.i686.rpm            | 177 kB     00:00      +
--------------------------------------------------------------------------------- +
-Total                                           1.2 MB/s | 4.9 MB     00:04      +
-Running rpm_check_debug +
-Running Transaction Test +
-Transaction Test Succeeded +
-Running Transaction +
-  Updating       : 32:bind-libs-9.7.3-8.P3.el6_2.2.i686                     1/5  +
-  Updating       : 32:bind-utils-9.7.3-8.P3.el6_2.2.i686                    2/5  +
-  Installing     : 32:bind-9.7.3-8.P3.el6_2.2.i686                          3/5  +
-  Cleanup        : 32:bind-utils-9.7.0-5.P2.el6_0.1.i686                    4/5  +
-  Cleanup        : 32:bind-libs-9.7.0-5.P2.el6_0.1.i686                     5/5  +
- +
-Installed: +
-  bind.i686 32:9.7.3-8.P3.el6_2.2                                                +
- +
-Dependency Updated: +
-  bind-libs.i686 32:9.7.3-8.P3.el6_2.2   bind-utils.i686 32:9.7.3-8.P3.el6_2.2   +
- +
-Complete!+
 </code> </code>
  
-Configurez le service **named** du paquet **bind** pour que celui-ci soit activé correctement pour les niveaux d'exécution 3, 4 et 5 :+Activez le service **named** du paquet **bind** :
  
 <code> <code>
-[root@centos6 ~]# chkconfig --level 345 named on +[root@centos7 ~]# systemctl status named 
-[root@centos6 ~]# chkconfig --list | grep named +● named.service Berkeley Internet Name Domain (DNS) 
-named           0:arrêt 1:arrêt 2:arrêt 3:marche 4:marche 5:marche6:arrêt+   Loaded: loaded (/usr/lib/systemd/system/named.service; disabled; vendor preset: disabled) 
 +   Active: inactive (dead) 
 +[root@centos7 ~]# systemctl enable named 
 +Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service. 
 +[root@centos7 ~]# systemctl status named 
 +● named.service - Berkeley Internet Name Domain (DNS) 
 +   Loadedloaded (/usr/lib/systemd/system/named.service; enabled; vendor presetdisabled) 
 +   Activeinactive (dead)
 </code> </code>
  
-===Options de la commande named===+<WRAP center round important 60%> 
 +**Important** : NE DEMARREZ PAS le service named
 +</WRAP>
  
-Les options de cette commande sont :+=====LAB #2 - Les fichiers de configuration=====
  
-<code> +Six fichiers doivent être modifiés pour que bind fonctionne correctement :
-[root@centos6 ~]# named --help +
-usagenamed [-4|-6] [-c conffile] [-d debuglevel] [-E engine] [-f|-g] +
-             [-n number_of_cpus] [-p port] [-s] [-t chrootdir] [-u username] +
-             [-m {usage|trace|record|size|mctx}] +
-named: unknown option '--' +
-</code> +
- +
-=====Les fichiers de configuration=====+
  
   * /var/named/named.ca   * /var/named/named.ca
Ligne 141: Ligne 116:
   * /var/named/data/db.fenestros.loc.hosts   * /var/named/data/db.fenestros.loc.hosts
  
- +====2.1 - named.ca====
-====named.ca====+
  
 Ce fichier doit se trouver dans /var/named.  Ce fichier doit se trouver dans /var/named. 
Ligne 149: Ligne 123:
  
 <code> <code>
-[root@centos6 ~]# dig +tcp @A.ROOT-SERVERS.NET > /var/named/named.ca +[root@centos7 ~]# dig +tcp @A.ROOT-SERVERS.NET > /var/named/named.ca 
-</code>+ 
 +[root@centos7 ~]# cat /var/named/named.ca
  
-<file text named.ca> +; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.10 <<>> +tcp @A.ROOT-SERVERS.NET
-; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.<<>> @A.ROOT-SERVERS.NET+
 ; (2 servers found) ; (2 servers found)
 ;; global options: +cmd ;; global options: +cmd
 ;; Got answer: ;; Got answer:
-;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32525 +;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4806 
-;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 14+;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 27
 ;; WARNING: recursion requested but not available ;; WARNING: recursion requested but not available
  
 +;; OPT PSEUDOSECTION:
 +; EDNS: version: 0, flags:; udp: 4096
 ;; QUESTION SECTION: ;; QUESTION SECTION:
-;. IN NS+;.                              IN      NS
  
 ;; ANSWER SECTION: ;; ANSWER SECTION:
-. 518400 IN NS f.root-servers.net. +                      518400  IN      NS      e.root-servers.net. 
-. 518400 IN NS a.root-servers.net. +                      518400  IN      NS      h.root-servers.net. 
-. 518400 IN NS j.root-servers.net. +                      518400  IN      NS      l.root-servers.net. 
-. 518400 IN NS d.root-servers.net. +                      518400  IN      NS      i.root-servers.net. 
-. 518400 IN NS m.root-servers.net. +                      518400  IN      NS      a.root-servers.net. 
-. 518400 IN NS i.root-servers.net. +                      518400  IN      NS      d.root-servers.net. 
-. 518400 IN NS g.root-servers.net. +                      518400  IN      NS      c.root-servers.net. 
-. 518400 IN NS e.root-servers.net. +                      518400  IN      NS      b.root-servers.net. 
-. 518400 IN NS l.root-servers.net. +                      518400  IN      NS      j.root-servers.net. 
-. 518400 IN NS c.root-servers.net. +                      518400  IN      NS      k.root-servers.net. 
-. 518400 IN NS b.root-servers.net. +                      518400  IN      NS      g.root-servers.net. 
-. 518400 IN NS k.root-servers.net. +                      518400  IN      NS      m.root-servers.net. 
-. 518400 IN NS h.root-servers.net.+                      518400  IN      NS      f.root-servers.net.
  
 ;; ADDITIONAL SECTION: ;; ADDITIONAL SECTION:
-a.root-servers.net. 3600000 IN A 198.41.0.4 +e.root-servers.net.     518400  IN      A       192.203.230.10 
-a.root-servers.net. 3600000 IN AAAA 2001:503:ba3e::2:30 +e.root-servers.net.     518400  IN      AAAA    2001:500:a8::
-b.root-servers.net. 3600000 IN A 192.228.79.201 +h.root-servers.net.     518400  IN      A       198.97.190.53 
-c.root-servers.net. 3600000 IN A 192.33.4.12 +h.root-servers.net.     518400  IN      AAAA    2001:500:1::53 
-d.root-servers.net. 3600000 IN A 128.8.10.90 +l.root-servers.net.     518400  IN      A       199.7.83.42 
-d.root-servers.net. 3600000 IN AAAA 2001:500:2d::d +l.root-servers.net.     518400  IN      AAAA    2001:500:9f::42 
-e.root-servers.net. 3600000 IN A 192.203.230.10 +i.root-servers.net.     518400  IN      A       192.36.148.17 
-f.root-servers.net. 3600000 IN A 192.5.5.241 +i.root-servers.net.     518400  IN      AAAA    2001:7fe::53 
-f.root-servers.net. 3600000 IN AAAA 2001:500:2f::f +a.root-servers.net.     518400  IN            198.41.0.4 
-g.root-servers.net. 3600000 IN A 192.112.36.4 +a.root-servers.net.     518400  IN      AAAA    2001:503:ba3e::2:30 
-h.root-servers.net. 3600000 IN A 128.63.2.53 +d.root-servers.net.     518400  IN            199.7.91.13 
-h.root-servers.net. 3600000 IN AAAA 2001:500:1::803f:235 +d.root-servers.net.     518400  IN      AAAA    2001:500:2d::d 
-i.root-servers.net. 3600000 IN A 192.36.148.17 +c.root-servers.net.     518400  IN            192.33.4.12 
-i.root-servers.net. 3600000 IN AAAA 2001:7fe::53+c.root-servers.net.     518400  IN      AAAA    2001:500:2::
 +b.root-servers.net.     518400  IN            199.9.14.201 
 +b.root-servers.net.     518400  IN      AAAA    2001:500:200::b 
 +j.root-servers.net.     518400  IN            192.58.128.30 
 +j.root-servers.net.     518400  IN      AAAA    2001:503:c27::2:30 
 +k.root-servers.net.     518400  IN            193.0.14.129 
 +k.root-servers.net.     518400  IN      AAAA    2001:7fd::1 
 +g.root-servers.net.     518400  IN            192.112.36.4 
 +g.root-servers.net.     518400  IN      AAAA    2001:500:12::d0d 
 +m.root-servers.net.     518400  IN            202.12.27.33 
 +m.root-servers.net.     518400  IN      AAAA    2001:dc3::35 
 +f.root-servers.net.     518400  IN            192.5.5.241 
 +f.root-servers.net.     518400  IN      AAAA    2001:500:2f::f
  
-;; Query time: 149 msec+;; Query time: msec
 ;; SERVER: 198.41.0.4#53(198.41.0.4) ;; SERVER: 198.41.0.4#53(198.41.0.4)
-;; WHEN: Wed May 30 13:28:45 2012 +;; WHEN: Tue Nov 01 16:59:11 CET 2022 
-;; MSG SIZE  rcvd: 512 +;; MSG SIZE  rcvd: 811
- +
-</file> +
- +
-Le fichier named.ca doit appartenir à l'utilisateur **root** du groupe **root** et avoir les permissions en 0644. +
- +
-<code> +
-[root@centos6 ~]# ls -l /var/named/named.ca  +
--rw-r--r--. 1 root root 1666 30 mai   13:28 /var/named/named.ca+
 </code> </code>
  
-====named.conf====+====2.2 - named.conf====
  
 Le fichier de configuration principal du serveur DNS Bind est **/etc/named.conf** : Le fichier de configuration principal du serveur DNS Bind est **/etc/named.conf** :
  
-<file text named.conf+<code>  
 +[root@centos7 ~]# cat /etc/named.conf
 // //
 // named.conf // named.conf
Ligne 222: Ligne 203:
 // See /usr/share/doc/bind*/sample/ for example named configuration files. // See /usr/share/doc/bind*/sample/ for example named configuration files.
 // //
 +// See the BIND Administrator's Reference Manual (ARM) for details about the
 +// configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html
  
 options { options {
- listen-on port 53 { 127.0.0.1; }; +        listen-on port 53 { 127.0.0.1; }; 
- listen-on-v6 port 53 { ::1; }; +        listen-on-v6 port 53 { ::1; }; 
- directory  "/var/named"; +        directory       "/var/named"; 
- dump-file  "/var/named/data/cache_dump.db";+        dump-file       "/var/named/data/cache_dump.db";
         statistics-file "/var/named/data/named_stats.txt";         statistics-file "/var/named/data/named_stats.txt";
         memstatistics-file "/var/named/data/named_mem_stats.txt";         memstatistics-file "/var/named/data/named_mem_stats.txt";
- allow-query     { localhost; }; +        recursing-file  "/var/named/data/named.recursing"; 
- recursion yes;+        secroots-file   "/var/named/data/named.secroots"; 
 +        allow-query     { localhost; }; 
 + 
 +        /*  
 +         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion. 
 +         - If you are building a RECURSIVE (caching) DNS server, you need to enable  
 +           recursion.  
 +         - If your recursive DNS server has a public IP address, you MUST enable access  
 +           control to limit queries to your legitimate users. Failing to do so will 
 +           cause your server to become part of large scale DNS amplification  
 +           attacks. Implementing BCP38 within your network would greatly 
 +           reduce such attack surface  
 +        */ 
 +        recursion yes
 + 
 +        dnssec-enable yes; 
 +        dnssec-validation yes; 
 + 
 +        /* Path to ISC DLV key */ 
 +        bindkeys-file "/etc/named.root.key";
  
- dnssec-enable yes; +        managed-keys-directory "/var/named/dynamic";
- dnssec-validation yes; +
- dnssec-lookaside auto;+
  
- /* Path to ISC DLV key *+        pid-file "/run/named/named.pid"; 
- bindkeys-file "/etc/named.iscdlv.key";+        session-keyfile "/run/named/session.key";
 }; };
  
Ligne 249: Ligne 249:
  
 zone "." IN { zone "." IN {
- type hint; +        type hint; 
- file "named.ca";+        file "named.ca";
 }; };
  
 include "/etc/named.rfc1912.zones"; include "/etc/named.rfc1912.zones";
 +include "/etc/named.root.key";
 +</code>
  
-</file>+<WRAP center round important 60%> 
 +**Important** : Notez que pour désactiver les requêtes récursives, il convient de passer la valeur de la directive **recursion** à no : recursion no; 
 +</WRAP>
  
 Dans ce fichier on trouve des sections ayant la forme suivante : Dans ce fichier on trouve des sections ayant la forme suivante :
Ligne 271: Ligne 275:
 ... ...
 options { options {
- listen-on port 53 { 127.0.0.1; }; +        listen-on port 53 { 127.0.0.1; }; 
- listen-on-v6 port 53 { ::1; }; +        listen-on-v6 port 53 { ::1; }; 
- directory  "/var/named"; +        directory       "/var/named"; 
- dump-file  "/var/named/data/cache_dump.db";+        dump-file       "/var/named/data/cache_dump.db";
         statistics-file "/var/named/data/named_stats.txt";         statistics-file "/var/named/data/named_stats.txt";
         memstatistics-file "/var/named/data/named_mem_stats.txt";         memstatistics-file "/var/named/data/named_mem_stats.txt";
- allow-query     { localhost; }; +        recursing-file  "/var/named/data/named.recursing"; 
- recursion yes;+        secroots-file   "/var/named/data/named.secroots"; 
 +        allow-query     { localhost; }; 
 + 
 +        recursion yes
 + 
 +        dnssec-enable yes; 
 +        dnssec-validation yes; 
 + 
 +        bindkeys-file "/etc/named.root.key";
  
- dnssec-enable yes; +        managed-keys-directory "/var/named/dynamic";
- dnssec-validation yes; +
- dnssec-lookaside auto;+
  
- /* Path to ISC DLV key *+        pid-file "/run/named/named.pid"; 
- bindkeys-file "/etc/named.iscdlv.key";+        session-keyfile "/run/named/session.key";
 }; };
 ... ...
Ligne 304: Ligne 314:
 Modifiez donc la section **options** de votre fichier **/etc/named.conf** ainsi :  Modifiez donc la section **options** de votre fichier **/etc/named.conf** ainsi : 
  
-<file>+<code> 
 +[root@centos7 ~]# vi /etc/named.conf 
 +[root@centos7 ~]# cat /etc/named.conf 
 +...
 options { options {
         listen-on port 53 { 127.0.0.1; };         listen-on port 53 { 127.0.0.1; };
Ligne 311: Ligne 324:
         dump-file       "/var/named/data/cache_dump.db";         dump-file       "/var/named/data/cache_dump.db";
         statistics-file "/var/named/data/named_stats.txt";         statistics-file "/var/named/data/named_stats.txt";
-        memstatistics-file "/var/named/data/named_mem_stats.txt";    +        memstatistics-file "/var/named/data/named_mem_stats.txt"; 
 +        recursing-file  "/var/named/data/named.recursing"; 
 +        secroots-file   "/var/named/data/named.secroots";
         allow-query {         allow-query {
                 localhost;                 localhost;
                 10.0.2.0/24;                 10.0.2.0/24;
         };         };
-        recursion yes;   + 
-        +        recursion yes; 
         dnssec-enable yes;         dnssec-enable yes;
         dnssec-validation yes;         dnssec-validation yes;
-        dnssec-lookaside auto; 
  
-        /* Path to ISC DLV key *+        bindkeys-file "/etc/named.root.key"; 
-        bindkeys-file "/etc/named.iscdlv.key";+ 
 +        managed-keys-directory "/var/named/dynamic"; 
 + 
 +        pid-file "/run/named/named.pid"; 
 +        session-keyfile "/run/named/session.key";
 }; };
 ... ...
-</file>+</code>
  
-<WRAP center round important> +<WRAP center round important 60%
-Dans l'exemple ci-dessus nous autorisons toutes les machines de notre réseau, ainsi que la machine locale à utiliser le DNS.+**Important** - Dans l'exemple ci-dessus nous autorisons toutes les machines de notre réseau, ainsi que la machine locale à utiliser le DNS. Notez aussi que pour limiter les connexions à partir de serveurs DNS esclaves, il convient d'ajouter une directive **allow-transfer**.
 </WRAP> </WRAP>
  
-====Les Sections de Zone====+Dernièrement, il est possible de créer des ACLs qui peuvent être utilisés avec la directive **allow-query** :
  
-Dans le fichier **/etc/named.conf** vous pouvez constater la présence d'une directive **include**.+<file> 
 +        acl mycompany { 
 +            10.0.2.0/24; 192.168.56.0/24; 
 +        };
  
-Le fichier concerné par cette directive est **/etc/named.rfc1912.zones** :+        options { 
 +            allow-query { mycompany; }; 
 +        }; 
 +</file>
  
-<file text named.rfc1912.zones>+====2.3 - named.rfc1912.zones==== 
 + 
 +Dans le fichier **/etc/named.conf** vous pouvez constater la présence d'une directive **include "/etc/named.rfc1912.zones";**. 
 + 
 +Consultez ce fichier : 
 + 
 +<code> 
 +[root@centos7 ~]# cat /etc/named.rfc1912.zones
 // named.rfc1912.zones: // named.rfc1912.zones:
 // //
Ligne 352: Ligne 384:
  
 zone "localhost.localdomain" IN { zone "localhost.localdomain" IN {
- type master; +        type master; 
- file "named.localhost"; +        file "named.localhost"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
 zone "localhost" IN { zone "localhost" IN {
- type master; +        type master; 
- file "named.localhost"; +        file "named.localhost"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
 zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN { zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
- type master; +        type master; 
- file "named.loopback"; +        file "named.loopback"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
 zone "1.0.0.127.in-addr.arpa" IN { zone "1.0.0.127.in-addr.arpa" IN {
- type master; +        type master; 
- file "named.loopback"; +        file "named.loopback"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
 zone "0.in-addr.arpa" IN { zone "0.in-addr.arpa" IN {
- type master; +        type master; 
- file "named.empty"; +        file "named.empty"; 
- allow-update { none; };+        allow-update { none; };
 }; };
- +</code>
-</file> +
  
 ===La Valeur Type=== ===La Valeur Type===
Ligne 405: Ligne 435:
 La deuxième directive dans une section de zone comporte la valeur **file**. Il indique l'emplacement du fichier de zone. La deuxième directive dans une section de zone comporte la valeur **file**. Il indique l'emplacement du fichier de zone.
  
-===Exemples de Sections de Zone===+===Exemples===
  
 Chaque section de zone, à l'exception de la zone "." est associée avec une section de zone inversée. Chaque section de zone, à l'exception de la zone "." est associée avec une section de zone inversée.
Ligne 420: Ligne 450:
 </file> </file>
  
-La section de zone fait corréspondre un nom avec une adresse IP tandis que la section de zone inversée fait l'inverse. La section inversée a un nom d'un syntaxe spécifique :+La section de zone fait correspondre un nom avec une adresse IP tandis que la section de zone inversée fait l'inverse. La section inversée a un nom d'un syntaxe spécifique :
  
 <file> <file>
Ligne 426: Ligne 456:
 </file> </file>
  
-Par exemple dans le fichier ci-dessus nous trouvons les trois sections suivantes :+Par exemple dans le fichier ci-dessus nous trouvons les cinq sections suivantes :
  
 <file> <file>
 ... ...
 +zone "localhost.localdomain" IN {
 +        type master;
 +        file "named.localhost";
 +        allow-update { none; };
 +};
 +
 zone "localhost" IN { zone "localhost" IN {
- type master; +        type master; 
- file "named.localhost"; +        file "named.localhost"; 
- allow-update { none; };+        allow-update { none; };
 }; };
-...+ 
 +zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN { 
 +        type master; 
 +        file "named.loopback"; 
 +        allow-update { none; }; 
 +}; 
 zone "1.0.0.127.in-addr.arpa" IN { zone "1.0.0.127.in-addr.arpa" IN {
- type master; +        type master; 
- file "named.loopback"; +        file "named.loopback"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
 zone "0.in-addr.arpa" IN { zone "0.in-addr.arpa" IN {
- type master; +        type master; 
- file "named.empty"; +        file "named.empty"; 
- allow-update { none; };+        allow-update { none; };
 }; };
- 
 </file> </file>
  
-<WRAP center round important> +<WRAP center round important 60%
-Notez la présence de deux sections inversées, respectivement pour IPv4 et IPv6. Dans la suite de cette leçon, nous allons nous concentrer sur IPv4.+**Important** - Notez la présence de deux sections inversées, respectivement pour IPv4 et IPv6. Dans la suite de cette leçon, nous allons nous concentrer sur IPv4.
 </WRAP> </WRAP>
  
-===Sections de Zones de votre Machine===+Afin de configurer notre serveur correctement donc, il est nécessaire d'ajouter à ce fichier deux sections supplémentaires.
  
-Afin de configurer notre serveur correctement donc, il est necéssaire d'ajouter à ce fichier deux sections supplémentaires : +La zone correspondant à notre domaine, ici appelée "fenestros.loc". Celle-ci fait correspondre le nom de la machine avec son adresse IP:
- +
-  * La zone correspondant à notre domaine, ici appelée "fenestros.loc". Celle-ci fait correspondre le nom de la machine avec son adresse IP:+
  
 <file> <file>
Ligne 470: Ligne 509:
 </file> </file>
  
-  * La zone à notre domaine mais dans le sens inverse. A savoir le fichier **db.2.0.10.hosts** qui fait correspondre notre adresse IP avec le nom de la machine.+La zone à notre domaine mais dans le sens inverse. A savoir le fichier **db.2.0.10.hosts** qui fait correspondre notre adresse IP avec le nom de la machine.
  
 <file> <file>
Ligne 484: Ligne 523:
 Ajoutez donc ces deux sections au fichier **/etc/named.rfc1912.zones** : Ajoutez donc ces deux sections au fichier **/etc/named.rfc1912.zones** :
  
-<file text named.rfc1912.zones>+<code> 
 +[root@centos7 ~]# vi /etc/named.rfc1912.zones 
 + 
 +[root@centos7 ~]# cat /etc/named.rfc1912.zones
 // named.rfc1912.zones: // named.rfc1912.zones:
 // //
Ligne 498: Ligne 540:
  
 zone "localhost.localdomain" IN { zone "localhost.localdomain" IN {
- type master; +        type master; 
- file "named.localhost"; +        file "named.localhost"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
 zone "localhost" IN { zone "localhost" IN {
- type master; +        type master; 
- file "named.localhost"; +        file "named.localhost"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
 zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN { zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
- type master; +        type master; 
- file "named.loopback"; +        file "named.loopback"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
 zone "1.0.0.127.in-addr.arpa" IN { zone "1.0.0.127.in-addr.arpa" IN {
- type master; +        type master; 
- file "named.loopback"; +        file "named.loopback"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
 zone "0.in-addr.arpa" IN { zone "0.in-addr.arpa" IN {
- type master; +        type master; 
- file "named.empty"; +        file "named.empty"; 
- allow-update { none; };+        allow-update { none; };
 }; };
  
Ligne 538: Ligne 580:
     forwarders { };     forwarders { };
 }; };
-</file>+</code>
  
-===Les fichiers de zone===+====2.4 - Les fichiers de zone====
  
 La fichiers de zone sont composées de lignes d'une forme: La fichiers de zone sont composées de lignes d'une forme:
Ligne 553: Ligne 595:
     * La durée de vie en cache de cet enregistrement.     * La durée de vie en cache de cet enregistrement.
   * **classe**   * **classe**
-    * Le réseau de transport utilisé. Dans notre cas, le réseau est du TCP. La valeur est donc IN.+    * Le réseau de transport utilisé. Dans notre cas, Internet. La valeur est donc IN.
   * **type**   * **type**
     * Le type d'enregistrement:     * Le type d'enregistrement:
       * SOA - Start of Authority - se trouve au début du fichier et contient des informations générales       * SOA - Start of Authority - se trouve au début du fichier et contient des informations générales
       * NS - Name Server  - le nom du serveur de nom       * NS - Name Server  - le nom du serveur de nom
-      * A - Address - indique une résolution de nom vers une adresse IP. Ne se trouve que dans les fichiers **.hosts**+      * A - Address IPv4 - indique une résolution de nom vers une adresse IP. Ne se trouve que dans les fichiers **.hosts** 
 +      * AAAA - Address IPv6 - indique une résolution de nom vers une adresse IP. Ne se trouve que dans les fichiers **.hosts**
       * PTR - %%PoinTeR%% - indique une résolution d'une adresse IP vers un nom. Ne se trouve que dans les fichiers inversés.       * PTR - %%PoinTeR%% - indique une résolution d'une adresse IP vers un nom. Ne se trouve que dans les fichiers inversés.
       * MX - Mail eXchange - le nom d'un serveur de mail.       * MX - Mail eXchange - le nom d'un serveur de mail.
       * CNAME - Canonical Name - un alias d'une machine.       * CNAME - Canonical Name - un alias d'une machine.
-      * HINFO - Hardware Info - fournit des informations sur le matériel de la machine     +      * HINFO - Hardware Info - fournit des informations sur le matériel de la machine    
 +      * TXT - Un enregistrement contenant des informations textuelles pour des sources extérieures à votre domaine, par exemple : 
 +        * Vérification de la propriété du domaine 
 +        * Implémentation du **Sender Policy Framework** (SPF) 
 +        * Enregistrements **DomainKeys Identified Mail** (DKIM) pour vérifier l'expéditeur des messages électroniques 
 +        * **Zero-configuration networking DNS-based service discovery** 
 +        * Politiques de **Domain-based Message Authentication, Reporting and Conformance**.
   * **donnée**   * **donnée**
     * La donnée de la ressource:     * La donnée de la ressource:
Ligne 568: Ligne 617:
       * Un nom de machine pour un eregistrement de type PTR       * Un nom de machine pour un eregistrement de type PTR
  
-==db.fenestros.loc.hosts==+===Le fichier db.fenestros.loc.hosts===
  
-Ce fichier se trouve dans /var/named/data. Il est le fichier qui définit la correspondance du nom de la machine **centos.fenestros.loc** avec son numéro IP, à savoir le **10.0.2.15**. On définit dans ce fichier les machines qui doivent être appelées par leur nom :+Ce fichier doit être créé dans /var/named/data. Il est le fichier qui définit la correspondance du nom de la machine **centos7.fenestros.loc** avec son numéro IP, à savoir le **10.0.2.51**. On définit dans ce fichier les machines qui doivent être appelées par leur nom :
  
-<file text db.fenestros.loc.hosts>+<code> 
 +[root@centos7 ~]# vi /var/named/data/db.fenestros.loc.hosts 
 +[root@centos7 ~]# cat /var/named/data/db.fenestros.loc.hosts
 $TTL 3D $TTL 3D
-@       IN     SOA     centos.fenestros.loc. root.centos.fenestros.loc. ( +@       IN     SOA     centos7.fenestros.loc. root.centos7.fenestros.loc. ( 
-               2012120301       ; Serial+               2022110101       ; Serial
                8H   ; Refresh                8H   ; Refresh
                2H   ; Retry                2H   ; Retry
                4W  ; Expire                4W  ; Expire
                1D)  ; Minimum TTL                1D)  ; Minimum TTL
-               IN      NS      centos.fenestros.loc.+               IN      NS      centos7.fenestros.loc.
 localhost                                127.0.0.1 localhost                                127.0.0.1
-dnsmaster                   IN      CNAME  centos.fenestros.loc. +dnsmaster                   IN      CNAME  centos7.fenestros.loc. 
-centos.fenestros.loc.       IN      A      10.0.2.15+centos7.fenestros.loc.       IN      A      10.0.2.51
  
-ftp IN CNAME centos.fenestros.loc. +ftp IN CNAME centos7.fenestros.loc. 
-www IN CNAME centos.fenestros.loc. +www IN CNAME centos7.fenestros.loc. 
-mail IN CNAME centos.fenestros.loc. +mail IN CNAME centos7.fenestros.loc. 
-news IN CNAME centos.fenestros.loc. +news IN CNAME centos7.fenestros.loc. 
-</file>+</code>
  
 La première ligne de ce fichier commence par une ligne semblable à celle-ci: La première ligne de ce fichier commence par une ligne semblable à celle-ci:
Ligne 602: Ligne 653:
  
 <file> <file>
-@       IN     SOA     centos.fenestros.loc. root.centos.fenestros.loc. (+@       IN     SOA     centos7.fenestros.loc. root.centos7.fenestros.loc. (
 </file> </file>
  
-Le caractère **@** corréspond au nom de la zone et est une abréviation pour le nom de la zone décrit par le fichier de la zone, soit dans ce cas db.**fenestros.loc**.hosts, et présent dans le fichier /etc/named.conf :+<WRAP center round important 60%> 
 +**Important** - Notez le point à la fin de chaque nom de domaine. Notez bien le remplacement du caractère @ dans l'adresse email de l'administrateur de mail par le caractère ".
 +</WRAP>
  
-<box 95% blue | **Extrait de la section de zone du fichier named.rfc1912.zones**>+Le caractère **@** au début de la ligne corréspond au nom de la zone et est une abréviation pour le nom de la zone décrit par le fichier de la zone, soit dans ce cas db.**fenestros.loc**.hosts, et présent dans le fichier /etc/named.conf :
  
 <file> <file>
 +...
 zone "fenestros.loc" zone "fenestros.loc"
       type master;        type master; 
Ligne 615: Ligne 669:
       forwarders { };       forwarders { };
 }; };
 +...
 </file> </file>
  
-</box> +**Le numéro de série** doit être modifié chaque fois que le fichier soit changé. Il faut noter que dans le cas de plusieurs changements dans la même journée il est nécessaire d'incrémenter les deux derniers chiffres du numéro de série. Par exemple, dans le cas de deux changements en date du 01/11/2022, le premier fichier comportera une ligne Serial avec la valeur 2022110101 tandis que le deuxième changement comportera le numéro de série 2022110102 :
- +
-<WRAP center round important> +
-Notez le point à la fin de chaque nom de domaine. Notez bien le remplacement du caractère @ dans l'adresse email de l'administrateur de mail par le caractère "." +
-</WRAP> +
- +
-**Le numéro de série** doit être modifié chaque fois que le fichier soit changé. Il faut noter que dans le cas de plusieurs changements dans la même journée il est necessaire d'incrémenter les deux derniers chiffres du numéro de série. Par exemple, dans le cas de deux changements en date du 03/12/20012, le premier fichier comportera une ligne Serial avec la valeur 2012120301 tandis que le deuxième changement comportera le numéro de série 2012120302 :+
  
 <file> <file>
-       2012120301       ; Serial+       2022110101       ; Serial
 </file> </file>
  
Ligne 656: Ligne 705:
  
 <file> <file>
-IN NS centos.fenestros.loc.+IN NS centos7.fenestros.loc.
 </file> </file>
  
Ligne 667: Ligne 716:
  
 <file> <file>
-localhost                   A              127.0.0.1 +localhost                    A              127.0.0.1 
-centos.fenestros.loc.       IN      A      10.0.2.15+centos7.fenestros.loc.       IN      A      10.0.2.51
 </file> </file>
  
Ligne 674: Ligne 723:
  
 <file> <file>
-dnsmaster                   IN      CNAME  centos.fenestros.loc.+dnsmaster                   IN      CNAME  centos7.fenestros.loc.
 </file> </file>
  
Ligne 680: Ligne 729:
  
 <file> <file>
-ftp IN CNAME centos.fenestros.loc. +ftp IN CNAME centos7.fenestros.loc. 
-www IN CNAME centos.fenestros.loc. +www IN CNAME centos7.fenestros.loc. 
-mail IN CNAME centos.fenestros.loc. +mail IN CNAME centos7.fenestros.loc. 
-news IN CNAME centos.fenestros.loc.+news IN CNAME centos7.fenestros.loc.
 </file> </file>
  
-==db.2.0.10.hosts==+===Le fichier db.2.0.10.hosts===
  
-Ce fichier se trouve dans /var/named/data. Il est le fichier qui définit la correspondance de l'adresse IP de la machine, à savoir le **10.0.2.15** avec le nom **centos.fenestros.loc**. Le chiffre **15** dans la dernière ligne correspond au 10.0.2.**15**:+Ce fichier doit être créé dans /var/named/data. Il est le fichier qui définit la correspondance de l'adresse IP de la machine en utilisant un Pointer (PTR), à savoir le **10.0.2.51** avec le nom **centos7.fenestros.loc**. Le chiffre **51** dans la dernière ligne correspond au 10.0.2.**51**:
  
-<file text db.2.0.10.hosts>+<code> 
 +[root@centos7 ~]# vi /var/named/data/db.2.0.10.hosts 
 + 
 +[root@centos7 ~]# cat /var/named/data/db.2.0.10.hosts
 $TTL 3D $TTL 3D
-@       IN      SOA     centos.fenestros.loc.        centos.fenestros.loc. ( +@       IN      SOA     centos7.fenestros.loc.        centos7.fenestros.loc. ( 
-                2008120301 ; Serial+                2022110101 ; Serial
                 10800   ; Refresh                 10800   ; Refresh
                 3600    ; Retry                 3600    ; Retry
                 604800  ; Expire                 604800  ; Expire
                 86400) ; Minimum TTL                 86400) ; Minimum TTL
-                NS      centos.fenestros.loc. +                NS      centos7.fenestros.loc. 
-15       IN      PTR     centos.fenestros.loc. +51       IN      PTR     centos7.fenestros.loc. 
-</file> +</code>
  
 Modifiez maintenant les permissions sur les fichiers de configuration : Modifiez maintenant les permissions sur les fichiers de configuration :
  
 <code> <code>
-[root@centos6 named]# chmod g+w /var/named/data/+[root@centos7 ~]# chmod g+w /var/named/data/* 
-[root@centos6 named]# ls -l /var/named/data/+ 
--rw-rw-r--. 1 root root 350 30 mai   15:52 /var/named/data/db.2.0.10.hosts +[root@centos7 ~]# ls -l /var/named/data/
--rw-rw-r--. 1 root root 610 30 mai   15:51 /var/named/data/db.fenestros.loc.hosts+-rw-rw-r--. 1 root root 355 Nov  1 17:29 /var/named/data/db.2.0.10.hosts 
 +-rw-rw-r--. 1 root root 619 Nov  1 17:22 /var/named/data/db.fenestros.loc.hosts
 </code> </code>
 +
 +====2.5 - Tester le serveur DNS====
  
 Modifiez maintenant le fichier **/etc/resolv.conf** afin d'utiliser votre propre serveur DNS : Modifiez maintenant le fichier **/etc/resolv.conf** afin d'utiliser votre propre serveur DNS :
  
-<file text resolv.conf>+<code> 
 +[root@centos7 ~]# nmcli c mod ip_fixe +ipv4.dns 127.0.0.1 
 + 
 +[root@centos7 ~]# nmcli c mod ip_fixe -ipv4.dns 8.8.8.8 
 + 
 +[root@centos7 ~]# nmcli c up ip_fixe 
 +Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3) 
 + 
 +[root@centos7 ~]# cat /etc/resolv.conf  
 +# Generated by NetworkManager
 search fenestros.loc search fenestros.loc
 nameserver 127.0.0.1 nameserver 127.0.0.1
-</file>+</code>
  
 Dernièrement, démarrez le service named : Dernièrement, démarrez le service named :
  
 <code> <code>
-[root@centos6 named]# service named start +[root@centos7 ~]# systemctl start named 
-Démarrage de named                                       [  OK  ]+[root@centos7 ~]# systemctl status named 
 +● named.service - Berkeley Internet Name Domain (DNS) 
 +   Loaded: loaded (/usr/lib/systemd/system/named.service; enabled; vendor preset: disabled) 
 +   Activeactive (running) since Tue 2022-11-01 17:41:33 CET; 3s ago 
 +  Process: 24441 ExecStart=/usr/sbin/named -u named -c ${NAMEDCONF} $OPTIONS (code=exited, status=0/SUCCESS) 
 +  Process: 24439 ExecStartPre=/bin/bash -c if [ ! "$DISABLE_ZONE_CHECKING" == "yes" ]; then /usr/sbin/named-checkconf -z "$NAMEDCONF"; else echo "Checking of zone files is disabled"; fi (code=exited, status=0/SUCCESS) 
 + Main PID: 24443 (named) 
 +   CGroup: /system.slice/named.service 
 +           └─24443 /usr/sbin/named -u named -c /etc/named.conf 
 + 
 +Nov 01 17:41:33 centos7.fenestros.loc named[24443]: network unreachable resolving './DNSKEY/IN': 2001:503:ba3e::2:30#53 
 +Nov 01 17:41:33 centos7.fenestros.loc named[24443]: network unreachable resolving './NS/IN': 2001:503:ba3e::2:30#53 
 +Nov 01 17:41:33 centos7.fenestros.loc named[24443]: network unreachable resolving './DNSKEY/IN': 2001:500:1::53#53 
 +Nov 01 17:41:33 centos7.fenestros.loc named[24443]: network unreachable resolving './NS/IN': 2001:500:1::53#53 
 +Nov 01 17:41:33 centos7.fenestros.loc named[24443]: network unreachable resolving './DNSKEY/IN': 2001:500:200::b#53 
 +Nov 01 17:41:33 centos7.fenestros.loc named[24443]: network unreachable resolving './NS/IN': 2001:500:200::b#53 
 +Nov 01 17:41:33 centos7.fenestros.loc named[24443]: network unreachable resolving './DNSKEY/IN': 2001:500:a8::e#53 
 +Nov 01 17:41:33 centos7.fenestros.loc named[24443]: network unreachable resolving './NS/IN': 2001:500:a8::e#53 
 +Nov 01 17:41:33 centos7.fenestros.loc named[24443]: managed-keys-zone: Key 20326 for zone . acceptance timer complete: key now trusted 
 +Nov 01 17:41:34 centos7.fenestros.loc named[24443]: resolver priming query complete
 </code> </code>
  
Ligne 729: Ligne 811:
  
 <code> <code>
-[root@centos6 ~]# dig www.linuxelearning.com+[root@centos7 ~]# dig www.i2tch.com
  
-; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.<<>> www.linuxelearning.com+; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.10 <<>> www.i2tch.com
 ;; global options: +cmd ;; global options: +cmd
 ;; Got answer: ;; Got answer:
-;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44024 +;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48329 
-;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 13, ADDITIONAL: 0+;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 3
  
 +;; OPT PSEUDOSECTION:
 +; EDNS: version: 0, flags:; udp: 4096
 ;; QUESTION SECTION: ;; QUESTION SECTION:
-;www.linuxelearning.com. IN A+;www.i2tch.com.                 IN      A
  
 ;; ANSWER SECTION: ;; ANSWER SECTION:
-www.linuxelearning.com. 39795 IN CNAME linuxelearning.com. +www.i2tch.com.          3551    IN            51.68.204.226
-linuxelearning.com. 60 IN A 212.198.31.61+
  
 ;; AUTHORITY SECTION: ;; AUTHORITY SECTION:
-com. 172599 IN NS k.gtld-servers.net. +i2tch.com.              172751  IN      NS      ns1026.ui-dns.com. 
-com. 172599 IN NS m.gtld-servers.net. +i2tch.com.              172751  IN      NS      ns1051.ui-dns.de
-com. 172599 IN NS l.gtld-servers.net+i2tch.com.              172751  IN      NS      ns1036.ui-dns.org
-com. 172599 IN NS b.gtld-servers.net. +i2tch.com.              172751  IN      NS      ns1051.ui-dns.biz.
-com. 172599 IN NS d.gtld-servers.net+
-com. 172599 IN NS a.gtld-servers.net. +
-com. 172599 IN NS f.gtld-servers.net+
-com. 172599 IN NS i.gtld-servers.net. +
-com. 172599 IN NS e.gtld-servers.net. +
-com. 172599 IN NS c.gtld-servers.net. +
-com. 172599 IN NS j.gtld-servers.net. +
-com. 172599 IN NS h.gtld-servers.net. +
-com. 172599 IN NS g.gtld-servers.net.+
  
-;; Query time: 38 msec+;; ADDITIONAL SECTION: 
 +ns1026.ui-dns.com.      172751  IN      A       217.160.82.26 
 +ns1026.ui-dns.com.      172751  IN      AAAA    2001:8d8:fe:53:0:d9a0:521a:100 
 + 
 +;; Query time: msec
 ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; SERVER: 127.0.0.1#53(127.0.0.1)
-;; WHEN: Wed May 30 17:09:25 2012 +;; WHEN: Tue Nov 01 17:42:27 CET 2022 
-;; MSG SIZE  rcvd: 294+;; MSG SIZE  rcvd: 222 
 +</code>
  
-[root@centos6 ~]# dig centos.fenestros.loc+<code> 
 +[root@centos7 ~]# dig centos7.fenestros.loc
  
-; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.<<>> centos.fenestros.loc+; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.10 <<>> centos7.fenestros.loc
 ;; global options: +cmd ;; global options: +cmd
 ;; Got answer: ;; Got answer:
-;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26457 +;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37543 
-;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0+;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
  
 +;; OPT PSEUDOSECTION:
 +; EDNS: version: 0, flags:; udp: 4096
 ;; QUESTION SECTION: ;; QUESTION SECTION:
-;centos.fenestros.loc. IN A+;centos7.fenestros.loc.         IN      A
  
 ;; ANSWER SECTION: ;; ANSWER SECTION:
-centos.fenestros.loc. 259200 IN A 10.0.2.15+centos7.fenestros.loc.  259200  IN            10.0.2.51
  
 ;; AUTHORITY SECTION: ;; AUTHORITY SECTION:
-fenestros.loc. 259200 IN NS centos.fenestros.loc.+fenestros.loc.          259200  IN      NS      centos7.fenestros.loc.
  
-;; Query time: msec+;; Query time: msec
 ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; SERVER: 127.0.0.1#53(127.0.0.1)
-;; WHEN: Wed May 30 17:10:05 2012 +;; WHEN: Tue Nov 01 17:44:08 CET 2022 
-;; MSG SIZE  rcvd: 68+;; MSG SIZE  rcvd: 80 
 +</code>
  
 +<code>
 +[root@centos7 ~]# dig -x 10.0.2.51
  
-[root@centos6 ~]# dig -x 10.0.2.15 +; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.10 <<>> -x 10.0.2.51
- +
-; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.<<>> -x 10.0.2.15+
 ;; global options: +cmd ;; global options: +cmd
 ;; Got answer: ;; Got answer:
-;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59735 +;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48473 
-;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1+;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
  
 +;; OPT PSEUDOSECTION:
 +; EDNS: version: 0, flags:; udp: 4096
 ;; QUESTION SECTION: ;; QUESTION SECTION:
-;15.2.0.10.in-addr.arpa. IN PTR+;51.2.0.10.in-addr.arpa.                IN      PTR
  
 ;; ANSWER SECTION: ;; ANSWER SECTION:
-15.2.0.10.in-addr.arpa. 259200 IN PTR centos.fenestros.loc.+51.2.0.10.in-addr.arpa. 259200  IN      PTR     centos7.fenestros.loc.
  
 ;; AUTHORITY SECTION: ;; AUTHORITY SECTION:
-2.0.10.in-addr.arpa. 259200 IN NS centos.fenestros.loc.+2.0.10.in-addr.arpa.    259200  IN      NS      centos7.fenestros.loc.
  
 ;; ADDITIONAL SECTION: ;; ADDITIONAL SECTION:
-centos.fenestros.loc. 259200 IN A 10.0.2.15+centos7.fenestros.loc.  259200  IN            10.0.2.51
  
 ;; Query time: 0 msec ;; Query time: 0 msec
 ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; SERVER: 127.0.0.1#53(127.0.0.1)
-;; WHEN: Wed May 30 17:10:50 2012 +;; WHEN: Tue Nov 01 17:45:05 CET 2022 
-;; MSG SIZE  rcvd: 104 +;; MSG SIZE  rcvd: 116
 </code> </code>
  
-<WRAP center round important> +<WRAP center round important 60%
-Notez l'utilisation de l'option **-x** de la commande **dig** pour tester la zone à l'envers.+**Important** - Notez l'utilisation de l'option **-x** de la commande **dig** pour tester la zone à l'envers.
 </WRAP> </WRAP>
  
-====rndc====+<code> 
 +[root@centos7 ~]# host ittraining.team 
 +ittraining.team has address 109.228.56.52 
 +ittraining.team mail is handled by 10 aspmx3.googlemail.com. 
 +ittraining.team mail is handled by 5 alt2.aspmx.l.google.com. 
 +ittraining.team mail is handled by 5 aspmx.l.google.com. 
 +ittraining.team mail is handled by 10 mx.zoho.com. 
 +ittraining.team mail is handled by 10 aspmx2.googlemail.com. 
 +ittraining.team mail is handled by 1 alt1.aspmx.l.google.com. 
 +</code>
  
-L'utilitaire de bind **rndc** est utilisé pour contrôler **named** à partir de la ligne de commande. Pour des raisons de sécurité une clef partagée doit être référencée dans le fichier de configuration de bind, **/etc/named.conf**, ainsi que dans le fichier de configuration de **rndc**, **/etc/rndc.conf**.+====LAB #3 - L'utilitaire rndc====
  
-===La clef rndc===+L'utilitaire de bind **rndc** est utilisé pour contrôler **named** à partir de la ligne de commande du localhost ou bien d'un hôte distant. Pour des raisons de sécurité une clef partagée doit être référencée dans le fichier de configuration de bind, **/etc/named.conf**, ainsi que dans le fichier de configuration de **rndc**, **/etc/rndc.conf**. 
 + 
 +===3.1 - La clef rndc===
  
 Premièrement il convient de créer la clef partagée : Premièrement il convient de créer la clef partagée :
  
 <code> <code>
-[root@centos6 ~]# rndc-confgen -a -c /root/rndc.key+[root@centos7 ~]# rndc-confgen -a -c /root/rndc.key
 wrote key file "/root/rndc.key" wrote key file "/root/rndc.key"
 </code> </code>
Ligne 833: Ligne 928:
 A l'examen de la clef, vous pouvez constater que son nom est **rndc-key** et que l'algorithme est **hmac-md5** : A l'examen de la clef, vous pouvez constater que son nom est **rndc-key** et que l'algorithme est **hmac-md5** :
  
-<file text rndc.key>+<code> 
 +[root@centos7 ~]# cat /root/rndc.key
 key "rndc-key" { key "rndc-key" {
- algorithm hmac-md5; +        algorithm hmac-md5; 
- secret "NuPP8qFNPZ7m0rWPPahRtA==";+        secret "F5/TtDX+IxSbyGNNAnR48Q==";
 }; };
-</file>+</code>
  
-===Fichiers de Configuration===+<WRAP center round important 60%> 
 +**Important** - Notez le format de ce fichier. 
 +</WRAP> 
 + 
 +===3.2 - Les fichiers de configuration===
  
 La clef doit être référencée dans le fichier **/etc/named.conf** : La clef doit être référencée dans le fichier **/etc/named.conf** :
  
-<file text named.conf>+<code> 
 +[root@centos7 ~]# vi /etc/named.conf 
 +[root@centos7 ~]# cat /etc/named.conf
 // //
 // named.conf // named.conf
Ligne 853: Ligne 955:
 // See /usr/share/doc/bind*/sample/ for example named configuration files. // See /usr/share/doc/bind*/sample/ for example named configuration files.
 // //
 +// See the BIND Administrator's Reference Manual (ARM) for details about the
 +// configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html
  
 options { options {
- listen-on port 53 { 127.0.0.1; }; +        listen-on port 53 { 127.0.0.1; }; 
- listen-on-v6 port 53 { ::1; }; +        listen-on-v6 port 53 { ::1; }; 
- directory  "/var/named"; +        directory       "/var/named"; 
- dump-file  "/var/named/data/cache_dump.db";+        dump-file       "/var/named/data/cache_dump.db";
         statistics-file "/var/named/data/named_stats.txt";         statistics-file "/var/named/data/named_stats.txt";
         memstatistics-file "/var/named/data/named_mem_stats.txt";         memstatistics-file "/var/named/data/named_mem_stats.txt";
- allow-query {  +        recursing-file  "/var/named/data/named.recursing"; 
- localhost; +        secroots-file   "/var/named/data/named.secroots"; 
- 10.0.2.0/24; +        allow-query { 
-  }; +                localhost; 
- forwarders { 10.0.2.3}+                10.0.2.0/24; 
- recursion yes;+        }; 
 + 
 +        /*  
 +         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion. 
 +         - If you are building a RECURSIVE (caching) DNS server, you need to enable  
 +           recursion 
 +         - If your recursive DNS server has a public IP address, you MUST enable access  
 +           control to limit queries to your legitimate usersFailing to do so will 
 +           cause your server to become part of large scale DNS amplification  
 +           attacks. Implementing BCP38 within your network would greatly 
 +           reduce such attack surface  
 +        */ 
 +        recursion yes; 
 + 
 +        dnssec-enable yes
 +        dnssec-validation yes
 + 
 +        /* Path to ISC DLV key */ 
 +        bindkeys-file "/etc/named.root.key";
  
- dnssec-enable yes; +        managed-keys-directory "/var/named/dynamic";
- dnssec-validation yes; +
- dnssec-lookaside auto;+
  
- /* Path to ISC DLV key *+        pid-file "/run/named/named.pid"; 
- bindkeys-file "/etc/named.iscdlv.key";+        session-keyfile "/run/named/session.key";
 }; };
  
Ligne 884: Ligne 1004:
  
 zone "." IN { zone "." IN {
- type hint; +        type hint; 
- file "named.ca";+        file "named.ca";
 }; };
  
 key "rndc-key" { key "rndc-key" {
- algorithm hmac-md5; +        algorithm hmac-md5; 
- secret "NuPP8qFNPZ7m0rWPPahRtA==";+        secret "F5/TtDX+IxSbyGNNAnR48Q==";
 }; };
  
 include "/etc/named.rfc1912.zones"; include "/etc/named.rfc1912.zones";
-</file>+include "/etc/named.root.key"; 
 +</code>
  
-Afin de dire à named d'écouter sur le port par défaut 953 pour des connexions en provenance de rndc, il est necéssaire d'utiliser une clause **controls** dans le fichier /etc/named.conf :+Afin de dire à named d'écouter sur le port par défaut 953 pour des connexions en provenance de rndc, il est nécessaire d'utiliser une clause **controls** dans le fichier /etc/named.conf :
  
-<file text named.conf>+<code> 
 +[root@centos7 ~]# vi /etc/named.conf 
 +[root@centos7 ~]# cat /etc/named.conf
 // //
 // named.conf // named.conf
Ligne 907: Ligne 1030:
 // See /usr/share/doc/bind*/sample/ for example named configuration files. // See /usr/share/doc/bind*/sample/ for example named configuration files.
 // //
 +// See the BIND Administrator's Reference Manual (ARM) for details about the
 +// configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html
  
 options { options {
- listen-on port 53 { 127.0.0.1; }; +        listen-on port 53 { 127.0.0.1; }; 
- listen-on-v6 port 53 { ::1; }; +        listen-on-v6 port 53 { ::1; }; 
- directory  "/var/named"; +        directory       "/var/named"; 
- dump-file  "/var/named/data/cache_dump.db";+        dump-file       "/var/named/data/cache_dump.db";
         statistics-file "/var/named/data/named_stats.txt";         statistics-file "/var/named/data/named_stats.txt";
         memstatistics-file "/var/named/data/named_mem_stats.txt";         memstatistics-file "/var/named/data/named_mem_stats.txt";
- allow-query {  +        recursing-file  "/var/named/data/named.recursing"; 
- localhost; +        secroots-file   "/var/named/data/named.secroots"; 
- 10.0.2.0/24; +        allow-query { 
-  }; +                localhost; 
- forwarders { 10.0.2.3}+                10.0.2.0/24; 
- recursion yes;+        }; 
 + 
 +        /*  
 +         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion. 
 +         - If you are building a RECURSIVE (caching) DNS server, you need to enable  
 +           recursion 
 +         - If your recursive DNS server has a public IP address, you MUST enable access  
 +           control to limit queries to your legitimate usersFailing to do so will 
 +           cause your server to become part of large scale DNS amplification  
 +           attacks. Implementing BCP38 within your network would greatly 
 +           reduce such attack surface  
 +        */ 
 +        recursion yes; 
 + 
 +        dnssec-enable yes
 +        dnssec-validation yes
 + 
 +        /* Path to ISC DLV key */ 
 +        bindkeys-file "/etc/named.root.key";
  
- dnssec-enable yes; +        managed-keys-directory "/var/named/dynamic";
- dnssec-validation yes; +
- dnssec-lookaside auto;+
  
- /* Path to ISC DLV key *+        pid-file "/run/named/named.pid"; 
- bindkeys-file "/etc/named.iscdlv.key";+        session-keyfile "/run/named/session.key";
 }; };
  
Ligne 938: Ligne 1079:
  
 zone "." IN { zone "." IN {
- type hint; +        type hint; 
- file "named.ca";+        file "named.ca";
 }; };
  
Ligne 947: Ligne 1088:
  
 key "rndc-key" { key "rndc-key" {
- algorithm hmac-md5; +        algorithm hmac-md5; 
- secret "NuPP8qFNPZ7m0rWPPahRtA==";+        secret "F5/TtDX+IxSbyGNNAnR48Q==";
 }; };
  
 include "/etc/named.rfc1912.zones"; include "/etc/named.rfc1912.zones";
-</file>+include "/etc/named.root.key"; 
 +</code>
  
-A ce stade, rndc ne peut pas se connecter à named :+A ce stade, rndc ne peut pas se connecter à named. La raison est le manque du fichier **/etc/rndc.conf** :
  
 <code> <code>
-[root@centos6 ~]# service named status +[root@centos7 ~]# cat /etc/rndc.conf 
-rndc: connection to remote host closed +cat: /etc/rndc.confNo such file or directory
-This may indicate that +
-* the remote server is using an older version of the command protocol, +
-* this host is not authorized to connect, +
-* the clocks are not synchronized, or +
-* the key is invalid. +
-named (pid  10806) en cours d'exécution...+
 </code> </code>
  
-La raison est le manque du fichier **/etc/rndc.conf** qui doit prendre la forme suivante :+Créez donc ce fichier :
  
-<file text rndc.conf>+<code> 
 +[root@centos7 ~]# vi /etc/rndc.conf 
 +[root@centos7 ~]# cat /etc/rndc.conf
 key "rndc-key" { key "rndc-key" {
- algorithm hmac-md5; +        algorithm hmac-md5; 
- secret "NuPP8qFNPZ7m0rWPPahRtA==";+        secret "F5/TtDX+IxSbyGNNAnR48Q==";
 }; };
  
Ligne 979: Ligne 1117:
   default-key     "rndc-key";   default-key     "rndc-key";
 }; };
-</file>+</code>
  
-<WRAP center round important> +<WRAP center round important 60%
-Notez la présence de la section concernant la valeur de la clef et la section qui définit le serveur par défaut et la clef par défaut.Dans le cas où vous avez plusieurs serveurs à gérer à partir d'une seule instance de rndc vous pouvez inclure des clauses supplémentaires correspondantes à chaque configuration des fichiers /etc/named.conf.+**Important** - Notez la présence de la section concernant la valeur de la clef et la section qui définit le serveur par défaut et la clef par défaut. Dans le cas où vous avez plusieurs serveurs à gérer à partir d'une seule instance de rndc vous pouvez inclure des clauses supplémentaires correspondantes à chaque configuration des fichiers /etc/named.conf.
 </WRAP> </WRAP>
  
-Pour prendre en compte cette configuration, re-démarrez votre service named :+Pour prendre en compte cette configuration, re-démarrez le service named :
  
 <code> <code>
-[root@centos6 ~]# service named restart +[root@centos7 ~]# systemctl restart named 
-Arrêt de named : .                                         [  OK  ] + 
-Démarrage de named                                        OK  ]+[root@centos7 ~]# systemctl status named 
 +● named.service - Berkeley Internet Name Domain (DNS) 
 +   Loadedloaded (/usr/lib/systemd/system/named.service; enabled; vendor preset: disabled) 
 +   Active: active (running) since Wed 2022-11-02 05:47:10 CET; 8s ago 
 +  Process: 9129 ExecStop=/bin/sh -c /usr/sbin/rndc stop > /dev/null 2>&1 || /bin/kill -TERM $MAINPID (code=exited, status=0/SUCCESS) 
 +  Process: 9142 ExecStart=/usr/sbin/named -u named -c ${NAMEDCONF} $OPTIONS (code=exited, status=0/SUCCESS) 
 +  Process: 9140 ExecStartPre=/bin/bash -c if [ ! "$DISABLE_ZONE_CHECKING" == "yes" ]; then /usr/sbin/named-checkconf -z "$NAMEDCONF"; else echo "Checking of zone files is disabled"; fi (code=exited, status=0/SUCCESS) 
 + Main PID9144 (named) 
 +   CGroup: /system.slice/named.service 
 +           └─9144 /usr/sbin/named -u named -c /etc/named.conf 
 + 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: network unreachable resolving './DNSKEY/IN': 2001:500:9f::42#53 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: network unreachable resolving './NS/IN': 2001:500:9f::42#53 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: network unreachable resolving './DNSKEY/IN': 2001:500:2d::d#53 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: network unreachable resolving './NS/IN': 2001:500:2d::d#53 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: network unreachable resolving './DNSKEY/IN': 2001:dc3::35#53 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: network unreachable resolving './NS/IN': 2001:dc3::35#53 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: network unreachable resolving './DNSKEY/IN': 2001:500:200::b#53 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: network unreachable resolving './NS/IN': 2001:500:200::b#53 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: managed-keys-zone: Key 20326 for zone . acceptance timer complete: key now trusted 
 +Nov 02 05:47:10 centos7.fenestros.loc named[9144]: resolver priming query complete
 </code> </code>
  
Ligne 996: Ligne 1154:
  
 <code> <code>
-[root@centos6 ~]# service named status +[root@centos7 ~]# rndc status 
-version: 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2+WARNING: key file (/etc/rndc.key) exists, but using default configuration file (/etc/rndc.conf) 
 +version: BIND 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.10 (Extended Support Version) <id:7107deb> 
 +running on centos7.fenestros.loc: Linux x86_64 3.10.0-1160.6.1.el7.x86_64 #1 SMP Tue Nov 17 13:59:11 UTC 2020 
 +boot time: Wed, 02 Nov 2022 04:47:10 GMT 
 +last configured: Wed, 02 Nov 2022 04:47:10 GMT 
 +configuration file: /etc/named.conf
 CPUs found: 1 CPUs found: 1
 worker threads: 1 worker threads: 1
-number of zones: 21+UDP listeners per interface: 1 
 +number of zones: 105 (97 automatic)
 debug level: 0 debug level: 0
 xfers running: 0 xfers running: 0
Ligne 1006: Ligne 1170:
 soa queries in progress: 0 soa queries in progress: 0
 query logging is OFF query logging is OFF
-recursive clients: 0/0/1000 +recursive clients: 0/900/1000 
-tcp clients: 0/100+tcp clients: 2/150
 server is up and running server is up and running
-named (pid  12105) en cours d'exécution... 
 </code> </code>
- 
-<WRAP center round important> 
-Notez les lignes supplémentaires dans la sortie. 
-</WRAP> 
- 
-===Options de la commande=== 
  
 Les options de cette commande sont : Les options de cette commande sont :
  
 <code> <code>
-[root@centos6 ~]# rndc --help+[root@centos7 ~]# rndc --help
 rndc: invalid argument -- rndc: invalid argument --
 Usage: rndc [-b address] [-c config] [-s server] [-p port] Usage: rndc [-b address] [-c config] [-s server] [-p port]
- [-k key-file ] [-y key] [-V] command+        [-k key-file ] [-y key] [-r] [-V] command
  
 command is one of the following: command is one of the following:
  
-  reload Reload configuration file and zones. +  addzone zone [class [view]] { zone-options } 
-  reload zone [class [view]] +                Add zone to given view. Requires allow-new-zones option
- Reload a single zone. +  delzone [-clean] zone [class [view]] 
-  refresh zone [class [view]] +                Removes zone from given view
- Schedule immediate maintenance for a zone. +  dnstap -reopen 
-  retransfer zone [class [view]+                Close, truncate and re-open the DNSTAP output file. 
- Retransfer single zone without checking serial number+  dnstap -roll count 
-  freeze Suspend updates to all dynamic zones.+                Close, rename and re-open the DNSTAP output file(s). 
 +  dumpdb [-all|-cache|-zones|-adb|-bad|-fail] [view ...
 +                Dump cache(s) to the dump file (named_dump.db). 
 +  flush         Flushes all of the server's caches. 
 +  flush [view]  Flushes the server's cache for view. 
 +  flushname name [view] 
 +                Flush the given name from the server's cache(s) 
 +  flushtree name [view] 
 +                Flush all names under the given name from the server's cache(s) 
 +  freeze        Suspend updates to all dynamic zones.
   freeze zone [class [view]]   freeze zone [class [view]]
- Suspend updates to a dynamic zone. +                Suspend updates to a dynamic zone. 
-  thaw Enable updates to all dynamic zones and reload them+  halt          Stop the server without saving pending updates. 
-  thaw zone [class [view]] +  halt -p       Stop the server without saving pending updates reporting 
- Enable updates to a frozen dynamic zone and reload it. +                process id.
-  notify zone [class [view]] +
- Resend NOTIFY messages for the zone. +
-  reconfig Reload configuration file and new zones only. +
-  sign zone [class [view]] +
- Update zone keys, and sign as needed.+
   loadkeys zone [class [view]]   loadkeys zone [class [view]]
- Update keys without signing immediately. +                Update keys without signing immediately. 
-  stats Write server statistics to the statistics file+  managed-keys refresh [class [view]] 
-  querylog Toggle query logging+                Check trust anchor for RFC 5011 key changes 
-  dumpdb [-all|-cache|-zones] [view ...] +  managed-keys status [class [view]] 
- Dump cache(s) to the dump file (named_dump.db).+                Display RFC 5011 managed keys information 
 +  managed-keys sync [class [view]] 
 +                Write RFC 5011 managed keys to disk 
 +  modzone zone [class [view]] { zone-options } 
 +                Modify a zone's configuration. 
 +                Requires allow-new-zones option. 
 +  notify zone [class [view]] 
 +                Resend NOTIFY messages for the zone
 +  notrace       Set debugging level to 0
 +  nta -dump 
 +                List all negative trust anchors. 
 +  nta [-lifetime duration] [-forcedomain [view
 +                Set a negative trust anchor, disabling DNSSEC validation 
 +                for the given domain. 
 +                Using -lifetime specifies the duration of the NTA, up 
 +                to one week. 
 +                Using -force prevents the NTA from expiring before its 
 +                full lifetime, even if the domain can validate sooner. 
 +  nta -remove domain [view
 +                Remove a negative trust anchor, re-enabling validation 
 +                for the given domain. 
 +  querylog [ on | off ] 
 +                Enable / disable query logging. 
 +  reconfig      Reload configuration file and new zones only. 
 +  recursing     Dump the queries that are currently recursing (named.recursing) 
 +  refresh zone [class [view]] 
 +                Schedule immediate maintenance for a zone. 
 +  reload        Reload configuration file and zones. 
 +  reload zone [class [view]] 
 +                Reload a single zone. 
 +  retransfer zone [class [view]] 
 +                Retransfer a single zone without checking serial number. 
 +  scan          Scan available network interfaces for changes.
   secroots [view ...]   secroots [view ...]
- Write security roots to the secroots file. +                Write security roots to the secroots file
-  stop Save pending updates to master files and stop the server. +  showzone zone [class [view]] 
-  stop -p Save pending updates to master files and stop the server +                Print a zone's configuration. 
- reporting process id. +  sign zone [class [view]] 
-  halt Stop the server without saving pending updates+                Update zone keys, and sign as needed. 
-  halt -p Stop the server without saving pending updates reporting +  signing -clear all zone [class [view]] 
- process id+                Remove the private records for all keys that have 
-  trace Increment debugging level by one. +                finished signing the given zone. 
-  trace level Change the debugging level. +  signing -clear <keyid>/<algorithm> zone [class [view]] 
-  notrace Set debugging level to 0. +                Remove the private record that indicating the given key 
-  flush Flushes all of the server's caches. +                has finished signing the given zone. 
-  flush [view] Flushes the server's cache for view+  signing -list zone [class [view]] 
-  flushname name [view] +                List the private records showing the state of DNSSEC 
- Flush the given name from the server's cache(s) +                signing in the given zone. 
-  status Display status of the server. +  signing -nsec3param hash flags iterations salt zone [class [view]] 
-  recursing Dump the queries that are currently recursing (named.recursing) +                Add NSEC3 chain to zone if already signed. 
-  validation newstate [view] +                Prime zone with NSEC3 chain if not yet signed. 
- Enable / disable DNSSEC validation. +  signing -nsec3param none zone [class [view]] 
-  *restart Restart the server. +                Remove NSEC3 chains from zone. 
-  addzone ["file"zone [class [view]] { zone-options } +  signing -serial <value> zone [class [view]] 
- Add zone to given view. Requires new-zone-file option. +                Set the zones's serial to <value>
-  delzone ["file"] zone [class [view]] +  stats         Write server statistics to the statistics file. 
- Removes zone from given view. Requires new-zone-file option.+  status        Display status of the server
 +  stop          Save pending updates to master files and stop the server. 
 +  stop -p       Save pending updates to master files and stop the server 
 +                reporting process id. 
 +  sync [-clean] Dump changes to all dynamic zones to disk, and optionally 
 +                remove their journal files
 +  sync [-clean] zone [class [view]] 
 +                Dump a single zone's changes to disk, and optionally 
 +                remove its journal file. 
 +  thaw          Enable updates to all dynamic zones and reload them. 
 +  thaw zone [class [view]] 
 +                Enable updates to a frozen dynamic zone and reload it
 +  trace         Increment debugging level by one. 
 +  trace level   Change the debugging level. 
 +  tsig-delete keyname [view] 
 +                Delete TKEY-negotiated TSIG key
 +  tsig-list     List all currently active TSIG keys, including both statically 
 +                configured and TKEY-negotiated keys
 +  validation [ yes | no | status ] [view] 
 +                Enable / disable DNSSEC validation. 
 +  zonestatus zone [class [view]] 
 +                Display the current status of a zone.
  
-* == not yet implemented +Version: 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.10
-Version: 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2+
 </code> </code>
 +
 +<WRAP center round important 60%>
 +**Important** - Notez la sous-commande **reload** qui permet de recharger la configuration d'une zone spécifique sans recharger la configuration de toutes les zones.
 +</WRAP>
 +
 +=====Caractéristiques avancées de Bind=====
 +
 +====DNSSEC====
 +
 +**DNSSEC** — Abréviation de DNS SECurity, cette fonctionnalité permet aux zones d'être signées de manière cryptographique avec une clé de zone :
 +
 +  * De cette manière, les informations sur une zone spécifique peuvent être vérifiées comme provenant d'un serveur de noms qui l'a signée avec une clé privée particulière, tant que le destinataire possède la clé publique de ce serveur de noms.
 +
 +BIND version 9 prend également en charge la méthode d'authentification des messages par clé publique/privée SIG(0).
 +
 +====TSIG====
 +
 +**TSIG** — Abréviation de Transaction SIGNatures, cette fonctionnalité permet un transfert du maître vers l'esclave uniquement après avoir vérifié qu'une clé secrète partagée existe sur les deux serveurs de noms :
 +
 +  * Cette fonctionnalité renforce la méthode standard d'autorisation de transfert basée sur l'adresse IP. Un attaquant aurait non seulement besoin d'avoir accès à l'adresse IP pour transférer la zone, mais il aurait également besoin de connaître la clé secrète.
 +
 +BIND version 9 prend également en charge TKEY, qui est une autre méthode de clé secrète partagée pour autoriser les transferts de zone.
 +
 +----
 +Copyright © 2022 Hugh Norris
  
Menu