-
Notifications
You must be signed in to change notification settings - Fork 0
1.1 Infrastructure DNS
Le service DNS (Domain Name Service) est un service TCP/IP permettant la correspondance entre un nom de domaine qualifié (FQDN : Fully Qualified Domain Name) et une adresse IP, par exemple www.wt5.ephec-ti.be = 151.80.119.132. Ainsi, grâce au DNS, il n'est pas nécessaire de se souvenir des adresses IP.
Ce guide est permet la configuration et la maintenance d'un serveur DNS BIND9 dans un container Docker.
Pour cette mission, nous avons choisi l'image suivante :
Ce dockerfile crée un container DNS Bind9 et met en place une interface web via WebMin facilitant sa configuration.
On construit donc l'image de Bind disponibles sur Dockerhub.
sudo docker pull sameersbn/bind
On lance ensuite la commande run afin de lancer le container. Dans les options de la commander run, il est nécéssaire d'ouvrir les ports nécessaires au fonctionnement de Bind, 53 tcp et udp, ainsi que le port 10000 pour la configuration via WebMin. Il est d'autant plus facile de créer un volume pour modifier les fichiers en interne. Ce qui évite à chaque fois de rentrer de le container docker. Ici on prend tout le fichier data et on le met dans le dossier personnel /home/noe/bind.
docker run --name bind -d --restart=always --publish 53:53/tcp --publish 53:53/udp --publish 10000:10000/tcp
-v /home/noe/bind/:/data sameersbn/bind:latest
La commande suivante permet de renter dans le container en mode invite de commande
sudo docker exec -ti bind bash
Nous avons décidés de configurer le DNS en ligne de commande et non avec l'interface Web.
- named.conf.local
- named.conf.options
- db.wt5.ephec-ti.be
1. On édite le fichier named.conf.local pour y ajouter une zone et faire de BIND9 un serveur maître.
zone "wt5.ephec-ti.be"{
type master;
file "/var/lib/bind/wt5.ephec-ti.be.hosts";
};
2. On édite le fichier named.conf.options. On y ajoute l'adresse DNS de google pour avoir un forwarder pour l'accès à internet.
forwarders { 8.8.4.4; };
On y ajoute aussi l'option listen-on, ce qui permet de définir l'adresse ip qui sera utilisé en tant que DNS interne à l'entreprise.
listen-on {any;};
3. En dernier lieu on crée le fichier db.wt5.ephec-ti.be.hosts qui ressemble à ceci (à adapter à votre configuration)
;
; BIND reverse data file for broadcast zone
;
$TTL 604800
@ IN SOA localhost. root.localhost. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS localhost.
Ne pas oublier d'appliquer les changements :
/etc/init.d/bind9 reload
EPHEC 2016-2017 P. GREGORY - B. GERAULT - L. NOE