Chapitre 2. Mise en place d'un serveur DNS non lié
Le serveur DNS unbound
est un résolveur DNS validant, récursif et de mise en cache. En outre, unbound
met l'accent sur la sécurité et a, par exemple, activé par défaut les extensions de sécurité du système de noms de domaine (DNSSEC).
2.1. Configuration d'Unbound en tant que serveur DNS de mise en cache
Par défaut, le service DNS unbound
résout et met en cache les recherches réussies et celles qui ont échoué. Le service répond ensuite aux requêtes portant sur les mêmes enregistrements à partir de son cache.
Procédure
Installez le paquetage
unbound
:# dnf install unbound
Modifiez le fichier
/etc/unbound/unbound.conf
et apportez les modifications suivantes à la clauseserver
:Ajoutez les paramètres
interface
pour configurer les adresses IP sur lesquelles le serviceunbound
écoute les requêtes, par exemple :interface: 127.0.0.1 interface: 192.0.2.1 interface: 2001:db8:1::1
Avec ces paramètres,
unbound
n'écoute que les adresses IPv4 et IPv6 spécifiées.Le fait de limiter les interfaces aux interfaces requises empêche les clients de réseaux non autorisés, tels que l'internet, d'envoyer des requêtes à ce serveur DNS.
Ajoutez les paramètres
access-control
pour configurer les sous-réseaux à partir desquels les clients peuvent interroger le service DNS, par exemple :access-control: 127.0.0.0/8 allow access-control: 192.0.2.0/24 allow access-control: 2001:db8:1::/64 allow
Créer des clés privées et des certificats pour gérer à distance le service
unbound
:# systemctl restart unbound-keygen
Si vous sautez cette étape, la vérification de la configuration à l'étape suivante signalera les fichiers manquants. Cependant, le service
unbound
crée automatiquement les fichiers s'ils sont manquants.Vérifier le fichier de configuration :
# unbound-checkconf unbound-checkconf: no errors in /etc/unbound/unbound.conf
Mettez à jour les règles firewalld pour autoriser le trafic DNS entrant :
# firewall-cmd --permanent --add-service=dns # firewall-cmd --reload
Activez et démarrez le service
unbound
:# systemctl enable --now unbound
Vérification
Demander au serveur DNS
unbound
écoutant sur l'interfacelocalhost
de résoudre un domaine :# dig @localhost www.example.com ... www.example.com. 86400 IN A 198.51.100.34 ;; Query time: 330 msec ...
Après avoir interrogé un enregistrement pour la première fois,
unbound
ajoute l'entrée à son cache.Répétez la requête précédente :
# dig @localhost www.example.com ... www.example.com. 85332 IN A 198.51.100.34 ;; Query time: 1 msec ...
Grâce à l'entrée mise en cache, les requêtes ultérieures pour le même enregistrement sont nettement plus rapides jusqu'à l'expiration de l'entrée.
Prochaines étapes
Configurez les clients de votre réseau pour qu'ils utilisent ce serveur DNS. Par exemple, utilisez l'utilitaire
nmcli
pour définir l'IP du serveur DNS dans un profil de connexion NetworkManager :# nmcli connection modify Example_Connection ipv4.dns 192.0.2.1 # nmcli connection modify Example_Connection ipv6.dns 2001:db8:1::1
Ressources supplémentaires
-
unbound.conf(5)
page de manuel