Installation du serveur DNS
Nous allons installer bind.
root@aijan:/home/ericadmin# apt install bind9
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
The following additional packages will be installed:
bind9utils libirs141
...
root@aijan:/home/ericadmin# service bind9 start
root@aijan:/home/ericadmin# netstat -tlpn
Connexions Internet actives (seulement serveurs)
Proto Recv-Q Send-Q Adresse locale Adresse distante Etat PID/Program name
tcp 0 0 192.168.111.240:53 0.0.0.0:* LISTEN 13815/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 13815/named
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 594/sshd
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 13815/named
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 803/master
tcp6 0 0 :::53 :::* LISTEN 13815/named
tcp6 0 0 :::22 :::* LISTEN 594/sshd
tcp6 0 0 ::1:953 :::* LISTEN 13815/named
tcp6 0 0 :::25 :::* LISTEN 803/master
root@aijan:/home/ericadmin#
Bien, bind a démarré et écoute sur les ports 53 et 953, en IPV4 et IPV6. Il nous reste à configurer les zones et à ouvrir les ports (firewall). Je vais utiliser comme serveur dns secondaire pour la zone yojik.net le serveur que j'utilise déjà pour la zone yojik.eu.
Nous configurerons le serveur dns local pour qu'il transfère les zones automatiquement vers notre serveur dns secondaire.
Voilà la structure générale de mes serveurs DNS:
adara.yojik.eu: serveur DNS primaire pour le domaine yojik.eu
polis.yojik.eu: serveur DNS secondaire pour le domaine yojik.eu serveur DNS secondaire pour le domaine yojik.net
aijan.yojik.net: serveur DNS primaire pour le site yojik.net
Ce dernier serveur déclarera l'ensemble des machines et serveurs du domaine yojik.net. (ce sont les machines de bureau/portables ainsi que le serveurs hébergés à la maison.)
Les enregistrements glue seront renseignés chez mon registrar (OVH dans mon cas). Les serveurs DNS seront également déclarés chez ce registrar.
Notre zone yojik.net est déclarée dans le fichier /etc/bind/named.conf.local. (en faire une copie de sauvegarde!)
Voici son contenu avant modification:
//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
Contenu après ajout de la zone yojik.net:
zone "yojik.net" {
type master;
file "/etc/bind/db.yojik.net";
};
Dans tous les tutorials, vous verrez la déclaration des zones inverses: après de nombreux échanges avec des spécialistes, il s'avère que ce n'est pas nécessaire, car mes serveurs DNS ne seront jamais interrogés pour la résolution inverse: pour cela, il faudrait que mon registrar me délègue la gestion de la zone. Je n'ai qu'une adresse IPV4 associée à ce domaine et pas de délégation.
Création du fichier de zone db.yojik.net dans le répertoire /etc/bind.
root@aijan:/etc/bind# vim db.yojik.net
root@aijan:/etc/bind# cat db.yojik.net
$TTL 86400
$ORIGIN yojik.net.
@ IN SOA aijan.yojik.net. hostmaster.yojik.net. (
2018052001 ; serial à changer à chaque modification
7200 ; refresh, 12h
3600 ; retry, 1h
1209600 ; expire
86400 ) ; negative cache, 24h
; nameservers
IN NS aijan.yojik.net.
IN NS polis.yojik.eu.
;mail server
IN MX 10 aijan.yojik.net.
; domain hosts
yojik.net. IN A 82.64.48.5
yojik.net. IN AAAA 2a01:e0a:54:c220:3aea:a7ff:fea6:cf93
aijan IN A 82.64.48.5
aijan IN AAAA 2a01:e0a:54:c220:3aea:a7ff:fea6:cf93
On relance bind et on teste en local:
root@aijan:/home/ericadmin# service bind9 restart
root@aijan:/home/ericadmin# nslookup aijan.yojik.net localhost
Server: localhost
Address: ::1#53
Name: aijan.yojik.net
Address: 82.64.48.5
root@aijan:/home/ericadmin#
Ça marche! Test de notre enregistrement MX (mail) avec dig:
oot@aijan:/etc/bind# dig @localhost aijan.yojik.net MX
; <<>> DiG 9.10.3-P4-Debian <<>> @localhost aijan.yojik.net MX
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21275
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;aijan.yojik.net. IN MX
;; AUTHORITY SECTION:
yojik.net. 86400 IN SOA aijan.yojik.net. hostmaster.yojik.net. 2018052003 7200 3600 1209600 86400
;; Query time: 0 msec
;; SERVER: ::1#53(::1)
;; WHEN: Sun May 20 10:27:17 CEST 2018
;; MSG SIZE rcvd: 91
Il nous reste plusieurs éléments à configurer pour que notre serveur dns soit pris en compte.
- Configurer notre box pour rediriger les requêtes extérieures DNS sur notre serveur DNS personnel.
- Mettre à jour la configuration de nos enregistrements chez notre registrar.
- Ajouter notre zone à notre serveur DNS secondaire (polis.yojik.eu) et mise à jour de la clef de connexion.
Fichier /etc/bind/conf.named.local
zone "yojik.eu" {
type slave;
file "db.yojik.eu.local";
masters { 91.121.72.10; };
};
zone "yojik.net" {
type slave;
file "db.yojik.net.local";
masters { 82.64.48.5; };
};
Configuration des options: fichier /etc/bind/named.conf.options
options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
// forwarders {
// 0.0.0.0;
// };
//========================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys. See https://www.isc.org/bind-keys
//========================================================================
dnssec-validation auto;
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
listen-on { any; };
allow-update { none; };
allow-recursion { 127.0.0.1; ::1; 91.121.72.10;2001:41d0:1:7d0a::1; 37.187.3.182; 2001:41d0:a:3b6::1; };
allow-transfer { 37.187.3.182; 2001:41d0:a:3b6::1; };
version "BIND";
};
Pensez à vérifier que la clef située dans le fichier: /etc/bind/rndc.key est identique sur votre serveur primaire et secondaire.
Configuration de votre box et des enregistrements de votre registrar
Cela étant très dépendant de chaque registrar et de chaque box, je vous laisse chercher sur le net les informations utiles. Sachez tout de même que peu de fournisseurs d'internet autorisent l'installation d'un serveur émail personnel. I8l vous faudra souvent attendre un peu avant que la configuration ne soit prise en compte chez votre registrar.
Vérification de la config DNS:
Allez sur le site https://toolbox.googleapps.com/apps/dig/ pour tester votre configuration.
Configuration du reverse DNS
Si vous hébergez votre serveur "chez vous", vous devrez configurer le reverse DNS dans la page d'administration de votre ligne Internet.
Pour le FAI Free, allez sur la page: "Personnalisez mon reverse DNS", et mettez votre nom de doamine dans le champ adéquoit.
Il faut quelques heures pour que la propagation se fasse.