Outils pour utilisateurs

Outils du site


reseau:dns:dnslan

Différences

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

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
reseau:dns:dnslan [2023/10/05 09:41]
techer.charles_educ-valadon-limoges.fr
reseau:dns:dnslan [2023/11/17 11:22] (Version actuelle)
techer.charles_educ-valadon-limoges.fr [Sécuriser le serveur DNS]
Ligne 4: Ligne 4:
 Pour chaque agence, il est nécessaire d’installer et configurer : Pour chaque agence, il est nécessaire d’installer et configurer :
   * le serveur DNS ayant autorité sur le domaine **<agence>.cub.fr (non récursif)** dans un conteneur Debian appelé **ns0** situé dans la **DMZ**;   * le serveur DNS ayant autorité sur le domaine **<agence>.cub.fr (non récursif)** dans un conteneur Debian appelé **ns0** situé dans la **DMZ**;
-  * le serveur DNS ayant autorité sur la zone **lan.<agence>.cub.fr (non récursif)** dans un conteneur Debian appelé **ns0** situé dans le **VLAN Utilisateur**;+  * le serveur DNS ayant autorité sur la zone **lan.<agence>.cub.fr (non récursif)** dans un conteneur Debian appelé **ns0** situé dans la **DMZ**;
   * le résolveur récursif dans un conteneur Debian appelé **dns0** situé dans le **VLAN Utilisateur**.   * le résolveur récursif dans un conteneur Debian appelé **dns0** situé dans le **VLAN Utilisateur**.
  
Ligne 10: Ligne 10:
  
   - Mettre en place les serveurs DNS de votre agence:   - Mettre en place les serveurs DNS de votre agence:
-    - serveur DNS ns0 dans la DMZ avec l'adresse IP 172.16.x.10 +    - serveur DNS ns0.<agence>.cub.fr dans la DMZ avec l'adresse IP 172.16.x.10 
-    - serveur DNS ns0 dans le réseau Utilisateur (LAN) avec l'adresse IP 192.168.x.1+    - serveur DNS ns0.lan.<agence>.cub.fr dans la DMZ avec l'adresse IP 172.16.x.20
     - résolveur DNS dns0 dans le réseau Utilisateur (LAN) avec l'adresse IP 192.168.x.10        - résolveur DNS dns0 dans le réseau Utilisateur (LAN) avec l'adresse IP 192.168.x.10   
   - Procéder aux ajouts nécessaires sur le pare-feu pour le cas particulier du réseau Wan-CUB pour permettre notamment l’accessibilité des serveurs DNS et Web.   - Procéder aux ajouts nécessaires sur le pare-feu pour le cas particulier du réseau Wan-CUB pour permettre notamment l’accessibilité des serveurs DNS et Web.
Ligne 66: Ligne 66:
 Vous devez renseigner ce fichier pour tous les ordinateurs du réseau, PC et serveurs et même votre serveur DNS ns0 qui est aussi une machine cliente de son propre service DNS. Cette VM peut avoir besoin de trouver une IP à partir d’un nom.  Vous devez renseigner ce fichier pour tous les ordinateurs du réseau, PC et serveurs et même votre serveur DNS ns0 qui est aussi une machine cliente de son propre service DNS. Cette VM peut avoir besoin de trouver une IP à partir d’un nom. 
  
-Vous allez indiquer également le domaine dans lequel vous êtes  situés (domain) et comment compléter un nom DNS si on n'indique pas le domaine (search) :+Vous allez indiquer également le domaine de l'agence dans lequel vous êtes  situés (domain) et comment compléter un nom DNS si on n'indique pas le domaine (search). Indiquez également l'adresse IP de votre résolveur DNS (192.168.x.10) :
 <code> <code>
 root@ns0:~# nano /etc/resolv.conf root@ns0:~# nano /etc/resolv.conf
 domain agence.cub.fr domain agence.cub.fr
 search agence.cub.fr search agence.cub.fr
-nameserver adresseIPdeVotreServeurDNS+nameserver 192.168.x.10
 </code> </code>
  
Ligne 89: Ligne 89:
 ==== Modification du fichier /etc/bind/named.conf.options ==== ==== Modification du fichier /etc/bind/named.conf.options ====
 Editez le fichier **/etc/bind/named.conf.options** pour : Editez le fichier **/etc/bind/named.conf.options** pour :
