Imprimer cette page
Explication
Un DNS (Domain Name Serveur) est un serveur de noms chargé d'effectuer la transcription d'un nom de serveur (par exemple http://www.google.com) en une adresse IP (par exemple 193.252.19.3). Le DNS un paramètre indispensable pour pouvoir accéder à un serveur sur Internet, est en général attribué automatiquement à la connexion. Si ça ne marche pas, pouvoir le saisir s'avère très pratique. Dans cette procédure, le client envoie une requête au serveur à l'aide du mode console. Le serveur envoie la réponse attendu. De plus il doit-être possible au client qui se trouve dans un intranet de pouvoir se connecter sur le réseau Internet de l'entreprise par l'intermédiaire d'un FAI et en passant par le serveur DNS cache.
Schématisation

Démarrage du service Bind
Avant de démarrer le logiciel Bind, il nous faut configurer le fichier /etc/named.conf. Car il nous faut spécifier que seule les machines faisant partie de notre réseau intranet peuvent intérroger le serveur DNS cache. Cette directive se trouve dans la commande allow-query, de plus dans la commande forward first nous précisons le serveur qui sera interroger en premier.
]=> Ici seul le localhost et les machines du réseau accèdent à notre serveur DNS cache.
]=> Le premier serveur interroger sera le 10.10.9.251
Après avoir effectuer les principale modification de configuration nous devons tester si le service Bind est opérationnel. Pour cela nous tapons les commandes suivantes :
[root@localhost ~]# service named restart
Lancement de named : [ OK ] => Le service DNS c'est bien mis en route.
Puis nous allons vérifier que le service écoute bien ce qui se passe sur le réseau :
[root@localhost ~]# netstat -natup
Connexions Internet actives (serveurs et établies)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 10.10.9.58:53 0.0.0.0:* LISTEN 5691/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 5691/named
udp 0 0 10.10.9.58:53 0.0.0.0:* 5691/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 5691/named
Les LISTEN signifie que le service Bind écoute bien se qui se passe sur le réseau.
Mise en place de règle de filtrage
Pour la bonne marche du projet nous avons créer des règles de filtrage. Pour cela nous avons créer un script bash qui nous évite de tout taper en mode console et surtout d'avoir le fichier en archive. Nous allons voir les directives principales :
#----------------[ CREATION DE VARIABLES UTILISEES PAR IPTABLES ]---------------
# Binaire "iptables"
IPTABLES="/sbin/iptables -v"
# Interface Internet
INTER="eth0"
IP_INTER="10.10.9.58"
MSK_INTER="255.255.255.0"
# Interface Intranet
INTRA="eth1"
IP_INTRA="192.168.10.1"
MSK_INTRA="255.255.255.0"
# DNS FAI
DNS_FAI="10.10.9.250 10.10.9.251"
# Réseau INTER
LAN_INTER="10.10.9.0/24"
# Réseau INTRA
LAN_INTRA="192.168.10.0/24"
Ici nous déclarons nos différentes interfaces réseaux.
#--------------[ Validation FORWARD NETFILTER ]---------------------------------
echo 1> /proc/sys/net/ipv4/ip_forward
Ici nous fermons notre IP_Forward pour que les paquets puissent entrer et sortir.
Vérification du fonctionnement du DNS cache
Nous demandons grâce à la commande « nslookup » de se connecter sur notre serveur DNS cache et nous allons lui demander la liste de serveur de noms en « fr. ».
[root@localhost ~]# nslookup
> server 192.168.10.1
Default server: 192.168.10.1
Address: 192.168.10.1#53
> set q=ns
> fr.
Server: 192.168.10.1
Address: 192.168.10.1#53
Non-authoritative answer:
fr nameserver = A.EXT.NIC.fr.
fr nameserver = A.NIC.fr.
fr nameserver = B.EXT.NIC.fr.
fr nameserver = B.NIC.fr.
fr nameserver = C.EXT.NIC.fr.
fr nameserver = C.NIC.fr.
fr nameserver = D.EXT.NIC.fr.
fr nameserver = E.EXT.NIC.fr.
fr nameserver = E.NIC.fr.
Authoritative answers can be found from:
> server 192.168.10.1
Default server: 192.168.10.1
Address: 192.168.10.1#53
Nous obtenons notre réponses tout fonctionne donc bien.
Conclusion
Le cache du serveur DNS permet d'optimiser la bande passante du réseau, et permet d'établir des règles de filtrage.
|