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

Comment configurer le serveur DNS (liaison) sur CentOS 8 / RHEL8

Développé dans les années 80 par des étudiants de l'université de Berkeley,BIND (Domaine de nom Internet Berkeley ) est un serveur DNS open source qui fournit des services DNS sur les distributions Linux. Alors, qu'est-ce qu'un serveur DNS ? Un DNS est un service qui aide à résoudre un nom de domaine complet (FQDN ) en une adresse IP et en plus, effectuer une traduction inverse - traduction d'une adresse IP en un nom de domaine convivial.

Pourquoi la résolution de noms est-elle importante ? Eh bien, les ordinateurs localisent les services sur des serveurs à l'aide d'adresses IP. Cependant, les adresses IP ne sont pas aussi conviviales que les noms de domaine et ce serait un gros casse-tête d'essayer de se souvenir de chaque adresse IP associée à chaque nom de domaine. Un serveur DNS intervient et aide à résoudre ces noms de domaine en adresses IP d'ordinateur.

Ce guide vous guide tout au long du processus de configuration d'un serveur de liaison DNS sur CentOS 8 / RHEL 8.

Configuration du laboratoire :

  • Serveur :            CentOS 8 (serveur minimal)
  • Adresse IP :    192.168.43.35
  • Nom de point d'accès :   dns-primary.linuxtechi.local
  • Domaine :         linuxtechi.local

Commençons maintenant avec la configuration du serveur de liaison DNS.

Étape 1 :Installez le DNS de liaison sur CentOS 8/RHEL 8

Nous commençons par l'installation des packages bind et bind-utils. Ces packages constituent le serveur DNS et ses utilitaires chargés d'interroger les serveurs de noms ou les serveurs DNS.

Exécutez la commande :

# dnf install bind bind-utils

Une fois installé avec succès, démarrez le serveur DNS à l'aide de la commande ci-dessous :

# systemctl start named

Ensuite, activez-le pour qu'il puisse démarrer même après un redémarrage

# systemctl enable named

Juste pour être sûr que le service fonctionne comme prévu, vérifiez son statut

# systemctl status named

Super, le serveur DNS fonctionne parfaitement. Passons maintenant à la configuration du serveur DNS Bind

Étape 2 : Configurer le serveur DNS de liaison

Habituellement, les meilleures pratiques recommandent de faire une sauvegarde d'un fichier de configuration avant d'apporter des modifications. C'est ainsi qu'en cas de problème, nous pouvons toujours revenir au fichier original non édité. Et ce n'est pas différent ici.

Effectuons une sauvegarde du fichier de configuration /etc/named.conf

# cp /etc/named.conf  /etc/named.bak

Maintenant, allez-y et ouvrez le fichier à l'aide de votre éditeur de texte préféré. Dans ce cas, nous utilisons l'éditeur vim.

# vim /etc/named.conf

Sous les 'Options ' , assurez-vous de commenter les lignes indiquées ci-dessous pour permettre au serveur Bind DNS d'écouter toutes les adresses IP.

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

De plus, localisez le paramètre allow-query et ajustez-le en fonction de votre sous-réseau réseau.

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

Ce paramètre autorise uniquement les hôtes du réseau défini à accéder au serveur DNS et pas n'importe quel autre hôte.

Une zone DNS de recherche directe est celui qui stocke la relation de l'adresse IP du nom d'hôte. Lorsqu'il est interrogé, il donne l'adresse IP du système hôte en utilisant le nom d'hôte. En revanche, la zone DNS inverse renvoie le nom de domaine complet (FQDN) du serveur par rapport à son adresse IP.

Pour définir les zones de recherche inversée et directe, copiez et collez la configuration suivante à la fin de /etc/named.conf

//forward zone
zone "linuxtechi.local" IN {
     type master;
     file "linuxtechi.local.db";
     allow-update { none; };
     allow-query { any; };
};

//backward zone
zone "43.168.192.in-addr.arpa" IN {
     type master;
     file "linuxtechi.local.rev";
     allow-update { none; };
     allow-query { any; };
};

  • type :précise le rôle du serveur pour une zone particulière. l'attribut 'master' implique qu'il s'agit d'un serveur faisant autorité.
  • fichier :Pointe vers le fichier de zone avant/arrière du domaine.
  • autoriser la mise à jour :cet attribut définit les systèmes hôtes autorisés à transférer les mises à jour DNS dynamiques. Dans ce cas, nous n'en avons pas.

Après l'enregistrement, quittez le fichier de configuration /etc/named.conf.

Étape 3 :Créer un fichier de zone DNS de transfert pour le domaine

Créez un fichier de zone DNS de transfert pour le domaine linuxtechi.local comme indiqué ci-dessous et ajoutez le contenu suivant

[[email protected] ~]# vim /var/named/linuxtechi.local.db
$TTL 86400
@ IN SOA dns-primary.linuxtechi.local. admin.linuxtechi.local. (
                                                2020011800 ;Serial
                                                3600 ;Refresh
                                                1800 ;Retry
                                                604800 ;Expire
                                                86400 ;Minimum TTL
)

;Name Server Information
@ IN NS dns-primary.linuxtechi.local.

;IP Address for Name Server
dns-primary IN A 192.168.43.35

;Mail Server MX (Mail exchanger) Record
linuxtechi.local. IN MX 10 mail.linuxtechi.local.

;A Record for the following Host name
www  IN   A   192.168.43.50
mail IN   A   192.168.43.60

;CNAME Record
ftp  IN   CNAME www.linuxtechi.local.

