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
Celui-ci interroge des serveurs DNS faisant autorité, et va répondre aux demandes des requêtes faites par vos applications. Un résolveur DNS local est donc une application qui va se charger de gérer les demandes ou requêtes DNS des applications. Pour être éfficace, les résolveurs DNS gèrent un cache afin de répondre plus rapidement aux requêtes des applications. Si vous souhaitez vous passer du résolveur DNS de votre FAI pour divers raisons, entre autres, avoir une meilleur confidentialité, et gérer en local vos requêtes DNS.
Il y a plusieurs applications opensource qui gèrent efficacement cela.
Unbound par exempleCaracté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
dans le gestionnaire de réseau - onglet DNS Ipv4
dans le 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]]