Ceci est une ancienne révision du document !
Unbound
Le service DNS (Domain Name Service) est un service UDP/IP (et parfois TCP/IP) permettant la correspondance entre un nom de domaine qualifié (FQDN : Fully Qualified Domain Name) et une adresse IP, par exemple www.ubuntu-fr.org = 88.191.119.240. Ainsi, grâce à DNS, il n'est pas nécessaire de se souvenir des adresses IP.
Un serveur qui héberge le service DNS est appelé "serveur de noms".
Ubuntu propose de base Unbound, une alternative a bind9.
Unbound se veut plus simple a configurer que bind9 pour un LAN de petite taille.
Ce guide est destiné aux personnes désireuses d'apprendre à configurer et maintenir un serveur DNS Unbound.
Pré-requis
- Disposer des droits d'administration sur le serveur.
- Disposer d'un réseau local.
- Connaître les bases de TCP/IP.
- Éventuellement disposer d'une connexion à Internet configurée et activée, pour faire les tests.
Installation
Unbound est disponible dans le dépôt principal. Aucun dépôt supplémentaire n'est nécessaire;
Pour installer le serveur Unbound , il suffit d'installer le paquet unbound.
Configuration en serveur cache
Dans cette configuration, Unbound va effectuer les requêtes DNS et mettre les réponses en mémoire cache pour les requêtes à venir.
Cette méthode permet de faire moins de requêtes DNS, et surtout gagner en temps de latence DNS.
Pour la configuration, il faut éditer en tant qu'administrateur un seul fichier /etc/unbound/unbound.conf
Les variables sont nombreuses et relativement bien expliquées en lignes de commentaires.
Voici un exemple de configuration, avec des résolutions de 3 machines du LAN : xbox, freeboxplayer et freebox
server: verbosity: 1 num-threads: 4 #car cpu 4 coeurs interface: 0.0.0.0 do-ip4: yes do-udp: yes do-tcp: yes access-control: 192.168.0.0/24 allow # j'autorise toutes les machines de mon LAN a interroger le dns chroot: "" #pas de chroot par défaut logfile: "/var/log/unbound.log" #ici un fichier est dédié aux logs use-syslog: no #log par défaut dans syslog hide-identity: yes #pas besoin d être verbeux ici hide-version: yes #pas besoin d être verbeux ici harden-glue: yes harden-dnssec-stripped: yes use-caps-for-id: yes # on résout gOogLe.cOm et google.com de la même manière private-domain: "monvlan" #a partir d'ici on définit son propre suffix dns de réseau local local-zone: "monvlan." static local-data: "freebox.monvlan. IN A 192.168.0.254" #résolution sens nom -> adresse local-data: "freeboxplayer.monvlan. IN A 192.168.0.18" local-data: "xbox.monvlan. IN A 192.168.0.50" local-data-ptr: "192.168.0.50 xbox.monvlan" #résolution inverse : adresse -> nom local-data-ptr: "192.168.0.18 freeboxplayer.monvlan" local-data-ptr: "192.168.0.254 freebox.monvlan" python: remote-control: forward-zone: name: "." forward-addr: 212.27.40.240 #serveur DNS de FAI forward-addr: 8.8.8.8 #serveur DNS de google
Pour utiliser les 13 serveurs racines d'internet, supprimer tout ce qu'il y a apres "forward-zone", et ajouter ceci :
root-hints: "/etc/unbound/root.hints"
La dernière version du fichier root.hints est a télécharger ici : ftp://FTP.INTERNIC.NET/domain/named.cache
Cela permet (entre autres) de court-circuiter les serveurs DNS de son FAI
Pour utiliser dnssec*, rajouter aussi cette ligne :
auto-trust-anchor-file: "/etc/unbound/root.key"
Le fichier root.key est fabriqué depuis a partir du fichier délivré par l'IANA disponible ici : https://data.iana.org/root-anchors/root-anchors.xml
Pour l'année 2010/2011 il doit contenir :
. IN DS 19036 8 2 49AAC11D7B6F6446702E54A1607371607A1A41855200FD2CE1CDDE32F24E8FB5
Désinstallation
Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Ne pas oublier de repositionner les DNS de son choix dans /etc/resolv.conf