sigle.png
Ce site a 2 objectifs : faire une doc technique de mes TP et en faire profiter les autres...

BIND9 :

Installation d’un serveur DNS (Domain Name System)
Sous Linux Debian Squeeze 6.0.4 i38 en occurrence BIND9.

Au début
BIND est le serveur DNS le plus utilisé sur Internet spécialement sur les systèmes de type UNIX.

BIND a été conçue par quatre étudiants diplômés de l'Université de Californie (Berkeley) sur la base du système d'exploitation BSD 4.3 au début des années 1980 avec l'accord de la DARPA.

Plus tard
Cette version de BIND (BIND 9), disponible depuis 2000, a été réécrite afin de résoudre certains problèmes architecturaux
du code initial et d'ajouter la prise en charge de DNSSEC, TSIG, notification DNS, nsupdate, IPv6, support Multiprocesseur
ainsi qu'une meilleure portabilité.
Source Wikipedia

À l'heure actuelle
BIND 10 est la prochaine génération de BIND, il est en cours de test sur plusieurs plateformes Linux.

Maintenant

  1. Nous allons préparer le system l'exploitation Debian pour faire tourner un serveur DNS
  2. Nous allons installer le serveur DNS BIND9
  3. Teste

1.Préparation

En premier lieu nous allons choisir le nom de l'ordinateur (si on veut le modifier), un nom de domaine, et on va réserver une
adresse IP disponible du notre domaine en occurrence ici le nom de domaine : mondom.lan et adresse IP : 192.168.1.244/24.

En second lieu, nous allons modifier les fichiers /etc/hostname, /etc/hosts, /etc/resolv.conf et /etc/network/interfaces.

Ouvrez un terminal, passez en mode super utilisateur en tapant $sudo au début de chaque commande ou si vous avez un poil dans
la main comme moi passez en mode root une fois pour toute en tapant $su root, il faut bien sur, donner le mot de passe du root.

Ouvrez le fichier hostname avec la commande nano /etc/hostname, nous allons modifier le nom de l'ordinateur, en occurrence ici deb-dns-core.

deb-dns-core

Ouvrez le fichier hosts avec la commande nano /etc/hosts, modifiez les deux premières lignes, commentez toutes les lignes qui concernent IPV6.

127.0.0.1	localhost.localdomain localhost
192.168.1.244	deb-dns-core.mondom.lan deb-dns-core

# The following lines are desirable for IPv6 capable hosts
#::1 ip6-localhost ip6-loopback
#fe00::0 ip6-localnet
#ff00::0 ip6-mcastprefix
#ff02::1 ip6-allnodes
#ff02::2 ip6-allrouters

Ouvrez le fichier resolv.conf avec la commande nano /etc/resolv.conf, modifiez le contenu du fichier, comme indiqué ci-dessous.

nameserver 127.0.0.1
nameserver 192.168.1.244
domain mondom.lan
search mondom.lan



Ouvrez le fichier interfaces avec la commande nano /etc/network/interfaces, modifiez le contenu du fichier, comme indiqué ci-dessous.


auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
        address 192.168.1.244
        netmask 255.255.255.0
        network 192.168.1.0
        broadcast 192.168.1.255
        gateway 192.168.1.1

Nous allons redémarrer l'interface réseau avec la commande restart, par sécurité, nous allons remonter l'interface eth0 et on va
afficher le résultat pour voir si tout va bien.

# service networking restart
# ifup eth0
# ifconfig

Si vous n'avez pas de message d'erreur suite à ses commandes et le résultat de la commande ifconfig ressemble l'image ci-dessous, alors tout va bien, on peut installer le serveur DNS BIND9



2.Installation et Configuration

Il n'y a pas plus facile que ça juste une petite commande BIND9 il s'installe tout seul comme un grand, il faut tout simplement la commande.

apt-get install bind9

