Configuration DNS
Qu'est-ce qu'un DNS?
Le DNS est un système de noms de domaine hiérarchique qui associe des noms de domaine (ex: www.elosys.net) à des adresses IP. Son rôle principal est de simplifier l'accès aux ressources réseau en utilisant des noms compréhensibles au lieu d'adresses IP.
Fonctionnement du DNS
- Lorsqu'un utilisateur entre un nom de domaine dans son navigateur, une requête de résolution est initiée.
- Le DNS vérifie d'abord sa mémoire cache locale pour voir si la résolution a déjà été effectuée récemment.
- Si la réponse n'est pas trouvée en cache, le serveur DNS interroge d'autres serveurs DNS pour obtenir l'information.
- Une fois l'adresse IP obtenue, le serveur DNS renvoie la réponse au client.
Types d'Enregistrements DNS
- Enregistrement A (Address Record) :
L'enregistrement A est utilisé pour associer un nom de domaine à une adresse IP. Il est couramment utilisé pour pointer un sous-domaine vers une adresse IP spécifique.
Exemples :
elosys.net A 195.154.29.195
Dans cet exemple, le domaine “elosys.net” est associé à l'adresse IP 195.154.29.195
backup.elosys.net A 51.15.5.81
Dans cet exemple, le sous-domaine “backup.elosys.net” est associé à l'adresse IP 51.15.5.81.
- Enregistrement CNAME (Canonical Name) :
L'enregistrement CNAME est utilisé pour créer un alias d'un nom de domaine vers un autre. Il est utile lorsque vous souhaitez rediriger un sous-domaine vers un nom de domaine principal.
Exemple :
www.elosys.net CNAME elosys.net
Dans cet exemple, le sous-domaine “www” est un alias de “elosys.net”.
- Enregistrement MX (Mail Exchange) :
L'enregistrement MX spécifie les serveurs de messagerie responsables de la réception des e-mails pour un domaine. Il est crucial pour la gestion des e-mails.
Exemple :
elosys.net MX 10 mail.elosys.net
Dans cet exemple, les e-mails destinés à l'ensemble du domaine sont dirigés vers le serveur mail hébergé à “mail.elosys.net” avec une priorité de 10.
Notre Propre serveur DNS (bind)
On souhaite configurer un serveur pour qu'il puisse utliser le serveur DNS, pour cela on devra ajouter une zone pour ce serveur de typre master Dans le serveur DNS, il existe des principaux fichiers de configuration :
- named.conf.local :
zone "om2.elosys.net" IN { type master; file "/etc/bind/zones/om2.elosys.net"; notify yes; check-names warn; update-policy { grant letsencrypt_wildcard. name _acme-challenge.om2.elosys.net txt; }; allow-transfer { 195.154.29.195; };
J'ai pris l'exemple du serveur om2, l'option update-policy permet de générer des certificats ssl pour tous les sous-domaine de om2.elosys.net
Créer le fichier pour la nouvelle zone :
- Créer un fichier /zones/om2.elosys.net
$ORIGIN . $TTL 3600 ; 1 hour om2.elosys.net IN SOA new-dns-server.elosys.net. admin.new-dns-server.elosys.net. ( 254 ; serial 600 ; refresh (10 minutes) 3600 ; retry (1 hour) 604800 ; expire (1 week) 3600 ; minimum (1 hour) ) NS ns2.demo.elosys.net. NS new-dns-server.elosys.net. A 212.129.63.168 $ORIGIN om2.elosys.net. * CNAME om2.elosys.net. new-dns-server A 51.15.5.81 ns2 A 195.154.29.195
PS : Notre serveur DNS tourne dans une instance docker, donc tous les fichiers sont montés à l'intérieur du conteneur
Aprés l'application des dernières étapes, on verifie si la configuration a été bien faite; pour cela on exécute la commande suivante :
docker exec bind named-checkconf /etc/bind/named.conf
On redémarre le serveur DNS, par la commande suivante :
docker exec bind rndc reload