Comment configurer BIND en tant que serveur DNS de réseau privé sur Ubuntu 14.04

introduction

Une partie importante de la gestion de la configuration et de l’infrastructure de serveur consiste à maintenir un moyen simple de rechercher les interfaces réseau et les adresses IP par leur nom en configurant un système de noms de domaine (DNS) approprié. L'utilisation de noms de domaine complets (FQDN), au lieu d'adresses IP, pour spécifier les adresses réseau facilite la configuration des services et des applications et augmente la maintenabilité des fichiers de configuration. Configurer votre propre DNS pour votre réseau privé est un excellent moyen d’améliorer la gestion de vos serveurs.

Dans ce didacticiel, nous verrons comment configurer un serveur DNS interne à l'aide du logiciel de serveur de noms BIND (BIND9) sous Ubuntu 14.04, que vos serveurs virtuels privés (VPS) peuvent utiliser pour résoudre les noms d'hôte privés et les adresses IP privées. adresses. Cela fournit un moyen central de gérer vos noms d'hôte internes et vos adresses IP privées, ce qui est indispensable lorsque votre environnement s'étend à plusieurs hôtes.

La version CentOS de ce tutoriel peut être trouvéehere.

Conditions préalables

Pour compléter ce tutoriel, vous aurez besoin des éléments suivants:

  • Certains serveurs qui s'exécutent dans le même centre de données et ontprivate networking enabled

  • Un nouveau VPS pour servir de serveur DNS principal,ns1

  • Facultatif: un nouveau VPS pour servir de serveur DNS secondaire,ns2

  • Accès root à tous les éléments ci-dessus (steps 1-4 here)

Si vous n'êtes pas familier avec les concepts DNS, il est recommandé de lire au moins les trois premières parties de nosIntroduction to Managing DNS.

Exemple d'hôtes

Par exemple, nous supposerons ce qui suit:

  • Nous avons deux VPS existants appelés "hôte1" et "hôte2"

  • Les deux VPS existent dans le centre de données nyc3

  • La mise en réseau privée des deux VPS est activée (et se trouve sur le sous-réseau 10.128.0.0/16)

  • Les deux VPS sont en quelque sorte liés à notre application Web qui tourne sur «exemple.com»

Avec ces hypothèses, nous décidons qu’il est judicieux d’utiliser un schéma de dénomination qui utilise «nyc3.example.com» pour faire référence à notre sous-réseau ou zone privé. Par conséquent, le nom de domaine complet (FQDN) privé dehost1 sera "host1.nyc3.example.com". Reportez-vous au tableau suivant les détails pertinents:

Host Role FQDN privé Adresse IP privée

hôte1

Hôte générique 1

host1.nyc3.example.com

10.128.100.101

host2

Hôte générique 2

host2.nyc3.example.com

10.128.200.102

Note: Votre configuration existante sera différente, mais les exemples de noms et d'adresses IP seront utilisés pour montrer comment configurer un serveur DNS pour fournir un DNS interne fonctionnel. Vous devriez pouvoir adapter facilement cette configuration à votre propre environnement en remplaçant les noms d’hôte et les adresses IP privées par les vôtres. Il n’est pas nécessaire d’utiliser le nom de région du centre de données dans votre schéma de dénomination, mais nous l’utilisons ici pour indiquer que ces hôtes appartiennent au réseau privé d’un centre de données particulier. Si vous utilisez plusieurs centres de données, vous pouvez configurer un DNS interne dans chaque centre de données respectif.

Notre objectif

À la fin de ce tutoriel, nous aurons un serveur DNS principal,ns1, et éventuellement un serveur DNS secondaire,ns2, qui servira de sauvegarde.

Voici un tableau avec des exemples de noms et d’adresses IP:

Host Role FQDN privé Adresse IP privée

ns1

Serveur DNS primaire

ns1.nyc3.example.com

10.128.10.11

ns2

Serveur DNS secondaire

ns2.nyc3.example.com

10.128.20.12

Commençons par installer notre serveur DNS principal, ns1.