-  * désactiver la récusivité+  * désactiver la récursivité
-  * indiquer l'interface d'écoute du serveur (127.0.0.1 et 172.166.10.10) :+  * indiquer l'interface d'écoute du serveur (127.0.0.1 et 172.16.x.10) :
 <code> <code>
 options { options {
  directory "/var/cache/bind";  directory "/var/cache/bind";
- listen-on port 53 { 127.0.0.1; 172.16.10.10; };+ listen-on port 53 { 127.0.0.1; 172.16.x.10; };
  // If there is a firewall between you and nameservers you want  // If there is a firewall between you and nameservers you want
  // to talk to, you may need to fix the firewall to allow multiple  // to talk to, you may need to fix the firewall to allow multiple
Ligne 128: Ligne 128:
 }; };
  
-// zone de résolution inverse 
-zone "168.192.10.in-addr.arpa" { 
-    type master; 
-    file "/etc/bind/db.agence.cub.fr.inv"; 
-}; 
 </code> </code>
  
Ligne 142: Ligne 137:
 |};|L’accolade ferme la définition de la zone.| |};|L’accolade ferme la définition de la zone.|
  
-La zone suivante porte la mention « **in-addr.arpa** » qui indique la zone inverse. Cette zone inverse permet au serveur de fournir un nom d’hôte à partir d’une adresse IP. 
- 
-Cette fonctionnalité est rendue nécessaire par certains services réseau. Le nom de la zone répond à une structure très précise. Le début du nom de la zone est constitué par le préfixe réseau de l’adresse IP. Les conventions sont les suivantes : 
- 
-  * Pour les réseaux IP de classe A (a.0.0.0), il faut un fichier de zone inverse a.in-addr.arpa; 
-  * Pour les réseaux IP de classe B (a.b.0.0), il faut un fichier de zone inverse b.a.in-addr.arpa; 
-  * Pour les réseaux IP de classe C (a.b.c.0), il faut un fichier de zone inverse c.b.a.in-addr.arpa 
- 
-Notez bien au passage l’inversion des octets ! 
- 
-Pour le contexte CUB, et compte tenu du sous-réseau il faut un fichier de zone inverse c.b.a.in-addr.arpa; 
 === Création du fichier de zone maître === === Création du fichier de zone maître ===
  
Ligne 164: Ligne 148:
 agence.cub.fr.       IN      SOA     ns0.agence.cub.fr. root.agence.cub.fr. ( agence.cub.fr.       IN      SOA     ns0.agence.cub.fr. root.agence.cub.fr. (
         2006031201      ; serial         2006031201      ; serial
-        1D.             ; refresh +        1D              ; refresh 
-        1H.             ; retry +        1H              ; retry 
-        1W.             ; expire+        1W              ; expire
         3H)             ; Negative Cache TTL         3H)             ; Negative Cache TTL
  
 agence.cub.fr. IN      NS      ns0.agence.cub.fr. agence.cub.fr. IN      NS      ns0.agence.cub.fr.
  
-ns0            IN      A       111.222.333.444 +ns0            IN      A       172.162.x.10 
-www            IN.     A.      111.222.333.444 +www            IN            172.162.x.11 
-dhcp           IN      A       111.222.333.445+dhcp           IN      A       172.168.x.y
 </code> </code>
  
Ligne 192: Ligne 176:
 </WRAP> </WRAP>
  
-=== Création du fichier de zone inverse === 
- 
-Le fichier de zone inverse (/etc/bind/db.agence.cub.fr.inv) doit contenir : 
-<code> 
-$TTL 3D 
-@ IN SOA ns0.agence.cub.fr. root.agence.cub.fr. ( 
-        2006031201      ; serial 
-        28800           ; refresh 
-        14400           ; retry 
-        3600000         ; expire 
-        86400 )         ; minimum 
- 
-    NS  ns0.agence.cub.fr. 
-444 PTR ns0.agence.cub.fr. 
-445 PTR dhcp.agence.cub.fr. 
-</code> 
-Les informations sont sensiblement identiques. La différence réside sur les enregistrements décrivant les machines. On indique la fin de l’adresse IP. PTR indique qu’il s’agit d’un enregistrement inverse.  
- 
-Ensuite, on indique le nom FQDN des machines suivi d’un point. 
- 
-=== Configurer la résolution DNS récursive. === 
- 
-Quand le serveur DNS va recevoir une requête pour laquelle il n’a pas de réponse, ce qui est le cas pour accéder à des serveurs sur Internet, il va transmettre la requête aux serveurs listés dans le paramètre **forwarders**. En principe on indique le serveur **DNS** de son **FAI**. Vous pouvez aussi pour cet atelier mettre les serveurs DNS publics **8.8.8.8** ou **8.8.4.4** ou **1.1.1.1**ou **9.9.9.9**. 
- 
-<WRAP center round info> 
- 
-Pour information, voici comment activer la récursivité.  
- 
-  * modifiez le fichier **/etc/bind/named.conf.options** pour mettre no au paramètre **dnssec-validation** et commenter la ligne concernat la récursivité : 
-<code> 
-Options { 
- 
-        dnssec-validation no; 
-        //recursion no; 
- 
-}; 
- 
-</code> 
- 
-Rajouter dans le fichier **/etc/bind/named.conf.options** l’option suivante : 
-<code> 
-Options { 
- 
-        forwarders { 
-           8.8.8.8; 8.8.4.4; 
-        }; 
- 
-}; 
-</code> 
-</WRAP> 
 === Test de la configuration === === Test de la configuration ===