Définissons quelques-uns des paramètres indiqués dans le fichier de configuration :

  • TTL :C'est l'abréviation de Time-To-Live. TTL est la durée (ou sauts) pendant laquelle un paquet existe dans un réseau avant d'être finalement rejeté par le routeur.
  • EN  :Cela implique Internet.
  • SOA :C'est l'abréviation de Start of Authority. Fondamentalement, il définit le serveur de noms faisant autorité, dans ce cas, dns-primary.linuxtechi.local et les informations de contact - admin.linuxtechi.local
  • NS :C'est l'abréviation de Name Server.
  • Un :Il s'agit d'un enregistrement A. Il pointe vers un nom de domaine/sous-domaine vers l'adresse IP
  • Série  :Il s'agit de l'attribut utilisé par le serveur DNS pour s'assurer que le contenu d'un fichier de zone spécifique est mis à jour.
  • Actualiser  :Définit le nombre de fois qu'un serveur DNS esclave doit transférer une zone depuis le maître.
  • Réessayer  :Définit le nombre de fois qu'un esclave doit réessayer un transfert de zone qui ne répond pas.
  • Expire  :spécifie la durée qu'un serveur esclave doit attendre avant de répondre à une requête client lorsque le maître est indisponible.
  • Minimum  :Ceci est responsable de la définition du TTL minimum pour une zone.
  • MX :Il s'agit de l'enregistrement de l'échangeur de courrier. Il spécifie le serveur de messagerie qui reçoit et envoie les e-mails
  • CNAME :C'est le nom canonique. Il associe un nom de domaine alias à un autre nom de domaine.
  • PTR :Abréviation de Pointer, cet attribut résout une adresse IP en un nom de domaine, à l'opposé d'un nom de domaine.

Étape 4 :Créer un fichier de zone DNS inversé pour le domaine

De même, nous devons créer un fichier pour les recherches DNS inversées. Collez le contenu suivant dans le fichier :

[[email protected] ~]# vim /var/named/linuxtechi.local.rev
$TTL 86400
@ IN SOA dns-primary.linuxtechi.local. admin.linuxtechi.local. (
                                            2020011800 ;Serial
                                            3600 ;Refresh
                                            1800 ;Retry
                                            604800 ;Expire
                                            86400 ;Minimum TTL
)
;Name Server Information
@ IN NS dns-primary.linuxtechi.local.
dns-primary     IN      A       192.168.43.35

;Reverse lookup for Name Server
35 IN PTR dns-primary.linuxtechi.local.

;PTR Record IP address to Hostname
50      IN      PTR     www.linuxtechi.local.
60      IN      PTR     mail.linuxtechi.local.

Ensuite, attribuez les autorisations de fichier nécessaires aux deux fichiers de configuration.

# chown named:named /var/named/linuxtechi.local.db
# chown named:named /var/named/linuxtechi.local.rev

Pour confirmer que les fichiers de recherche de zone DNS sont exempts de toute erreur de syntaxe, exécutez les commandes indiquées :

# named-checkconf
# named-checkzone linuxtechi.local /var/named/linuxtechi.local.db
# named-checkzone 192.168.43.35 /var/named/linuxtechi.local.rev

S'il n'y a pas d'erreurs, vous devriez obtenir le résultat affiché :

Pour que les modifications soient reflétées dans le système, redémarrez le serveur Bind DNS

# systemctl restart named

Pour que les systèmes clients accèdent au système, nous devons ajouter le service DNS sur le pare-feu, puis recharger le pare-feu.

# firewall-cmd  --add-service=dns --zone=public  --permanent
# firewall-cmd --reload

Étape 5 :Tester le serveur DNS Bind à partir d'un système client

Après avoir finalisé la configuration sur le serveur DNS, dirigeons-nous vers une machine cliente et effectuons quelques tests.

Sur une machine cliente ( CentOS 8 / RHEL 8), ouvrez le fichier /etc/resolv.conf fichier et éditez le paramètre suivant :

serveur de noms 192.168.43.35

Comme toujours, enregistrez et fermez le fichier de configuration.

Enfin, vous devez ajouter l'adresse IP du serveur Bind DNS au /etc/sysconfig/network-scripts/ifcfg-enp0s3 fichier comme indiqué.

Enregistrez et fermez le fichier de configuration, puis redémarrez le service de gestionnaire de réseau pour appliquer les modifications ci-dessus,

# systemctl restart NetworkManager

À l'aide de la commande nslookup, testez le serveur DNS Bind comme indiqué :

# nslookup dns-primary.linuxtechi.local
# nslookup mail.linuxtechi.local
# nslookup www.linuxtechi.local
# nslookup ftp.linuxtechi.local

# nslookup 192.168.43.35

La sortie de la commande nslookup confirme que la recherche DNS directe fonctionne comme prévu.

De plus, vous pouvez également utiliser la commande dig comme indiqué

# dig dns-primary.linuxtechi.local

Pour effectuer une recherche DNS inversée, utilisez la commande dig comme indiqué :

# dig -x 192.168.43.35

Parfait! La recherche DNS inversée fonctionne également comme prévu.

Et cela conclut ce tutoriel. Dans ce guide, nous vous avons expliqué l'installation d'un serveur DNS à l'aide de Bind sur CentOS 8. Essayez-le et n'hésitez pas à envoyer vos commentaires.

Lire aussi  : Comment configurer le serveur NFS sur CentOS 8 / RHEL 8


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

  2. Comment configurer un serveur SFTP sur CentOS

  3. Comment configurer le serveur SysLog sur CentOS 7 / RHEL 7

  4. Comment configurer le serveur DNS (liaison) sur CentOS/RHEL 7/6/5

  5. Comment configurer le serveur NTP dans CentOS ?

Comment configurer le serveur d'impression Samba sur CentOS

Comment configurer le serveur de messagerie Zimbra sur CentOS 7

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

Comment configurer le serveur SysLog centralisé sur CentOS 8 / RHEL 8

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

Comment configurer HAProxy sur CentOS 8