Skip to content

Serveur DNS maître faisant autorité

Puisque vous allez être amené à modifier des fichiers de configuration présents dans le dossier /etc, vous devez utiliser etckeeper pour faire du versioning.


Terminal window
sudo apt update && sudo apt upgrade

Installez le service Bind 9 et les outils diagnostics DNS

Section titled “Installez le service Bind 9 et les outils diagnostics DNS”
Terminal window
sudo apt install bind9 dnsutils

2. Définir les paramètres réseaux du serveur

Section titled “2. Définir les paramètres réseaux du serveur”
Terminal window
sudoedit /etc/network/interfaces
Terminal window
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug ens192
auto ens192
iface ens192 inet static
address 192.36.3.10
netmask 255.255.255.0
gateway 192.36.3.253

3. Définir le serveur DNS récursif à utiliser

Section titled “3. Définir le serveur DNS récursif à utiliser”
Terminal window
sudoedit /etc/resolv.conf
Terminal window
nameserver 192.168.3.10
nameserver 9.9.9.9

4. Prendre en compte les modifications des paramètres réseaux

Section titled “4. Prendre en compte les modifications des paramètres réseaux”
Terminal window
sudo systemctl restart networking

5. Configurer correctement les fichiers /etc/hostname et /etc/hosts

Section titled “5. Configurer correctement les fichiers /etc/hostname et /etc/hosts”
Terminal window
sudoedit /etc/hostname
Terminal window
ns0
Terminal window
sudoedit /etc/hosts
Terminal window
127.0.0.1 localhost
127.0.1.1 ns0.californie.cub.sioplc.fr ns0
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Redémarrez le serveur pour appliquer le changement de nom

Section titled “Redémarrez le serveur pour appliquer le changement de nom”
Terminal window
sudo shutdown -r now

6. Principes généraux concernant Bind9 et le service DNS

Section titled “6. Principes généraux concernant Bind9 et le service DNS”
  • Créer dans le répertoire /var/named/ ou /var/cache/bind/ les zones adéquates à l’aide d’un fichier db.xxxxxx (ici db.californie.cub.sioplc.fr).
  • Initialiser les zones dans /etc/bind/named.conf.local.
  • Gérer les options globales dans /etc/bind/named.conf.options.
  • Toujours tester la syntaxe avant redémarrage.
Terminal window
dig
host
nslookup # (Windows)
named-checkconf
named-checkzone
systemctl stop|start|restart|reload|status bind9

7. Exemple de configuration d’un serveur DNS maître faisant autorité

Section titled “7. Exemple de configuration d’un serveur DNS maître faisant autorité”
Terminal window
// This is the primary configuration file for the BIND DNS server named.
// If you are just adding zones, please do that in /etc/bind/named.conf.local
include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
include "/etc/bind/named.conf.default-zones";
// Ajout du fichier de paramétrage de la journalisation du service BIND
include "/etc/bind/named.conf.log";

Terminal window
options {
directory "/var/cache/bind";
listen-on port 53 { 127.0.0.1; 172.16.3.10; };
recursion no;
version none;
};

Terminal window
zone "californie.cub.sioplc.fr" {
type master;
allow-transfer { 172.16.3.11; };
file "/var/cache/bind/db.californie.cub.sioplc.fr";
};

/var/cache/bind/db.californie.cub.sioplc.fr

Section titled “/var/cache/bind/db.californie.cub.sioplc.fr”
$TTL 43200 ; 12 heures
californie.cub.sioplc.fr. IN SOA ns0.californie.cub.sioplc.fr. postmaster.californie.cub.sioplc.fr. (
2025110101 ; Serial
1D ; Refresh
1H ; Retry
1W ; Expire
3H ) ; Negative Cache TTL
; Serveurs DNS faisant autorité sur la zone
californie.cub.sioplc.fr. IN NS ns0.californie.cub.sioplc.fr.
californie.cub.sioplc.fr. IN NS ns1.californie.cub.sioplc.fr.
; Correspondances nom ↔ IP
ns0 IN A 172.16.3.10
ns1 IN A 172.16.3.11
www IN A 172.16.3.2
; Alias (CNAME)
extranet IN CNAME www.californie.cub.sioplc.fr.

Pensez à incrémenter le numéro de série à chaque modification.
Exemple : 2025110101, 2025110102, etc.


8. Mise en place d’une journalisation des évènements du service DNS

Section titled “8. Mise en place d’une journalisation des évènements du service DNS”
Terminal window
logging {
channel bind_log {
file "/var/log/bind.log" versions 3 size 100m;
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category default { bind_log; };
};

Création du fichier de log :

Terminal window
sudo touch /var/log/bind.log
sudo chown bind:bind /var/log/bind.log

Autoriser Bind9 à écrire dans le fichier de log

Section titled “Autoriser Bind9 à écrire dans le fichier de log”
Terminal window
sudoedit /etc/apparmor.d/usr.sbin.named

Ajouter :

Terminal window
/var/log/bind.log rw,

Recharger la configuration :

Terminal window
sudo apparmor_parser -r /etc/apparmor.d/usr.sbin.named
sudo systemctl restart apparmor

10. Vérification et redémarrage du service Bind9

Section titled “10. Vérification et redémarrage du service Bind9”
Terminal window
sudo named-checkconf
sudo named-checkzone californie.cub.sioplc.fr /var/cache/bind/db.californie.cub.sioplc.fr
Terminal window
sudo systemctl restart bind9
sudo systemctl status bind9

Terminal window
dig @localhost californie.cub.sioplc.fr
dig @localhost ns0.californie.cub.sioplc.fr
Terminal window
host www.californie.cub.sioplc.fr 127.0.0.1

Le Serveur DNS faisant autorité de l’agence Californie est désormais fonctionnel.