Configuration de liaison du serveur DNS Linux
- 4042
- 1007
- Thomas Richard
Le logiciel Bind DNS est l'un des moyens les plus fiables et éprouvés de configurer la résolution du nom sur un système Linux. Ayant existé depuis les années 1980, il reste le serveur de noms de domaine le plus populaire (DNS) actuellement utilisé. Cet article sert de manuel de configuration rapide d'un serveur DNS Linux à l'aide de Bind.
Cet article n'est pas une introduction au DNS ou une explication du fonctionnement du protocole. Nous allons plutôt nous concentrer simplement sur une configuration simple d'une zone personnalisée et d'un fichier de configuration pour un domaine / hôte donné prenant en charge www et services de courrier. Suivez les instructions ci-dessous pour obtenir la configuration et la configuration de Bind DNS sur votre propre serveur.
AVERTISSEMENTAvant de poursuivre l'installation et la configuration de Bind NameServer, assurez-vous que Bind DNS Server est exactement ce que vous voulez. La configuration et l'exécution par défaut de liaison sur Debian ou Ubuntu peuvent prendre environ 200 Mo de RAM sans zones ajoutées au fichier de configuration. Sauf si vous réduisez l'utilisation de la mémoire d'une liaison via divers paramètres de configuration «Options» de liaison, soyez prêt à avoir un RAM de rechange disponible uniquement pour ce service. Ce fait est encore plus important si vous payez pour votre propre serveur VPS.
Dans ce tutoriel, vous apprendrez:
- Comment installer un lien sur les principales distros Linux
- Comment créer un fichier de zone DNS
- Comment configurer l'adresse pour nommer des mappages
- Comment vérifier le fichier et la configuration de la zone de liaison
- Comment démarrer ou redémarrer le service Bind DNS
- Comment tester une configuration de liaison avec
creuser
commande
Catégorie | Exigences, conventions ou version logicielle utilisée |
---|---|
Système | Toute distribution Linux |
Logiciel | LIER |
Autre | Accès privilégié à votre système Linux en tant que racine ou via le Sudo commande. |
Conventions | # - Exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande$ - Exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier |
Notre environnement de test
Avant de plonger dans toute la configuration de Bind, il est utile d'avoir un contexte de la façon dont nous configurons notre réseau. Reportez-vous à la liste suivante pour voir comment les adresses IP sont affectées à divers systèmes de notre réseau.
- Adresse IP de NameServer: 192.168.135.130
- Exemple de domaine / hôte: LinuxConfig.org
- Des serveurs de noms faisant autorité pour un LinuxConfig.Zone d'organes: NS1.linuxconfig.org (192.168.0.10) et NS2.linuxconfig.org (192.168.0.11)
- www et services de courrier que LinuxConfig.org pointera vers: 192.168.0.dix
Installez la liaison sur les principales distros Linux
La façon la plus simple d'installer la dernière version de Bind (Bind9) est d'utiliser le gestionnaire de packages de votre système.
Sur un serveur Debian ou Ubuntu Linux, vous pouvez installer un serveur de noms Bind avec la commande Linux suivante:
$ sudo apt install bind9 dnsutils
Ou avec cette commande sur Centos, Fedora, Almalinux et d'autres distros basés sur RHEL:
$ sudo dnf install bind dnsutils
Le logiciel DNSUTILS n'est pas un package obligatoire pour exécuter Bind Namesserver, mais nous utiliserons le creuser
Commande qui fait partie de ce package en tant qu'outil de test de votre configuration de liaison.
Création d'un fichier de zone DNS
À ce stade, nous devrons créer un nouveau fichier de zone pour un domaine LinuxConfig.org. Suivez les étapes ci-dessous comme nous le faisons.
- Aller vers
/ etc / bind /
répertoire puis exécuter la séquence suivante des commandes pour naviguer verszones / maître /
.$ cd / etc / bind $ sudo mkdir -p zones / maître $ cd zones / maître /
- Le
/ etc / bind / zones / maître
Le répertoire contiendra un fichier de zone pour lelinuxconfig.org
nom de domaine. Si vous préférez utiliser un autre répertoire pour maintenir ce fichier, vous êtes libre de le faire. Le fichier de zone suivant, nommédb.linuxconfig.org
, détiendra un enregistrement DNS pour aider un serveur de nom pour résoudre un nom de domaine entièrement qualifié à une adresse IP. Créer ledb.linuxconfig.org
avec Nano ou votre éditeur de texte préféré.
$ sudo nano / etc / bind / zones / maître / dB.linuxconfig.org
- Ensuite, collez le modèle suivant dans le fichier:
Copie; ; Lier le fichier de données pour LinuxConfig.org; $ Ttl 3h @ in soa ns1.linuxconfig.org. administrer.linuxconfig.org. (1; série 3H; actualiser après 3 heures 1H; réessayer après 1 heure 1W; expirer après 1 semaine 1H); Cache négative TTL de 1 jour; @ Dans NS NS1.linuxconfig.org. @ Dans NS NS2.linuxconfig.org. linuxconfig.org. Dans MX 10 Mail.linuxconfig.org. linuxconfig.org. Dans un 192.168.0.10 ns1 dans un 192.168.0.10 ns2 dans un 192.168.0.11 www dans cname LinuxConfig.org. Mail dans un 192.168.0.10 FTP dans CNAME LinuxConfig.org.
Enregistrez vos modifications et quittez ce fichier de configuration une fois terminé. Voici juste un examen rapide de certaines lignes du fichier de zone DNS Bind ci-dessus:
Record de SOA: NameServer faisant autorité pour une zone LinuxConfig.L'organisation est NS1.linuxconfig.org et admin.linuxconfig.L'organisation est une adresse e-mail d'une personne responsable de cette zone DNS.
NS Records: deux serveurs de noms pour le LinuxConfig.la zone de l'organisation est ns [1,2].linuxconfig.org
MX (échange de courrier): LinuxConfig.Enregistrement d'exachange de courrier org. Le numéro 10 signifie une préférence pour rejeter les enregistrements a - A simplement signifie l'adresse ou en d'autres termes dans LinuxConfig.La zone de l'organisation A NS1 aurait une (adresse) 192.168.0.dix.
CNAME Record (Record du nom canonique): redémarrez la requête en utilisant le nom canonique au lieu du nom d'origine
Configurer l'adresse pour nommer des mappages
À ce stade, le serveur Bind DNS peut résoudre une adresse IP mappée à un LinuxConfig.hôte en org. Ce que nous devrions faire maintenant, c'est l'enseignement de notre nom de nom dans l'autre sens, c'est-à-dire pour résoudre un hôte à partir d'une adresse IP.
- Pour cela, nous allons avoir besoin d'un autre fichier et qui est nommé
db.192.168.0
.$ sudo nano / etc / bind / zones / maître / dB.192.168.0
- À l'intérieur de ce fichier, collez le contenu suivant:
Copie; ; Lignez le fichier de données inversé pour 0.168.192.indem.arpa; $ TTL 604800 0.168.192.indem.arpa. Dans SOA NS1.linuxconfig.org. administrer.linuxconfig.org. (1; série 3H; actualiser après 3 heures 1H; réessayer après 1 heure 1W; expirer après 1 semaine 1H); Cache négative TTL de 1 jour; 0.168.192.indem.arpa. Dans NS NS1.linuxconfig.org. 0.168.192.indem.arpa. Dans NS NS2.linuxconfig.org. dix.0.168.192.indem.arpa. Dans ptr LinuxConfig.org.
Ptr: un enregistrement NDS utilisé pour une cartographie d'une adresse IP à un nom d'hôte.
Mise à jour d'un fichier de configuration de liaison
À ce stade, nous devrions avoir deux fichiers prêts:
- / etc / bind / zones / maître / dB.linuxconfig.org
- / etc / bind / zones / maître / dB.192.168.0
- Tout ce que nous devons faire maintenant est d'insérer les deux noms de fichiers de zone dans le fichier de configuration de liaison
nommé.confli.local
.$ sudo nano / etc / bind / nommé.confli.local
- Ensuite, ajoutez des lignes suivantes dans ce fichier:
CopieZone "LinuxConfig.org "type maître; fichier" / etc / bind / zones / maître / db.linuxconfig.org ";; zone" 0.168.192.indem.arpa "type maître; fichier" / etc / bind / zones / maître / db.192.168.0 ";;
Dire Bind où se trouvent nos fichiers de zone - La dernière chose avant d'aller de l'avant et de vérifier la configuration est d'ajouter une adresse IP d'un serveur DNS stable au
nommé.confli.options
déposer. Cette adresse IP est utilisée dans le cas où un serveur DNS local ne connaît pas la réponse à une requête de résolution de nom. L'adresse IP d'un serveur DNS dans de nombreux cas est fournie par votre fournisseur Internet. Alternativement, vous pouvez utiliser les serveurs DNS publics de Google aux adresses IP8.8.8.8
ou8.8.4.4
.$ sudo nano / etc / bind / nommé.confli.options
- Remplacez l'adresse du transfert (par défaut, c'est 0.0.0.0) avec le 8.8.8.8 adresse IP.
transitaires 8.8.8.8; ;
Configurez une adresse de transfert à un serveur DNS fiable à partir de votre FAI ou Google
Vérification des fichiers et configuration de la zone de Bind
Avant d'essayer de démarrer un serveur de noms de liaison avec une nouvelle zone et une nouvelle configuration, voici quelques outils pour vérifier pour nous assurer que nous n'avons pas fait de typo ou de confection erronée.
- Pour vérifier les fichiers de configuration, exécutez une commande Linux suivante:
$ sudo nommé CheckConf
Avec ça
Named-CheckConf
Commande, la règle de base est: aucune nouvelle n'est une bonne nouvelle. Si aucune sortie n'a été produite, vos fichiers de configuration sont OK. - Pour vérifier les fichiers DNS Zone que nous pouvons utiliser
nommé-Checkzone
commande:$ sudo nommé-Checkzone LinuxConfig.org / etc / bind / zones / maître / dB.linuxconfig.Zone d'organes LinuxConfig.org / in: série chargée 1 ok
- Ou, pour vérifier le fichier de zone inverse:
$ sudo nommé Checkzone 0.168.192.indem.arpa / etc / bind / zones / maître / db.192.168.0 Zone 0.168.192.indem.arpa / in: série chargée 1 ok
Démarrer ou redémarrer lier le serveur de noms
Étant donné que les commandes ci-dessus ont confirmé que notre configuration de liaison est valide, nous pouvons démarrer le service de liaison pour que toutes ces modifications prennent effet.
$ sudo systemctl start bind9
Alternativement, si votre serveur Bind est déjà en cours d'exécution, utilisez la commande Linux suivante pour vous aider avec son redémarrage:
$ sudo systemctl redémarrer Bind9
Tester une configuration de serveur Bind
Le creuser
La commande du package DNSUTILS sera utile pour nous aider à tester une nouvelle configuration du serveur de noms Bind.
- Le
creuser
La commande peut être utilisée à partir de n'importe quel PC qui a un accès réseau à votre serveur DNS, mais de préférence vous devriez commencer vos tests à partir du localhost. Dans notre cas, l'adresse IP de notre serveur de nom est192.168.135.130
. Nous allons d'abord tester la résolution hôte-IP:$ DIG @ 192.168.135.130 www.linuxconfig.org
Utilisation de la commande Dig pour tester l'hôte à la résolution IP - Ensuite, nous testons la résolution IP-Hôte:
$ DIG @ 192.168.135.130 -x 192.168.0.dix
Utilisation de la commande DIG pour tester IP pour héberger la résolution
C'est tout ce qu'on peut en dire. Vous venez de créer et de configurer votre propre zone DNS en utilisant Bind Namesserver.
Réflexions de clôture
Dans ce guide, nous avons appris à créer et à configurer une zone DNS en utilisant Bind Namesserver sur les principales distros Linux. Bind est un excellent logiciel DNS avec une longue histoire de fiabilité. Comme nous l'avons vu ici, il ne faut qu'une petite configuration pour le mettre en marche et certains tests pour vérifier qu'il fonctionne correctement.
Tutoriels Linux connexes:
- Choses à installer sur Ubuntu 20.04
- Comment définir une zone de tout le monde personnalisé
- Une introduction à l'automatisation Linux, des outils et des techniques
- Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
- Téléchargement Linux
- Linux: Configuration du serveur de messagerie
- Fichiers de configuration Linux: 30 premiers
- Mint 20: Mieux que Ubuntu et Microsoft Windows?
- Linux peut-il obtenir des virus? Exploration de la vulnérabilité de Linux…
- Ubuntu 20.04 astuces et choses que vous ne savez peut-être pas