Unbound
Unbound est un résolveur DNS validateur, cache, récursif sous service UDP/IP, parfois TCP/IP, permettant la correspondance entre un nom de domaine qualifié et une adresse IP
Vendor: nlnetlabs.nl
Developer: nlnetlabs
License: the BSD license
Web: https://nlnetlabs.nl/projects/unbound/about/
Sommaire
- 1 INSTALLER UNBOUND SUR OPENSUSE
- 2 Caractéristiques
- 2.1 Télécharger Unbound
- 2.2 Téléchargement les serveurs racines
- 2.3 Téléchargement fichier Antipub dans Unbound
- 2.4 Changement de propriétaire du fichier unbound_add_servers
- 2.5 Mise a jour par crontab
- 2.6 Génération des clefs TLS
- 2.7 Configuration réseau pour la prise en compte d'unbound
- 2.8 Désactivation Dnsmasq
- 2.9 Rechargement du gestionnaire de réseau
- 2.10 Configuration du fichier conf d'Unbound
- 2.11 Finalisation paramètre système
- 2.12 Divers Tests de Fonctionnement unbound
INSTALLER UNBOUND SUR OPENSUSE
Préambule
La majeure partie des connexions sur Internet débutent par une requête DNS. Cette requête est envoyée à un résolveur DNS, qui peut être celui de votre fournisseur d'accès Internet (FAI) ou un résolveur local.
Fonctionnement :Le résolveur DNS interroge des serveurs DNS faisant autorité, qui lui fournissent la réponse à la requête. Cette réponse est ensuite transmise à l'application qui a effectué la requête, par exemple un navigateur web.
Un résolveur DNS local est donc une application qui se charge de gérer les demandes DNS des applications. Il est chargé de traduire les noms de domaine en adresses IP, et vice versa.
Pour être efficace, les résolveurs DNS utilisent un cache. Le cache permet de stocker les réponses aux requêtes DNS les plus courantes, afin de pouvoir y répondre plus rapidement.
Utiliser un résolveur DNS local
Il existe plusieurs raisons de vouloir utiliser un résolveur DNS local. Par exemple, cela peut permettre d'améliorer la confidentialité, car les requêtes DNS ne transitent pas par le FAI.
Il existe également plusieurs applications open source qui permettent de gérer un résolveur DNS local. Parmi ces applications, on peut citer Unbound, Knot DNS ou Dnsmasq..
Conclusion
Le résolveur DNS est un composant essentiel d'Internet. Il est chargé de traduire les noms de domaine en adresses IP, et vice versa.
Il existe plusieurs raisons de vouloir utiliser un résolveur DNS local. Par exemple, cela peut permettre d'améliorer la confidentialité et les performances.Caractéristiques
- résolveur DNS.
- mise en cache récursif et validant.
- prise en charge des serveurs racine.
- DNS sur TLS.
- DNS Qname minimisation.
- traffic IPv4, IPv6.
- Protocol UDP & Configurable TCP.
- [DoH] DNS-over-https.
- sécurité DNSSEC.
- compatible POSIX et les Unix-like.
- fonctionne sur FreeBSD, OpenBSD, NetBSD, OS X,Linux, Microsoft Windows.
- bibliothèque d'API client intégrante à l'architecture.
- logiciel libre et open source.
- monitoring avec Munin, Cacti et Zabbix
- Code C, Python et Java
- pas configurable dans yast
Stéphane Bortzmeyer (ingénieur en sécurité, notamment du DNS)
- REDIRECTION [[1]]
Télécharger Unbound
su
# zypper in unbound
- REDIRECTION [[2]]
Téléchargement les serveurs racines
# wget ftp://FTP.INTERNIC.NET/domain/named.cache -O /etc/unbound/root.hints
Téléchargement fichier Antipub dans Unbound
# wget -q -O- 'http://pgl.yoyo.org/adservers/serverlist.php?hostformat=unbound&showintro=0&mimetype=plaintext' > /etc/unbound/local.d/unbound_add_servers
Changement de propriétaire du fichier unbound_add_servers
# chown unbound:unbound /etc/unbound/local.d/unbound_add_servers
Mise a jour par crontab
(serveurs racines, serverlist antipub)
# nano /etc/crontab 00 5 * * 1 wget ftp://ftp.internic.net/domain/named.cache -O /etc/unbound/root.hints && systemctl restart unbound >/dev/null 2>&1 59 4 * * 1 wget -q -O- 'http://pgl.yoyo.org/adservers/serverlist.php?hostformat=unbound&showintro=0&mimetype=plaintext' > /etc/unbound/local.d/unbound_add_servers && systemctl restart unbound >/dev/null 2>&1
Génération des clefs TLS
# unbound-control-setup
Configuration réseau pour la prise en compte d'unbound
Gestionnaire de réseau - onglet DNS Ipv4
Ajoutez IP de votre serveur DNS
Ajoutez votre passerelle Box
Gestionnaire de réseau - onglet DNS Ipv6 désactivé
dans le gestionnaire de réseau - onglet DNS Ipv6 activé
Désactivation Dnsmasq
# sed -i 's/dns=dnsmasq/#dns=dnsmasq/g' /etc/NetworkManager/NetworkManager.conf
Rechargement du gestionnaire de réseau
# systemctl restart NetworkManager
Configuration du fichier conf d'Unbound
- Arrêt du service unbound
# systemctl stop unbound
- Téléchargement le fichier unbound.conf
- REDIRECTION [[3]]
- Edition du fichier conf d'Unbound
# gedit /etc/unbound/unbound.conf
Copier/coller ## a adaptation au choix selon les options d'Unbound
- Une configuration commentée
- ) qname-minimisation = anomyniser les requètes dns
- ) fichier antipub = bloque le maximum de pub, spam...
- ) dnssec = sécurité des requètes dns
- ) optimiser pour cpu 4 core
- ) plages ports autorisées et interdites
- ) paramètres anonymisation activés
Finalisation paramètre système
- Création fichier log et droits
# touch /var/log/unbound.log
# chmod 755 /var/log/unbound.log
Activation des signatures numériques de DNSSEC se fait manuellement et non plus automatiquement
a) Création du répertoire unbound
# mkdir /var/lib/unbound
b) Changement de propriétaire du répertoire
# chown unbound unbound
c) Création signature numérique DNSSEC
# sudo -u unbound unbound-anchor -v -a /var/lib/unbound/root.key
- Fin de la Signature numérique manuelle de DNSSEC
- Supprimer cache-DNS local
# rcnscd restart
- Rechargement Unbound
# systemctl restart unbound
- Rechargement Networkmanager en mode graphique
- Lancement unbound au démarrage
# systemctl enable unbound
- Voir le status d'unbound et les erreurs
#systemctl status unbound
Divers Tests de Fonctionnement unbound
- Vérification des erreurs du fichier configuration
# unbound-checkconf /etc/unbound/unbound.conf
- Vérification DNSSEC
# dig +nodnssec +short TXT qnamemintest.internet.nl
- Vérification temps de réponse résolveur présence du drapeau 'ad' OBLIGATOIRE
# dig com. SOA +dnssec
- Vérification Test TLS (Réponse : (secure) devra apparaitre)
# unbound-host com. -f /var/lib/unbound/root.key -v # unbound-host dnssec.cz -f /var/lib/unbound/root.key -v # unbound-host dnssec.cz -C /etc/unbound/unbound.conf -v
- Test visuel graphique dans votre navigateur
Dans navigateur web sites suivants et vérification :
- Site : http://www.dnssec.cz/ (clé verte=OK)
- Site : https://en.internet.nl/connection (Réponse : DNSSEC validation=OK)
- Vérification boucle locale DNS
# nmcli dev show | grep DNS
- Vérification unique résolveur dns dans le système (uniquement résolveur Undound)
# lsof -i :53
- Vérification port d'écoute unbound tcp & udp
# ss -laputen | grep unbound
- Analyse stats d'Unbound
# unbound-control stats
Pour connaitres les DNS de votre FAI
- REDIRECTION [[4]]