====== Configurer le service DNS récursif les ordinateurs du réseau utilisateurs ====== ===== Présentation ===== Le paquet logiciel **Unbound** permet de configurer un serveur récursif avec Debian. Ce logiciel ne fera que des requêtes DNS de type récursif sans héberger de zone DNS. Ce qui est particulier dans le contexte CUB pour la configuration de ce serveur récursif c'est que le domaine **cub.fr** est est un domaine **fictif**. Le résolveur ne doit pas utiliser son principe de fonctionnement classique qui consiste à solliciter les serveurs racines sur Internet quand une résolution de nom concerne le **domaine cub.fr**. Votre configuration doit indiquer que lorsque le serveur récursif est interrogé pour le nom de domaine **cub.fr**, il doit rediriger la requête vers le serveur DNS présent dans la DMZ du siège (cub.fr) : * Vous utiliserez la notion de **stub-zone** et non de **forward-zone** pour rediriger la requête vers un serveur faisant autorité. * Vous utiliserez la notion de **forward-zone** dans Unbound pour la redirection vers le serveur récursif 8.8.8.8 (ou 1.1.1.1, 9.9.9.9 par exemple) pour tous les autres domaines sur Internet. ===== Installation de UnBound===== **Première étape** : création d'une **nouvelle VM** (conteneur LXC) appelée **dns0** dans votre VLAN Utilisateur avec l'adresse IP 192.168.x.10. Cette VM de **gère pas de zone DNS** mais uniquement le **processus récursif de résolution de nom**. * mise à jour de votre VM # apt update && sudo apt upgrade * Installation de Unbounb # apt install unbound dnsutils * configuration de **Unbound** # nano /etc/unbound/unbound.conf **IMPORTANT** : désactiver la première ligne contenant la directice include (rajouter le caractère #) Avant : include: "/etc/unbound/unbound.conf.d/*.conf" Après : #include: "/etc/unbound/unbound.conf.d/*.conf" * Contenu du fichier de configuration # Unbound configuration file for Debian. # # See the unbound.conf(5) man page. # # See /usr/share/doc/unbound/examples/unbound.conf for a commented # reference config file. # # The following line includes additional configuration files from the # /etc/unbound/unbound.conf.d directory. # include: "/etc/unbound/unbound.conf.d/*.conf" server: interface: 192.168.x.10 interface: 127.0.0.1 access-control: 192.168.x.0/24 allow access-control: 127.0.0.0/8 allow access-control: 0.0.0.0/0 refuse hide-version: yes hide-identity: yes do-ip4: yes logfile: /var/log/unbound/unbound.log verbosity: 2 private-domain: cub.fr. # interroger le serveur DNS du siege stub-zone: name: "cub.fr." stub-addr: 192.168.229.1 # récursivite pour les domaines sur Internet forward-zone: name: "." forward-addr: 8.8.8.8 forward-addr: 8.8.4.4 * Lancement du service # mkdir /var/log/unbound # touch /var/log/unbound/unbound.log # chown -R unbound:unbound /var/log/unbound # systemctl restart unbound ===== Résolution pour le domaine DNS agence.cub.fr de votre agence ===== Une **stub-zone** supplémentaire doit être créée pour gérer la résolution de nom pour votre domaine DNS d'agence. Ajoutez dans le fichier **/etc/unbound/unbound.conf** les lignes suivantes en indiquant l'**adresse IP privée** de votre **serveur DNS** dans **votre VLAN DMZ** : # interroger le serveur DNS ns0.agence.cub.fr de l'agence stub-zone: name: "agence.cub.fr." stub-addr: 172.16.x.10 ===== Résolution pour le sous-domaine DNS lan.agence.cub.fr de votre agence ===== Le sous-domaine **lan.agence.cub.fr** ne concerne que les utilisateurs de votre agence. Il n'a pas à être utilisé pour des résolutions de nom par les autres agences. Une **stub-zone** supplémentaire doit être créée pour gérer la résolution de nom pour votre sous-domaine DNS **lan.agence.cub.fr** de votre agence. Ajoutez dans le fichier **/etc/unbound/unbound.conf** les lignes suivantes en indiquant l'**adresse IP privée** du **serveur DNS** dans **votre VLAN DMZ** qui va gérer le sous-domaine **lan.agence.cub.fr** : # interroger le serveur DNS ns1.lan.agence.cub.fr de votre de l'agence (sous-domaine lan) stub-zone: name: "lan.agence.cub.fr." stub-addr: 172.16.x.y ===== Résolution pour le sous-domaine DNS serveurs.agence.cub.fr de votre agence ===== Le sous-domaine **serveurs.agence.cub.fr** ne concerne que les utilisateurs de votre agence. Il n'a pas à être utilisé pour des résolutions de nom par les autres agences. Une **stub-zone** supplémentaire doit être créée pour gérer la résolution de nom pour votre le sous-domaine DNS **serveurs.agence.cub.fr** de votre agence. Ajoutez dans le fichier **/etc/unbound/unbound.conf** les lignes suivantes en indiquant l'**adresse IP privée** du **serveur DNS** dans **votre VLAN DMZ** qui va gérer le sous-domaine **serveurs.agence.cub.fr** : # interroger le serveur DNS ns2.serveurs.agence.cub.fr de votre agence (sous-domaine serveurs) stub-zone: name: "serveurs.agence.cub.fr." stub-addr: 172.16.x.z ===== Modification de la configuration de tous les clients de votre agence===== 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) : root@ns0:~# nano /etc/resolv.conf domain agence.cub.fr search agence.cub.fr nameserver 192.168.x.10 === Vérifiez ensuite que la résolution de nom fonctionne === **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) : 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 À partir de n’importe quel Debian ou Ubuntu : systemctl restart networking # dig www.ac-limoges.fr # dig www.cub.fr ==== Retour Configurer le service DNS ==== * [[:reseau:dns:accueil|Configurer le service DNS]]