GNU/Linux >> Tutoriels Linux >  >> Linux

Créer un serveur DNS

Cet article décrit comment effectuer les tâches suivantes :

  • Créez un serveur DNS de mise en cache.
  • Créez un serveur DNS de transfert.
  • Installez et configurez le serveur DNS Bind en tant que serveur DNS de mise en cache ou de transfert.

Créer un serveur DNS de mise en cache

Ce type de serveur est également appelé résolveur car il gère les requêtes récursives et peut gérer le travail fastidieux de traçage des données DNS à partir d'autres serveurs.

1. Installez le logiciel

La première étape de la mise en œuvre d'un serveur DNS Bind consiste à installer le logiciel lui-même.

sudo apt-get update
sudo apt-get install bind9 bind9utils bind9-doc

2. Configurer un serveur DNS de cache

Pour un serveur DNS de mise en cache, modifiez uniquement les named.conf.options fichier.

Exécutez la commande suivante pour ouvrir ce fichier dans votre éditeur de texte avec sudo privilèges :

sudo nano named.conf.options

Le fichier ressemble à l'exemple suivant :

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

        dnssec-validation auto;

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

3. Configurer une liste d'adresses IP ou de plages de réseaux de confiance

Au-dessus des options bloc dans le fichier, créez un nouveau bloc appelé acl . Créez une étiquette pour le groupe ACL que vous configurez. L'exemple suivant appelle le groupe ACL rackspace :

acl rackspace {
};

options {
    . . .

Ensuite, répertoriez toutes les adresses IP et tous les réseaux autorisés à utiliser ce serveur DNS dans l'acl bloquer.

acl rackspace {
    192.0.2.0/24;
    localhost;
    localnets;
};

options {
    . . .

Enfin, configurez les fonctionnalités dans les options bloquer. Dans ce bloc, ajoutez les lignes suivantes :

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

    recursion yes;
    allow-query { rackspace; };
    . . .

Une fois ces modifications terminées, enregistrez et fermez le fichier.

Vous avez maintenant créé un serveur DNS de mise en cache. S'il s'agit du type de serveur que vous souhaitez utiliser, passez directement à la vérification de vos fichiers de configuration et redémarrez le service.

Créer un serveur de transfert

Utilisez les étapes suivantes pour transférer le serveur DNS :

1. Configurer un serveur DNS de transfert

Pour votre serveur de transfert, commencez par la configuration du serveur de mise en cache dans la section précédente. Les options named.conf.options le fichier doit ressembler à l'exemple suivant :

acl rackspace {
        192.0.2.0/24;
        localhost;
        localnets;
};

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

        recursion yes;
        allow-query { rackspace; };

        dnssec-validation auto;

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

Remarque : Le serveur de transfert fournit toujours des services récursifs en répondant aux requêtes pour les zones pour lesquelles il n'est pas autorisé, nous devons donc configurer une liste de serveurs de mise en cache pour transférer nos demandes. Utilisez l'ACL pour restreindre votre serveur DNS à une liste spécifique de clients.

2. Configurer les redirecteurs

Créez un bloc appelé transitaires , dans les options bloquer. Ajoutez les adresses IP des serveurs de noms récursifs auxquels vous souhaitez transférer les requêtes. L'exemple suivant utilise les serveurs DNS publics de Google (8.8.8.8 et 8.8.4.4 ):

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

        recursion yes;
        allow-query { rackspace; };

        forwarders {
                8.8.8.8;
                8.8.4.4;
        };
        . . .

Ensuite, définissez le transfert directive à only car ce serveur doit transférer toutes les requêtes et ne doit pas tenter de résoudre les requêtes par lui-même.

acl rackspace {
        192.0.2.0/24;
        localhost;
        localnets;
};

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

        recursion yes;
        allow-query { rackspace; };

        forwarders {
                8.8.8.8;
                8.8.4.4;
        };
        forward only;

        dnssec-validation auto;

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

Modifier la validation DNSSec et dnssec-enable paramètres sur yes :

. . .
forward only;

dnssec-enable yes;
dnssec-validation yes;

auth-nxdomain no;    # conform to RFC1035
. . .

Vous avez maintenant un serveur DNS de transfert en place. Enregistrez et fermez le fichier.

Vérifiez vos fichiers de configuration et redémarrez le service

Utilisez les instructions suivantes pour vérifier vos fichiers de configuration et redémarrer le service :

1. Vérifiez les fichiers de configuration

Utilisez les outils Bind pour vérifier la syntaxe de vos fichiers de configuration :

sudo named-checkconf

Si le processus de révision ne trouve aucune erreur de syntaxe, aucune sortie n'apparaît.

Si le fichier de configuration contient des erreurs de syntaxe, la sortie affiche l'erreur et le numéro de ligne. Modifiez le fichier et corrigez les erreurs.

Enregistrez et fermez le fichier lorsque vous avez terminé. Revérifiez la syntaxe.

2. Redémarrez le service

Utilisez la commande suivante pour redémarrer le démon Bind afin d'implémenter vos modifications :

sudo service bind9 restart

Conclusion

Vous devriez maintenant avoir un serveur DNS de mise en cache ou de transfert configuré pour servir vos clients. Cela peut être un excellent moyen d'accélérer les requêtes DNS pour les machines que vous gérez.

Utilisez l'onglet Commentaires pour faire des commentaires ou poser des questions. Vous pouvez également démarrer une conversation avec nous.


Linux
  1. Configuration du serveur DNS de cache uniquement indépendant sur RHEL 7 Linux

  2. Comment créer une sauvegarde

  3. Comment créer un hôte virtuel Nginx (bloc serveur)

  4. Créer des serveurs cloud OnMetal

  5. Pitchfork :Créer un serveur

Comment créer un serveur Minecraft sur Ubuntu 20.04

Comment créer un nouveau serveur cloud Atlantic.Net

Comment créer une zone DNS dans cPanel &WHM

Comment configurer DNS dans Windows Server 2012

Créer un serveur cloud

Créer un serveur cloud à usage général