Serveur DNS maître faisant autorité
Attention
Section titled “Attention”Puisque vous allez être amené à modifier des fichiers de configuration présents dans le dossier /etc, vous devez utiliser etckeeper pour faire du versioning.
1. Vérification préalable
Section titled “1. Vérification préalable”Mettez à jour votre serveur
Section titled “Mettez à jour votre serveur”sudo apt update && sudo apt upgradeInstallez le service Bind 9 et les outils diagnostics DNS
Section titled “Installez le service Bind 9 et les outils diagnostics DNS”sudo apt install bind9 dnsutils2. Définir les paramètres réseaux du serveur
Section titled “2. Définir les paramètres réseaux du serveur”sudoedit /etc/network/interfaces# 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 interfaceauto loiface lo inet loopback
# The primary network interfaceallow-hotplug ens192auto ens192iface ens192 inet staticaddress 192.36.3.10netmask 255.255.255.0gateway 192.36.3.2533. Définir le serveur DNS récursif à utiliser
Section titled “3. Définir le serveur DNS récursif à utiliser”sudoedit /etc/resolv.confnameserver 192.168.3.10nameserver 9.9.9.94. Prendre en compte les modifications des paramètres réseaux
Section titled “4. Prendre en compte les modifications des paramètres réseaux”sudo systemctl restart networking5. Configurer correctement les fichiers /etc/hostname et /etc/hosts
Section titled “5. Configurer correctement les fichiers /etc/hostname et /etc/hosts”/etc/hostname
Section titled “/etc/hostname”sudoedit /etc/hostnamens0/etc/hosts
Section titled “/etc/hosts”sudoedit /etc/hosts127.0.0.1 localhost127.0.1.1 ns0.californie.cub.sioplc.fr ns0
# The following lines are desirable for IPv6 capable hosts::1 localhost ip6-localhost ip6-loopbackff02::1 ip6-allnodesff02::2 ip6-allroutersRedémarrez le serveur pour appliquer le changement de nom
Section titled “Redémarrez le serveur pour appliquer le changement de nom”sudo shutdown -r now6. 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 fichierdb.xxxxxx(icidb.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.
Commandes utiles
Section titled “Commandes utiles”dighostnslookup # (Windows)named-checkconfnamed-checkzonesystemctl stop|start|restart|reload|status bind97. 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é”/etc/bind/named.conf
Section titled “/etc/bind/named.conf”// 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 BINDinclude "/etc/bind/named.conf.log";/etc/bind/named.conf.options
Section titled “/etc/bind/named.conf.options”options { directory "/var/cache/bind";
listen-on port 53 { 127.0.0.1; 172.16.3.10; };
recursion no;
version none;};/etc/bind/named.conf.local
Section titled “/etc/bind/named.conf.local”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 zonecalifornie.cub.sioplc.fr. IN NS ns0.californie.cub.sioplc.fr.californie.cub.sioplc.fr. IN NS ns1.californie.cub.sioplc.fr.
; Correspondances nom ↔ IPns0 IN A 172.16.3.10ns1 IN A 172.16.3.11www 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”/etc/bind/named.conf.log
Section titled “/etc/bind/named.conf.log”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 :
sudo touch /var/log/bind.logsudo chown bind:bind /var/log/bind.log9. Sécurisation avec AppArmor
Section titled “9. Sécurisation avec AppArmor”Autoriser Bind9 à écrire dans le fichier de log
Section titled “Autoriser Bind9 à écrire dans le fichier de log”sudoedit /etc/apparmor.d/usr.sbin.namedAjouter :
/var/log/bind.log rw,Recharger la configuration :
sudo apparmor_parser -r /etc/apparmor.d/usr.sbin.namedsudo systemctl restart apparmor10. Vérification et redémarrage du service Bind9
Section titled “10. Vérification et redémarrage du service Bind9”Vérification de la syntaxe
Section titled “Vérification de la syntaxe”sudo named-checkconfsudo named-checkzone californie.cub.sioplc.fr /var/cache/bind/db.californie.cub.sioplc.frRedémarrage du service
Section titled “Redémarrage du service”sudo systemctl restart bind9sudo systemctl status bind911. Tests DNS
Section titled “11. Tests DNS”Avec dig
Section titled “Avec dig”dig @localhost californie.cub.sioplc.frdig @localhost ns0.californie.cub.sioplc.frAvec host
Section titled “Avec host”host www.californie.cub.sioplc.fr 127.0.0.1Le Serveur DNS faisant autorité de l’agence Californie est désormais fonctionnel.