• Skip to content
  • Skip to primary sidebar

_Benjamin _Perrin

Le blog d'un artisan de l'informatique

Header Right

DNS Bind9: ajout d’un serveur secondaire à votre zone.

6 février 2014 by Benj 3 Comments

bind-dns

Ce billet à pour but de détailler l’installation d’un serveur DNS secondaire(slave) pour Bind 9 (sur debian), il est donc nécessaire que vous ayez déjà un serveur primaire(master) qui fonctionne correctement.
On utilisera pour l’exemple le domaine « benjaminperrin.fr », l’IP du serveur primaire sera: 1.2.3.4 et le serveur secondaire aura l’IP 5.6.7.8.
Il faut bien entendu paramétrer votre firewall pour autoriser la communication entre ces deux serveurs en TCP et UDP sur le port 53.

Introduction

Dans /etc/bind/ vous avez les fichiers suivants:

  • named.conf.options : contient les options de base de bind
  • named.conf.local : contient la déclaration des zones
  • db.benjaminperrin.fr: contient les entrées de la zone benjaminperrin.fr

Important: pour que la réplication de zone fonctionne il faut que vos serveur soit à la même heure (voir NTP) et que vous incrémentiez le numéro de série de la zone à chaque modification (dans le fichier db.benjaminperrin.fr) champs « serial », sinon votre slave ne verra pas de différence et la synchro ne se fera pas.

Point sur la sécurité de votre bind

Dans vos fichiers (primaire et secondaire) /etc/bind/named.conf.options ajoutez/modifiez les options comme ci-dessous:

options {
allow-query { any; };
allow-recursion { localnets; };
allow-query-cache { localnets; };
allow-transfer{ none; };
version none;
};

Petite explication des paramètres ci-dessus:

ACLs de base:

  • any: tous les réseaux/IPs
  • localhost: les réseaux/IPs local (127.0.0.1)
  • localnets: les réseaux/IPs local (réseaux/IPs des interfaces du serveur)
  • none: aucun réseaux/IPs

Détails des paramètres:

  • allow-query { any; }; //Tout le monde peut interroger le serveur (necessaire pour serveur publique)
  • allow-recursion { localnets;}; //Autorise les requetes recursive (vers d’autre domaine)
  • allow-query-cache {localnets;};//Autorise les requetes dans le cache
  • allow-transfer{ none; };//Interdit le transfert de zone, peut être modifier dans une zone (nécessaire pour l’ajout d’un serveur secondaire)
  • version none; //Defini la version a de bind a afficher, on met « none » pour ne pas donner cette information

Configuration du serveur primaire

Fichier /etc/bind/named.conf.local ajouter les paramètres suivants à la zone benjaminperrin.fr :

zone « benjaminperrin.fr » {
type master;
file « /etc/bind/db.benjaminperrin.fr »;
allow-transfer{5.6.7.8;};
notify yes;
};

Détails des paramètres:

  • type master; : déclare que ce serveur est le maitre de la zone (serveur primaire)
  • file « /etc/bind/db.benjaminperrin.fr »; spécifie ou se trouve les fichiers de la zone
  • allow-transfer{5.6.7.8;}; autorise le serveur primaire à transférer la zone vers le serveur secondaire
  • notify yes; notifie le serveur secondaire lorsqu’il y a des modifications

Fichier /etc/bind/db.benjaminperrin.fr : il faut indiquer un second enregistrement NS à la zone:

@ IN NS ns2.benjaminperrin.fr.
ns2 IN A 5.6.7.8; //ip du serveur dns secondaire

Configuration du serveur secondaire

Fichier /etc/bind/named.conf.options ajouter le paramètre suivants aux options :

options {
allow-notify { 1.2.3.4.5; }; // Autorise les notifications du serveur primaire
};

Fichier /etc/bind/named.conf.local ajouter les paramètres suivants à la zone benjaminperrin.fr :

zone « benjaminperrin.fr » {
type slave;
file « /etc/bind/db.hodei.net »;
masters {1.2.3.4;};
};

Détails des paramètres:

  • type slave; : déclare que ce serveur est un esclave (serveur secondaire)
  • file « /etc/bind/db.benjaminperrin.fr »; spécifie ou se trouve les fichiers de la zone
  • masters {1.2.3.4;}; Specifie l’adresse du serveur primaire

Droits sur les fichiers

Bind doit pouvoir accéder en lecture et écriture sur les dossiers suivants:

  • /etc/bind/
  • /var/cache/bind/

utilisez chown et chmod pour régler tout cela.

Et regarder dans vos logs vous devriez voir passé la mise à jour de votre zone:

tail -f /var/log/bind/bind.log

Si votre fichier avec vos entrées DNS contient des commentaires sur le serveur primaire, ils ne seront pas répliqués sur le serveur secondaire.

Filed Under: Le web, Systèmes et réseaux Tagged With: Bind9, debian, DNS, master slave, primaire secondaire, réplication, zone

Reader Interactions

Comments

  1. Marc H says

    26 juin 2016 at 22 h 25 min

    Bonjour,
    J’ai configuré comme vous avez indiqué. Le fichier db.cloud.lan a été transféré depuis le primaire mais je pense qu’il n’a pas été transféré comme il faut. Quand j’essaie avec la commande: named-checkzone ns2.cloud.lan, je reçois cette erreur:

    dns-master-load: /etc/bind/db.cloud.lan:1: syntax error
    /etc/bind/db.cloud.lan: find does not end with newline
    zone ns2.cloud.lan/IN: loading from master file /etc/bind/db.cloud.lan failed: syntax error
    zone ns2.cloud.lan/IN: not loaded due to error

    Pourriez-vous m’aider à résoudre ce probème, svp?
    Merci infiniment

    Répondre
    • Benj says

      9 janvier 2017 at 16 h 51 min

      Bonjour,

      Un peu tardivement, mais il semblerait que vous ayez oublié un « ; » a la fin d’une ligne de configuration.

      Bien à vous.

      Répondre

Trackbacks

  1. Debian - Configurer un Serveur DNS Secondaire (BIND9) - Infos'Zici dit :
    25 août 2015 à 11 h 04 min

    […] https://wiki.debian.org/fr/Bind9 http://blog.benjaminperrin.fr/index.php/2014/02/06/dns-bind9-ajout-dun-serveur-secondaire-a-votre-zo… […]

    Répondre

Laisser un commentaire Annuler la réponse

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Primary Sidebar

Pages

  • À propos…
  • Aide mémoire SHELL
  • Aide mémoire SSH
  • Aide mémoire VIM
  • Astuce Putty
  • Note sur Centreon & Nagios

Articles récents

  • Utiliser le RPN Dedibox sur une machine virtuelle VMware
  • Nginx: Proxy Pass conditionné par remote IP
  • Configuration entre nagios3 et pnp4nagios sur Debian Wheezy
  • Monter un partage NFS sur Raspbian
  • DNS Bind9: ajout d’un serveur secondaire à votre zone.
  • Authentification apache / htaccess avec mysql
  • Relai/passerelle SMTP multi-domaines Postfix

Copyright © 2021 · Genesis Sample on Genesis Framework · WordPress · Log in