Installer BIND sur les serveurs DNS

Note: Le texte en surbrillance dansred est important! Il sera souvent utilisé pour indiquer quelque chose qui doit être remplacé par vos propres paramètres ou qu'il devrait être modifié ou ajouté à un fichier de configuration. Par exemple, si vous voyez quelque chose commehost1.nyc3.example.com, remplacez-le par le FQDN de votre propre serveur. De même, si vous voyezhost1_private_IP, remplacez-le par l'adresse IP privée de votre propre serveur.

Sur les deux serveurs DNS,ns1 etns2, mettez à jour apt:

sudo apt-get update

Maintenant, installez BIND:

sudo apt-get install bind9 bind9utils bind9-doc

Mode IPv4

Avant de continuer, définissons BIND en mode IPv4. Sur les deux serveurs, modifiez le fichier de paramètres de servicebind9:

sudo vi /etc/default/bind9

Ajoutez «-4» à la variableOPTIONS. Cela devrait ressembler à ceci:

/etc/default/bind9

OPTIONS="-4 -u bind"

Sauvegarder et quitter.

Maintenant que BIND est installé, configurons le serveur DNS principal.

Configurer le serveur DNS principal

La configuration de BIND se compose de plusieurs fichiers, qui sont inclus à partir du fichier de configuration principal,named.conf. Ces noms de fichiers commencent par «nommé» car il s'agit du nom du processus exécuté par BIND. Nous allons commencer par configurer le fichier d'options.

Configurer le fichier d'options

Surns1, ouvrez le fichiernamed.conf.options pour le modifier:

sudo vi /etc/bind/named.conf.options

Au-dessus du blocoptions existant, créez un nouveau bloc ACL appelé «confiance». C’est là que nous définirons la liste des clients à partir desquels nous autoriserons les requêtes DNS récursives (c.-à-d. vos serveurs situés dans le même centre de données que ns1). En utilisant notre exemple d'adresses IP privées, nous ajouteronsns1,ns2,host1 ethost2 à notre liste de clients de confiance:

/etc/bind/named.conf.options — 1 of 3

acl "trusted" {
        10.128.10.11;    # ns1 - can be set to localhost
        10.128.20.12;    # ns2
        10.128.100.101;  # host1
        10.128.200.102;  # host2
};

Maintenant que nous avons notre liste de clients DNS de confiance, nous voudrons éditer le blocoptions. Actuellement, le début du bloc se présente comme suit:

/etc/bind/named.conf.options — 2 of 3

options {
        directory "/var/cache/bind";
...
}