-Utilisez la commande suivante pour tester voter configuration+Utilisez la commande suivante pour tester votre configuration
 <code shell> <code shell>
 # named-checkconf -z # named-checkconf -z
Ligne 250: Ligne 184:
 ==== Sécuriser le serveur DNS ==== ==== Sécuriser le serveur DNS ====
  
-Par défaut le **serveur DNS** ne va répondre qu’aux requêtes des clients **situés sur le même sous-réseau** qui est ici **192.168.xxx.xxx/xx**. Cela permet de limiter les attaques basées sur le service DNS. Pour autoriser des clients d'autres sous-réseaux, utilisez l'option **allow-query** : +Par défaut le **serveur DNS** ne va répondre qu’aux requêtes des clients **situés sur le même sous-réseau** qui est ici **192.168.x.0/24**. Cela permet de limiter les attaques basées sur le service DNS. Pour autoriser des clients d'autres sous-réseaux, utilisez l'option **allow-query** dans **/etc/bind/named.conf.options** : 
 <code> <code>
 Options { Options {
  
         allow-query {         allow-query {
-          192.168.xxx.yyy/24; +          192.168.x.0/24;  
 +          172.16.x.0/24;
         } ;         } ;
  
 }; };
 </code> </code>
-allow-query { 192.168.1/24; } ; 
- 
  
  
Ligne 277: Ligne 210:
 Ensuite, lancez le serveur en mode débogage, vous aurez déjà pas mal d’informations sur les éventuels problèmes : Ensuite, lancez le serveur en mode débogage, vous aurez déjà pas mal d’informations sur les éventuels problèmes :
 <code> <code>
-root@equipexdns:~# named -g+root@ns0:~# named -g
 </code> </code>
 Analyser les messages d'erreur obtenus puis faites éventuellement un CTRL-C pour stopper le serveur afin d'éditer le fichier concerné. Analyser les messages d'erreur obtenus puis faites éventuellement un CTRL-C pour stopper le serveur afin d'éditer le fichier concerné.
Ligne 289: Ligne 222:
 S'il n'y a plus d’erreurs de syntaxe, arrêtez puis relancez le serveur de la façon habituelle : S'il n'y a plus d’erreurs de syntaxe, arrêtez puis relancez le serveur de la façon habituelle :
 <code> <code>
-root@equipexdns:~# service bind9 restart+root@ns0:~# systemctl restart bind9
 Stopping domain name service...: bind9. Stopping domain name service...: bind9.
 Starting domain name service...: bind9. Starting domain name service...: bind9.
 </code> </code>
  
 +<WRAP center round info>
 +**Attention** : lors des tests, il est nécessaire de vider le cache DNS et le cache de votre navigateur pour les tests sur le serveur Web (ou réaliser les tests en navigation privée).
 +
 +Par exemple :
 +À partir du résolveur (pour le domaine et le sous domaine) :
 +<code>
 +root@resolvDNSGaleway:~# unbound-control flush_zone galway.cub.fr
 +ok removed 4 rrsets, 4 messages and 0 key entries
 +root@resolvDNSGaleway:~# unbound-control flush_zone cub.fr
 +ok removed 0 rrsets, 1 messages and 0 key entries
 +
 +ou
 +root@resolvDNSGaleway:~# unbound-control reload
 +</code>
 +
 +À partir de n’importe quel Debian ou Ubuntu :
 +<code>
 +systemctl restart networking
 +</code>
 +</WRAP>
 Ensuite, faites quelques tests : Ensuite, faites quelques tests :
 <code> <code>
