GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment configurer le DNS esclave (BIND) sur CentOS 7 / RHEL 7

BIND peut être configuré en tant que maître ou esclave pour servir la requête DNS pour chaque zone. Lorsque le BIND est configuré en tant qu'esclave, il obtient la copie des données de zone du serveur maître en utilisant la méthode de transfert de zone.

Dans le post précédent, nous avions configuré le serveur DNS sur CentOS 7 qui servira de source pour le serveur esclave.

Environnement

Nom de domaine :itzgeek.local
primaire.itzgeek.local 192.168.1.10 Serveur DNS maître
secondaire.itzgeek.local 192.168.1.20 Serveur DNS esclave

En cela, nous avons deux serveurs nommés primaire et secondaire. Le primaire a déjà été configuré en tant que maître pour le domaine itzgeek.local.

Nous allons maintenant configurer le secondaire en tant que serveur DNS esclave pour itzgeek.local.

Sur le serveur maître

Configurez BIND sur le serveur maître pour permettre le transfert de zone vers un serveur secondaire, modifiez le fichier /etc/named.conf dans primary.itzgeek.local.

vi /etc/named.conf

Ajoutez l'entrée suivante dans le fichier. Les serveurs mentionnés dans l'autorisation de transfert pourront transférer des zones depuis le serveur maître.

options {

        .    .    .

        allow-transfer { 192.168.1.20; };
        also-notify { 192.168.1.20; };

        .    .    .
}

Ajoutez les informations de votre serveur DNS secondaire dans le fichier de recherche directe à primary.itzgeek.local.

vi /var/named/fwd.itzgeek.local.db

Les enregistrements ressembleront à ci-dessous.

@   IN  SOA     primary.itzgeek.local. root.itzgeek.local. (
                                                1002    ;Serial
                                                3H      ;Refresh
                                                15M     ;Retry
                                                1W      ;Expire
                                                1D      ;Minimum TTL
                                                )

;Name Server Information
@      IN  NS      primary.itzgeek.local.

;Secondary Name server
@      IN  NS      secondary.itzgeek.local.

;IP address of Primary Name Server
primary IN  A       192.168.1.10

;IP address of Secondary Name Server
secondary IN A      192.168.1.20

;Mail exchanger
itzgeek.local. IN  MX 10   mail.itzgeek.local.

;A - Record HostName To IP Address
www     IN  A       192.168.1.100
mail    IN  A       192.168.1.150

;CNAME record
ftp     IN CNAME        www.itgeek.local.

Redémarrez le service BIND.

systemctl restart named

Ajoutez une règle d'autorisation dans le pare-feu pour autoriser les zones de transfert depuis le serveur maître.

firewall-cmd --permanent --add-port=53/tcp

firewall-cmd --reload

Sur le serveur esclave

Il est temps d'ajouter une déclaration de zone esclave sur le serveur secondaire, assurez-vous d'installer les packages suivants sur le serveur secondaire.

yum -y install bind bind-utils

Modifier /etc/named.conf dossier. Commentez la ligne suivante pour permettre à BIND d'écouter sur toutes les interfaces.

// listen-on port 53 { 127.0.0.1; };
// listen-on-v6 port 53 { ::1; };

Ajoutez votre réseau dans la ligne suivante. J'ai ajouté 192.168.1.0/24 pour permettre aux clients du réseau 192.168.1.0/24 d'interroger le DNS pour la traduction du nom en IP.

options {

        .    .    .

        allow-query     { localhost; 192.168.1.0/24; };

        .    .    .
}

Ajoutez la zone esclave comme ci-dessous.

zone "itzgeek.local" IN {
        type slave;
        masters { 192.168.1.10; };
        file "slaves/fwd.itzgeek.local.db";
};


zone "1.168.192.in-addr.arpa" IN {
       type slave;
       masters { 192.168.1.10; };
       file "slaves/1.168.192.db";
};

itzgeek.localNom de domaine
esclaveDNS secondaire
fwd.itzgeek.local.db &1.168.192.dbFichier de recherche avant et arrière esclave

Redémarrez le service BIND sur Secondary.itzgeek.local

systemctl restart named

Ajoutez une règle d'autorisation dans le pare-feu pour permettre aux clients de se connecter au serveur DNS pour la résolution de noms.

firewall-cmd --permanent --add-port=53/udp

firewall-cmd --reload

Vérifiez la recherche de www.itzgeek.local à l'aide de Secondary.itzgeek.local (192.168.1.20)

[root@client ~]# dig @192.168.1.20 www.itzgeek.local

Sortie :

; <<>> DiG 9.9.4-RedHat-9.9.4-74.el7_6.1 <<>> @192.168.1.20 www.itzgeek.local
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5314
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.itzgeek.local.             IN      A

;; ANSWER SECTION:
www.itzgeek.local.      604800  IN      A       192.168.1.100

;; AUTHORITY SECTION:
itzgeek.local.          604800  IN      NS      secondary.itzgeek.local.
itzgeek.local.          604800  IN      NS      primary.itzgeek.local.

;; ADDITIONAL SECTION:
primary.itzgeek.local.  604800  IN      A       192.168.1.10
secondary.itzgeek.local. 604800 IN      A       192.168.1.20

;; Query time: 0 msec
;; SERVER: 192.168.1.20#53(192.168.1.20)
;; WHEN: Wed Jul 17 21:53:45 IST 2019
;; MSG SIZE  rcvd: 140

Mise à jour de l'enregistrement

Chaque fois que vous modifiez un enregistrement DNS sur le serveur maître, n'oubliez pas de modifier le numéro de série dans le fichier de zone et exécutez la commande suivante sur le serveur maître pour recharger la zone.

Changez itzgeek.local &1.168.192.in-addr.arpa avec vos noms de zone.

### Forward Zone ###

rndc reload itzgeek.local

### Reverse Zone ###

rndc reload 1.168.192.in-addr.arpa

Conclusion

C'est tout. J'espère que vous avez appris à configurer un serveur DNS esclave sur CentOS 7 / RHEL 7.


Cent OS
  1. Comment installer le serveur DNS sur RHEL 8 / CentOS 8 Linux

  2. Configurer DNS sur CentOS 5 / RHEL 5 avec chroot

  3. Comment configurer le serveur DNS sur CentOS 5 / RHEL 5

  4. CentOS / RHEL 7 :Comment configurer le serveur de noms en cache uniquement

  5. Comment configurer le proxy dans CentOS/RHEL/Fedora

Comment configurer une adresse IP statique dans CentOS 7 / RHEL 7

Comment configurer une adresse IP statique dans CentOS 8 / RHEL 8

Comment installer et configurer Ansible sur CentOS 8 / RHEL 8

Comment configurer le serveur DNS (BIND) sur CentOS 8 / RHEL 8

Comment configurer le serveur DNS esclave (BIND) sur Ubuntu 18.04/16.04 et Debian 10/9

Comment configurer le serveur VNC sur CentOS/RHEL 6