Sous la directivedirectory, ajoutez les lignes de configuration en surbrillance (et remplacez-les par l'adresse IP appropriée dens1) pour que cela ressemble à ceci:

/etc/bind/named.conf.options — 3 of 3

options {
        directory "/var/cache/bind";

        recursion yes;                 # enables resursive queries
        allow-recursion { trusted; };  # allows recursive queries from "trusted" clients
        listen-on { 10.128.10.11; };   # ns1 private IP address - listen on private network only
        allow-transfer { none; };      # disable zone transfers by default

        forwarders {
                8.8.8.8;
                8.8.4.4;
        };
...
};

Maintenant, enregistrez et quitteznamed.conf.options. La configuration ci-dessus spécifie que seuls vos propres serveurs (les «dignes de confiance») pourront interroger votre serveur DNS.

Ensuite, nous allons configurer le fichier local, pour spécifier nos zones DNS.

Configurer le fichier local

Surns1, ouvrez le fichiernamed.conf.local pour le modifier:

sudo vi /etc/bind/named.conf.local

Mis à part quelques commentaires, le fichier doit être vide. Ici, nous allons spécifier nos zones avant et arrière.

Ajoutez la zone suivante avec les lignes suivantes (remplacez le nom de la zone par le vôtre):

/etc/bind/named.conf.local — 1 of 2

zone "nyc3.example.com" {
    type master;
    file "/etc/bind/zones/db.nyc3.example.com"; # zone file path
    allow-transfer { 10.128.20.12; };         # ns2 private IP address - secondary
};

En supposant que notre sous-réseau privé est10.128.0.0/16, ajoutez la zone inverse avec les lignes suivantes (notez que notre nom de zone inverse commence par «128.10» qui est l'inversion d'octet de «10.128»):

/etc/bind/named.conf.local — 2 of 2

zone "128.10.in-addr.arpa" {
    type master;
    file "/etc/bind/zones/db.10.128";  # 10.128.0.0/16 subnet
    allow-transfer { 10.128.20.12; };  # ns2 private IP address - secondary
};

Si vos serveurs couvrent plusieurs sous-réseaux privés mais se trouvent dans le même centre de données, veillez à spécifier une zone et un fichier de zone supplémentaires pour chaque sous-réseau distinct. Lorsque vous avez terminé d'ajouter toutes les zones souhaitées, enregistrez et quittez le fichiernamed.conf.local.

Maintenant que nos zones sont spécifiées dans BIND, nous devons créer les fichiers de zone avant et arrière correspondants.

Créer un fichier de zone de transfert

Le fichier de zone de transfert permet de définir les enregistrements DNS pour les recherches DNS directes. Autrement dit, lorsque le DNS reçoit une requête de nom, "host1.nyc3.example.com" par exemple, il cherchera dans le fichier de zone de transfert pour résoudre l'adresse IP privée correspondante dehost1.

Créons le répertoire où nos fichiers de zone résideront. Selon notre configuration denamed.conf.local, cet emplacement doit être/etc/bind/zones:

sudo mkdir /etc/bind/zones

Nous baserons notre fichier de zone avant sur l'exemple de fichier de zonedb.local. Copiez-le à l'emplacement approprié à l'aide des commandes suivantes:

cd /etc/bind/zones
sudo cp ../db.local ./db.nyc3.example.com

Maintenant, éditons notre fichier de zone de transfert:

sudo vi /etc/bind/zones/db.nyc3.example.com

Au début, cela ressemblera à quelque chose comme ceci:

/etc/bind/zones/db.nyc3.example.com — original

$TTL    604800
@       IN      SOA     localhost. root.localhost. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      localhost.      ; delete this line
@       IN      A       127.0.0.1       ; delete this line
@       IN      AAAA    ::1             ; delete this line

Tout d'abord, vous voudrez éditer l'enregistrement SOA. Remplacez le premier "localhost" par le nom de domaine complet dens1, puis remplacez "root.localhost" par "admin.nyc3.example.com". De plus, chaque fois que vous modifiez un fichier de zone, vous devez incrémenter la valeur deserial avant de redémarrer le processus denamed - nous l'incrémenterons à «3». Ça devrait ressembler a quelque chose comme ca:

/etc/bind/zones/db.nyc3.example.com — updated 1 of 3

@       IN      SOA     ns1.nyc3.example.com. admin.nyc3.example.com. (
                              3         ; Serial

Supprimez maintenant les trois enregistrements à la fin du fichier (après l’enregistrement SOA). Si vous ne savez pas quelles lignes supprimer, celles-ci sont marquées d’un commentaire «supprimer cette ligne» ci-dessus.

À la fin du fichier, ajoutez vos enregistrements de serveur de noms avec les lignes suivantes (remplacez les noms par vos propres noms). Notez que la deuxième colonne spécifie qu'il s'agit d'enregistrements «NS»:

/etc/bind/zones/db.nyc3.example.com — updated 2 of 3

; name servers - NS records
    IN      NS      ns1.nyc3.example.com.
    IN      NS      ns2.nyc3.example.com.

Ajoutez ensuite les enregistrements A pour vos hôtes appartenant à cette zone. Cela inclut tous les serveurs dont nous voulons terminer le nom avec “.nyc3.example.com” (remplacez les noms et les adresses IP privées). En utilisant nos exemples de noms et d'adresses IP privées, nous ajouterons des enregistrements A pourns1,ns2,host1 ethost2 comme ceci:

/etc/bind/zones/db.nyc3.example.com — updated 3 of 3

; name servers - A records
ns1.nyc3.example.com.          IN      A       10.128.10.11
ns2.nyc3.example.com.          IN      A       10.128.20.12

; 10.128.0.0/16 - A records
host1.nyc3.example.com.        IN      A      10.128.100.101
host2.nyc3.example.com.        IN      A      10.128.200.102

Enregistrez et quittez le fichierdb.nyc3.example.com.

Notre dernier exemple de fichier de zone de transfert ressemble à ceci:

/etc/bind/zones/db.nyc3.example.com — updated

$TTL    604800
@       IN      SOA     ns1.nyc3.example.com. admin.nyc3.example.com. (
                  3       ; Serial
             604800     ; Refresh
              86400     ; Retry
            2419200     ; Expire
             604800 )   ; Negative Cache TTL
;
; name servers - NS records
     IN      NS      ns1.nyc3.example.com.
     IN      NS      ns2.nyc3.example.com.

; name servers - A records
ns1.nyc3.example.com.          IN      A       10.128.10.11
ns2.nyc3.example.com.          IN      A       10.128.20.12

; 10.128.0.0/16 - A records
host1.nyc3.example.com.        IN      A      10.128.100.101
host2.nyc3.example.com.        IN      A      10.128.200.102

Passons maintenant au (x) fichier (s) de zone inversée.

Créer un fichier de zone inversée

Les fichiers de zone inversée sont ceux où nous définissons les enregistrements DNS PTR pour les recherches DNS inversées. Ainsi, lorsque le DNS reçoit une requête par adresse IP, par exemple "10.128.100.101", il recherche dans le ou les fichiers de zone inversée le nom de domaine complet correspondant, "host1.nyc3.example.com". .

Surns1, pour chaque zone inverse spécifiée dans le fichiernamed.conf.local, créez un fichier de zone inverse. Nous baserons nos fichiers de zone inversée sur le fichier de zone échantillondb.127. Copiez-le à l'emplacement approprié à l'aide des commandes suivantes (en remplaçant le nom du fichier de destination afin qu'il corresponde à votre définition de zone inversée):

cd /etc/bind/zones
sudo cp ../db.127 ./db.10.128

Editez le fichier de zone inverse qui correspond à la ou aux zones inversées définies ennamed.conf.local:

sudo vi /etc/bind/zones/db.10.128

Au début, cela ressemblera à quelque chose comme ceci:

/etc/bind/zones/db.10.128 — original

$TTL    604800
@       IN      SOA     localhost. root.localhost. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      localhost.      ; delete this line
1.0.0   IN      PTR     localhost.      ; delete this line

De la même manière que le fichier de zone avant, vous voudrez éditer l'enregistrement SOA et incrémenter la valeur deserial. Ça devrait ressembler a quelque chose comme ca:

/etc/bind/zones/db.10.128 — updated 1 of 3

@       IN      SOA     ns1.nyc3.example.com. admin.nyc3.example.com. (
                              3         ; Serial

Supprimez maintenant les deux enregistrements à la fin du fichier (après l’enregistrement SOA). Si vous ne savez pas quelles lignes supprimer, celles-ci sont marquées d’un commentaire «supprimer cette ligne» ci-dessus.

À la fin du fichier, ajoutez vos enregistrements de serveur de noms avec les lignes suivantes (remplacez les noms par vos propres noms). Notez que la deuxième colonne spécifie qu'il s'agit d'enregistrements «NS»:

/etc/bind/zones/db.10.128 — updated 2 of 3

; name servers - NS records
      IN      NS      ns1.nyc3.example.com.
      IN      NS      ns2.nyc3.example.com.

Ajoutez ensuite les enregistrementsPTR pour tous vos serveurs dont les adresses IP se trouvent sur le sous-réseau du fichier de zone que vous modifiez. Dans notre exemple, cela inclut tous nos hôtes car ils sont tous sur le sous-réseau 10.128.0.0/16. Notez que la première colonne est composée des deux derniers octets des adresses IP privées de vos serveurs, dans l’ordre inverse. Assurez-vous de substituer des noms et des adresses IP privées pour correspondre à vos serveurs:

/etc/bind/zones/db.10.128 — updated 3 of 3

; PTR Records
11.10   IN      PTR     ns1.nyc3.example.com.    ; 10.128.10.11
12.20   IN      PTR     ns2.nyc3.example.com.    ; 10.128.20.12
101.100 IN      PTR     host1.nyc3.example.com.  ; 10.128.100.101
102.200 IN      PTR     host2.nyc3.example.com.  ; 10.128.200.102

Enregistrez et quittez le fichier de zone inversée (répétez cette section si vous devez ajouter d'autres fichiers de zone inversée).

Notre dernier exemple de fichier de zone inversée ressemble à ce qui suit:

/etc/bind/zones/db.10.128 — updated

$TTL    604800
@       IN      SOA     nyc3.example.com. admin.nyc3.example.com. (
                              3         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
; name servers
      IN      NS      ns1.nyc3.example.com.
      IN      NS      ns2.nyc3.example.com.

; PTR Records
11.10   IN      PTR     ns1.nyc3.example.com.    ; 10.128.10.11
12.20   IN      PTR     ns2.nyc3.example.com.    ; 10.128.20.12
101.100 IN      PTR     host1.nyc3.example.com.  ; 10.128.100.101
102.200 IN      PTR     host2.nyc3.example.com.  ; 10.128.200.102

Vérifier la syntaxe de configuration de BIND

Exécutez la commande suivante pour vérifier la syntaxe des fichiersnamed.conf*:

sudo named-checkconf

Si vos fichiers de configuration nommés ne comportent aucune erreur de syntaxe, vous revenez à l'invite de votre shell et ne voyez aucun message d'erreur. S'il y a des problèmes avec vos fichiers de configuration, passez en revue le message d'erreur et la sectionConfigure Primary DNS Server, puis réessayeznamed-checkconf.

La commandenamed-checkzone peut être utilisée pour vérifier l'exactitude de vos fichiers de zone. Son premier argument spécifie un nom de zone et le second argument spécifie le fichier de zone correspondant, qui sont tous deux définis dansnamed.conf.local.

Par exemple, pour vérifier la configuration de la zone de transfert «nyc3.example.com», exécutez la commande suivante (modifiez les noms pour qu'ils correspondent à votre zone de transfert et à votre fichier):

sudo named-checkzone nyc3.example.com db.nyc3.example.com

Et pour vérifier la configuration de la zone inversée «128.10.in-addr.arpa», exécutez la commande suivante (modifiez les nombres pour qu'ils correspondent à votre zone et fichier inversés):

sudo named-checkzone 128.10.in-addr.arpa /etc/bind/zones/db.10.128

Lorsque tous vos fichiers de configuration et de zone ne contiennent aucune erreur, vous devez être prêt à redémarrer le service BIND.

Redémarrer BIND

Redémarrez BIND:

sudo service bind9 restart

Votre serveur DNS principal est maintenant configuré et prêt à répondre aux requêtes DNS. Passons maintenant à la création du serveur DNS secondaire.

Configurer le serveur DNS secondaire

Dans la plupart des environnements, il est judicieux de configurer un serveur DNS secondaire qui répondra aux demandes si le serveur principal devient indisponible. Heureusement, le serveur DNS secondaire est beaucoup plus facile à configurer.

Surns2, éditez le fichiernamed.conf.options:

sudo vi /etc/bind/named.conf.options

En haut du fichier, ajoutez la liste de contrôle d'accès avec les adresses IP privées de tous vos serveurs de confiance:

/etc/bind/named.conf.options — updated 1 of 2 (secondary)

acl "trusted" {
        10.128.10.11;   # ns1
        10.128.20.12;   # ns2 - can be set to localhost
        10.128.100.101;  # host1
        10.128.200.102;  # host2
};

Sous la directivedirectory, ajoutez les lignes suivantes:

/etc/bind/named.conf.options — updated 2 of 2 (secondary)

        recursion yes;
        allow-recursion { trusted; };
        listen-on { 10.128.20.12; };      # ns2 private IP address
        allow-transfer { none; };          # disable zone transfers by default

        forwarders {
                8.8.8.8;
                8.8.4.4;
        };

Enregistrez et quitteznamed.conf.options. Ce fichier doit ressembler exactement au fichiernamed.conf.options dens1, sauf qu’il doit être configuré pour écouter sur l’adresse IP privée dens2.

Maintenant, éditez le fichiernamed.conf.local:

sudo vi /etc/bind/named.conf.local

Définissez les zones esclaves correspondant aux zones maîtres sur le serveur DNS principal. Notez que le type est «esclave», le fichier ne contient pas de chemin et il existe une directivemasters qui doit être définie sur l'adresse IP privée du serveur DNS principal. Si vous avez défini plusieurs zones inversées sur le serveur DNS principal, veillez à les ajouter toutes ici:

/etc/bind/named.conf.local — updated (secondary)

zone "nyc3.example.com" {
    type slave;
    file "slaves/db.nyc3.example.com";
    masters { 10.128.10.11; };  # ns1 private IP
};

zone "128.10.in-addr.arpa" {
    type slave;
    file "slaves/db.10.128";
    masters { 10.128.10.11; };  # ns1 private IP
};

Maintenant, enregistrez et quitteznamed.conf.local.

Exécutez la commande suivante pour vérifier la validité de vos fichiers de configuration:

sudo named-checkconf

Une fois que tout est prêt, relancez la liaison

sudo service bind9 restart

Vous disposez maintenant de serveurs DNS principal et secondaire pour la résolution du nom de réseau privé et de l'adresse IP. Vous devez maintenant configurer vos serveurs pour qu'ils utilisent vos serveurs DNS privés.

Configurer les clients DNS

Avant que tous vos serveurs de l'ACL «de confiance» puissent interroger vos serveurs DNS, vous devez configurer chacun d'eux pour utiliserns1 etns2 comme serveurs de noms. Ce processus varie en fonction du système d'exploitation, mais pour la plupart des distributions Linux, il implique l'ajout de vos serveurs de noms au fichier/etc/resolv.conf.

Clients Ubuntu

Sur Ubuntu et Debian Linux VPS, vous pouvez modifier le fichierhead, qui est précédé deresolv.conf au démarrage:

sudo vi /etc/resolvconf/resolv.conf.d/head

Ajoutez les lignes suivantes au fichier (remplacez votre domaine privé et les adresses IP privées dens1 etns2):

/etc/resolvconf/resolv.conf.d/head

search nyc3.example.com  # your private domain
nameserver 10.128.10.11  # ns1 private IP address
nameserver 10.128.20.12  # ns2 private IP address

Exécutez maintenantresolvconf pour générer un nouveau fichierresolv.conf:

sudo resolvconf -u

Votre client est maintenant configuré pour utiliser vos serveurs DNS.

Clients CentOS

Sur CentOS, RedHat et Fedora Linux VPS, éditez simplement le fichierresolv.conf:

sudo vi /etc/resolv.conf

Ajoutez ensuite les lignes suivantes en haut du fichier (remplacez votre domaine privé et les adresses IP privées dens1 etns2):

/etc/resolv.conf

search nyc3.example.com  # your private domain
nameserver 10.128.10.11  # ns1 private IP address
nameserver 10.128.20.12  # ns2 private IP address

Maintenant, enregistrez et quittez. Votre client est maintenant configuré pour utiliser vos serveurs DNS.

Test des clients

Utiliseznslookup pour tester si vos clients peuvent interroger vos serveurs de noms. Vous devriez pouvoir le faire sur tous les clients que vous avez configurés et qui se trouvent dans la liste de contrôle d'accès «de confiance».

Recherche avancée

Par exemple, nous pouvons effectuer une recherche directe pour récupérer l'adresse IP dehost1.nyc3.example.com en exécutant la commande suivante:

nslookup host1

La requête «host1» se développe en «host1.nyc3.example.com car l'optionsearch est définie sur votre sous-domaine privé et les requêtes DNS tenteront de rechercher ce sous-domaine avant de rechercher l'hôte ailleurs. La sortie de la commande ci-dessus ressemblerait à ceci:

Output:Server:     10.128.10.11
Address:    10.128.10.11#53

Name:   host1.nyc3.example.com
Address: 10.128.100.101

Recherche inversée

Pour tester la recherche inversée, interrogez le serveur DNS avec l’adresse IP privée dehost1:

nslookup 10.128.100.101

Vous devriez voir une sortie qui ressemble à ceci:

Output:Server:     10.128.10.11
Address:    10.128.10.11#53

11.10.128.10.in-addr.arpa   name = host1.nyc3.example.com.

Si tous les noms et adresses IP ont la valeur correcte, cela signifie que vos fichiers de zone sont configurés correctement. Si vous recevez des valeurs inattendues, veillez à examiner les fichiers de zone sur votre serveur DNS principal (par exemple, db.nyc3.example.com etdb.10.128).

Toutes nos félicitations! Vos serveurs DNS internes sont maintenant correctement configurés! Nous allons maintenant couvrir la maintenance de vos enregistrements de zone.

Maintenir les enregistrements DNS

Maintenant que vous avez un DNS interne opérationnel, vous devez conserver vos enregistrements DNS afin qu'ils reflètent avec précision l'environnement de votre serveur.

Ajout d'hôte à DNS

Chaque fois que vous ajoutez un hôte à votre environnement (dans le même centre de données), vous souhaiterez l'ajouter au DNS. Voici une liste des étapes à suivre:

Serveur de noms primaire

  • Fichier de zone de transfert: Ajoutez un enregistrement "A" pour le nouvel hôte, incrémentez la valeur de "Série"

  • Fichier de zone inversé: Ajoutez un enregistrement «PTR» pour le nouvel hôte, incrémentez la valeur de «Série».

  • Ajoutez l'adresse IP privée de votre nouvel hôte à l'ACL "de confiance" (named.conf.options)

Puis rechargez BIND:

sudo service bind9 reload

Serveur de noms secondaire

  • Ajoutez l'adresse IP privée de votre nouvel hôte à l'ACL "de confiance" (named.conf.options)

Puis rechargez BIND:

sudo service bind9 reload

Configurer un nouvel hôte pour utiliser votre DNS

  • Configurez resolv.conf pour utiliser vos serveurs DNS

  • Test avecnslookup

Supprimer l'hôte du DNS

Si vous supprimez un hôte de votre environnement ou souhaitez simplement le retirer du DNS, supprimez simplement tout ce qui a été ajouté lors de l'ajout du serveur au serveur DNS (c'est-à-dire l'inverse des étapes ci-dessus).

Conclusion

Vous pouvez maintenant faire référence aux interfaces réseau privées de vos serveurs par leur nom plutôt que par leur adresse IP. Cela facilite la configuration des services et des applications, car vous n'avez plus besoin de vous souvenir des adresses IP privées et les fichiers seront plus faciles à lire et à comprendre. En outre, vous pouvez désormais modifier vos configurations pour qu'elles pointent vers un nouveau serveur à un emplacement unique, votre serveur DNS principal, au lieu de devoir modifier divers fichiers de configuration distribués, ce qui facilite la maintenance.

Une fois que vous avez configuré votre DNS interne et que vos fichiers de configuration utilisent des noms de domaine complets privés pour spécifier les connexions réseau, c'estcritical que vos serveurs DNS sont correctement entretenus. S'ils deviennent tous deux indisponibles, vos services et applications qui en dépendent cesseront de fonctionner correctement. C'est pourquoi il est recommandé de configurer votre DNS avec au moins un serveur secondaire et de conserver des sauvegardes actives de chacun d'entre eux.