Table des matières
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
- 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 # La ligne suivante à ajouter car le domaine est local et il ne passe pas réellement par la racine domain-insecure: 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 pour vider le cache pour toutes les zones root@resolvDNSGaleway:~# unbound-control flush_zone . ou root@resolvDNSGaleway:~# unbound-control reload
À partir de n’importe quel Debian ou Ubuntu :
systemd-resolve –flush-caches
# dig www.ac-limoges.fr # dig www.cub.fr