Ligne 299: Ligne 252:
 ns0 ns0
 root@ns0:~# host ns0 root@ns0:~# host ns0
-ns0.agence.cub.fr has address 111.222.333.444+ns0.agence.cub.fr has address 172.16.x.10
 </code> </code>
  
Ligne 321: Ligne 274:
 <code> <code>
 $ nslookup dhcp $ nslookup dhcp
-Server: 192.168.50.90 +Server: 172.16.x.10 
-Address: 192.168.50.90#53 +Address: 172.16.x.10#53 
-Name: dhcp.mondomaine.org +Name: dhcp.agence.cub.fr 
-Address: 192.168.1.2 +Address: 192.168.x.y
-$ nslookup 192.168.1.2 +
-2.1.168.192.in-addr.arpa name = dhcp.mondomaine.org.+
 </code> </code>
 Tapez la commande nslookup sur une des stations du réseau pour obtenir et vérifier les informations fournies par le serveur DNS. Tapez la commande nslookup sur une des stations du réseau pour obtenir et vérifier les informations fournies par le serveur DNS.
Ligne 334: Ligne 285:
     * Test d’une zone :     * Test d’une zone :
 <code> <code>
-$ dig ns1.mondomaine.org +$ dig ns0.agence.cub.fr 
-; <<>> DiG 9.16.22-Debian <<>> ns1.mondomaine.org+; <<>> DiG 9.16.22-Debian <<>> ns0.agence.cub.fr
 ;; global options: +cmd ;; global options: +cmd
 ;; Got answer: ;; Got answer:
Ligne 344: Ligne 295:
 ; COOKIE: 8a3cc0da0dea6eaf3506eba35e6121ea484f5e9d41ee1144 (good) ; COOKIE: 8a3cc0da0dea6eaf3506eba35e6121ea484f5e9d41ee1144 (good)
 ;; QUESTION SECTION: ;; QUESTION SECTION:
-;ns1.mondomaine.org. IN A +;ns0.agence.cub.fr. IN A
-RSX103 – Cnam Paris+
 ;; ANSWER SECTION: ;; ANSWER SECTION:
-ns1.mondomaine.org. 604800 IN A 192.168.50.90+ns0.agence.cub.fr. 604800 IN A 192.168.50.90
 ;; ADDITIONAL SECTION: ;; ADDITIONAL SECTION:
-ns2.mondomaine.org. 604800 IN A 192.168.50.91+ns0.agence.cub.fr. 604800 IN A 192.168.50.91
 ;; Query time: 0 msec ;; Query time: 0 msec
-;; SERVER: 192.168.50.90#53( 192.168.50.90)+;; SERVER: 172.16.x.10#53( 192.168.50.90)
 ;; WHEN: Mon Feb 03 15:59:38 UTC 2022 ;; WHEN: Mon Feb 03 15:59:38 UTC 2022
 ;; MSG SIZE rcvd: 139 ;; MSG SIZE rcvd: 139
Ligne 357: Ligne 307:
   * Récupération enregistrement SOA d’une zone :    * Récupération enregistrement SOA d’une zone : 
 <code> <code>
-$ dig soa mondomaine.org +$ dig soa agence.cub.fr 
-; <<>> DiG 9.16.22-Debian <<>> soa mondomaine.org+; <<>> DiG 9.16.22-Debian <<>> soa agence.cub.fr
 ;; global options: +cmd ;; global options: +cmd
 ;; Got answer: ;; Got answer:
Ligne 367: Ligne 317:
 ; COOKIE: 8333ab9fd5d0555621ef9a4e5e6123e1312c74e39b52d58e (good) ; COOKIE: 8333ab9fd5d0555621ef9a4e5e6123e1312c74e39b52d58e (good)
 ;; QUESTION SECTION: ;; QUESTION SECTION:
-;mondomaine.org. IN SOA+;agence.cub.fr. IN SOA
 ;; ANSWER SECTION: ;; ANSWER SECTION:
-mondomaine.org. 604800 IN SOA ns1.mondomaine.org+agence.cub.fr. 604800 IN SOA ns0.agence.cub.fr
-root.mondomaine.org. 1 604800 86400 2419200 604800+root.agence.cub.fr. 1 604800 86400 2419200 604800
 ;; ADDITIONAL SECTION: ;; ADDITIONAL SECTION:
-ns1.mondomaine.org. 604800 IN A 192.168.50.90 +ns0.agence.cub.fr. 604800 IN A 192.168.50.90
-ns2.mondomaine.org. 604800 IN A 192.168.50.91+
 ;; Query time: 0 msec ;; Query time: 0 msec
-;; SERVER: 192.168.50.90#53(192.168.50.90)+;; SERVER: 172.16.x.10#53(172.16.x.10)
 ;; WHEN: Mon Feb 03 16:08:01 UTC 2022 ;; WHEN: Mon Feb 03 16:08:01 UTC 2022
 ;; MSG SIZE rcvd: 192 ;; MSG SIZE rcvd: 192
 </code> </code>
-  * Résolution de nom pour www.mondomaine.org +  * Résolution de nom pour www.agence.cub.fr 
 <code> <code>
-$ dig www.mondomaine.org +$ dig www.agence.cub.fr 
-; <<>> DiG 9.16.22-Debian <<>> www.mondomaine.org+; <<>> DiG 9.16.22-Debian <<>> www.agence.cub.fr
 ;; global options: +cmd ;; global options: +cmd
 ;; Got answer: ;; Got answer:
 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20402 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20402
-RSX103 – Cnam Paris+
 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 3 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 3
 ;; OPT PSEUDOSECTION: ;; OPT PSEUDOSECTION:
Ligne 392: Ligne 341:
 ; COOKIE: 95f0892417ed967cf361e6965e6125932ec00d08cde00be4 (good) ; COOKIE: 95f0892417ed967cf361e6965e6125932ec00d08cde00be4 (good)
 ;; QUESTION SECTION: ;; QUESTION SECTION:
-;www.mondomaine.org. IN A+;www.agence.cub.fr. IN A
 ;; ANSWER SECTION: ;; ANSWER SECTION:
-www.mondomaine.org. 604800 IN CNAME srv.mondomaine.org. +www.agence.cub.fr. 604800 IN CNAME srv.mondomaine.org. 
-srv.mondomaine.org. 604800 IN A 192.168.50.100+dhcp.agence.cub.fr. 604800 IN A 192.168.50.100
 ;; ADDITIONAL SECTION: ;; ADDITIONAL SECTION:
-ns1.mondomaine.org. 604800 IN A 192.168.50.90 +ns0.agence.cub.fr. 604800 IN A 192.168.50.90
-ns2.mondomaine.org. 604800 IN A 192.168.50.91+
 ;; Query time: 0 msec ;; Query time: 0 msec
-;; SERVER: 192.168.50.90#53(192.168.50.90)+;; SERVER: 172.16.x.10#53(192.168.50.90)
 ;; WHEN: Mon Feb 03 16:15:15 UTC 2022 ;; WHEN: Mon Feb 03 16:15:15 UTC 2022
 ;; MSG SIZE rcvd: 177 ;; MSG SIZE rcvd: 177
 </code> </code>
-  * Résolution inverse :  +<WRAP center round info
-<code+Comment Utiliser la Commande Dig sous Linux : https://www.hostinger.fr/tutoriels/comment-utiliser-la-commande-dig-sous-linux 
-$ dig ptr 100.50.168.192.in-addr.arpa + 
-; <<>> DiG 9.16.22-Debian <<>> ptr 100.50.168.192.in-addr.arpa +</WRAP>
-;; global options: +cmd +
-;; Got answer: +
-;; ->>HEADER<<opcode: QUERY, status: NOERROR, id: 21895 +
-;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 +
-;; OPT PSEUDOSECTION: +
-; EDNS: version: 0, flags:; udp: 4096 +
-; COOKIE: d55d2ee64d3f84bf9565d5b75e61267cf152fde2ee26b21e (good) +
-;; QUESTION SECTION: +
-;100.50.168.192.in-addr.arpa. IN PTR +
-;; ANSWER SECTION: +
-100.50.168.192.in-addr.arpa. 604800 IN PTR srv.mondomaine.org. +
-;; Query time: 0 msec +
-;; SERVER: 192.168.50.90#53(192.168.50.90) +
-;; WHEN: Mon Feb 03 16:19:08 UTC 2022 +
-;; MSG SIZE rcvd: 149 +
-</code>+
  
 ==== Retour Configurer le service DNS ==== ==== Retour Configurer le service DNS ====
reseau/dns/dnslan.1696491696.txt.gz · Dernière modification: 2023/10/05 09:41 de techer.charles_educ-valadon-limoges.fr