Nous allons changer le répertoire dans lequel on travaille avec la commande cd /etc/bind/ car par défaut BIND9 installe ses fichiers de
configuration dans le répertoire /etc/bind/.

Tout d'abord nous allons copier le fichier db.empty en renommant db.mondom.lan pour créer notre premier fichier de zone et on va le configurer.
Ensuite, on va copier le fichier db.mondom.lan en renomment db.1.168.192.in-addr.arpa pour créer notre fichier de zone-inverse puis on va faire
quelques modifications sur ce fichier et on va redémarrer le serveur DNS BIND9 avec la commande service bind restart.

# cp db.empty db.mondom.lan
# nano db.mondom.lan


Configuration du fichier ZONE (db.mondom.lan)

$TTL	86400
@		IN	SOA	mondom.lan.	root.mondom.lan. (
			201307221	; Serial
			   604800	; Refresh
			    86400	; Retry
			  2419200	; Expire
			    86400 )	; Negative Cache TTL
;
@	      IN	NS	deb-dns-core.mondom.lan.
deb-dns-core  IN	A	192.168.1.244
WWW	      IN	CNAME 	deb-dns-core

# cp db.mondom.lan db.1.168.192.in-addr.arpa    
# nano db.1.168.192.in-addr.arpa


Configuration du fichier ZONE-INVERSE (db.1.168.192.in-addr.arpa).

$TTL	86400
@		IN	SOA      deb-dns-core.mondom.lan.  root.mondom.lan. (
			     201307221  ; Serial
				604800	; Refresh
				86400	; Retry
				2419200	; Expire
				86400 )	; Negative Cache TTL
;
@		IN	NS	  deb-dns-core.
244		IN	PTR	  deb-dns-core.mondom.lan.

Redémarrez le serveur BIND

# service bind restart

Nous alons modifier le fichier named.conf.local, le fichier named.conf.options et on va redémarrer le serveur DNS BIND9 avec la commande
service bind restart, si vous recevez un message d'erreur, redémarrez le système avec la commande init 6 ça ne doit pas poser de problèmes.


# nano named.conf.local

Configuration du fichier named.conf.local, effacer le contenu du ficher et copier le code suivant.




// ZRD

	   zone "mondom.lan" IN {
				type master;
				file "/etc/bind/db.mondom.lan";
				allow-update {none;};
				notify yes;
				allow-transfer {192.168.1.244;};
		};

// ZRI
	   zone "1.168.192.in-addr.arpa" IN {
				type master;
				file "/etc/bind/db.1.168.192.in-addr.arpa";
				allow-update {none;};
				notify yes;
				allow-transfer {192.168.1.244;};
		};

Configuration du fichier named.conf.option, effacer le contenu du ficher et copier le code suivant.



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

		//forwarders {
			//0.0.0.0;
		//};
		
		auth-nxdomain no;    # conform to RFC1035
		listen-on-v6 { ::1; };
		allow-recursion { localhost; localnets;};
		allow-query-cache { localhost; localnets;};
	};

Redémarrez le serveur BIND

# service bind restart

Redémarrez le système si nécessaire.

# init 6

4.Test

Nous allons tester le fonctionnement du service DNS avec la commande named-checkzone il ne doit rien retourner (pas de message).
Ensuite on va tester la configuration de la zone et la zone-inverse avec la commande named-checkzone il doit retourner
le numéro de série et OK. Enfin on va tester le fonctionnement de la résolution du nom avec la commande nslookup.

Test de named.conf (pas de message).

# named-checkconf /etc/bind/named.conf

Test de la configuration de la zone.

# named-checkzone -d mondom.lan db. mondom.lan

Test de la configuration de la zone-inverse.

# named-checkzone -d 192.168.1.244 db.1.168.192.in-addr.arpa


À la fin de ses trois commandes vous devriez avoir un résultat ressemblant à l'image suivant.



named-checkzone

Résolution du nom avec la commande nslookup vous devriez avoir résultat ressemblant aux images suivant.


test nslookup
test nslookup