Contenu | Rechercher | Menus

Annonce

Ubuntu 16.04 LTS
Commandez vos DVD et clés USB Ubuntu-fr !

Appel à contributeurs. Réunion pour la refonte du wiki lundi 26 juin

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

#1 Le 17/10/2008, à 16:15

jemini

Bind9 et serveur DNS secondaire [RESOLU]

Bonjour,

j'ai suivi le tuto http://doc.ubuntu-fr.org/bind9 pour la mise en place de mes deux serveurs DNS intranet.
Le serveur primaire (ns1) fonctionne correctement, pas le secondaire (ns2).

Voici le résultat du nslookup sur ns2 :

jemini@ns2:/etc$ nslookup 
> server localhost
Default server: localhost
Address: 127.0.0.1#53
> ns1.mv2
Server:		localhost
Address:	127.0.0.1#53

** server can't find ns1.mv2.mv2: SERVFAIL

Resultat du named-checkzone sur ns2 :

jemini@ns2:/etc$ sudo named-checkzone ns1.mv2 /etc/bind/db.mv2
zone ns1.mv2/IN: loading from master file /etc/bind/db.mv2 failed: file not found

Voici la trace correspondante dans syslog sur ns2 :

Oct 17 15:04:02 ns2 named[6601]: zone 1.168.192.in-addr.arpa/IN: Transfer started.
Oct 17 15:04:02 ns2 named[6601]: transfer of '1.168.192.in-addr.arpa/IN' from 192.168.1.73#53: connected using 192.168.1.74#41918
Oct 17 15:04:02 ns2 named[6601]: dumping master file: /etc/bind/tmp-t6CQ8dXQII: open: permission denied
Oct 17 15:04:02 ns2 named[6601]: transfer of '1.168.192.in-addr.arpa/IN' from 192.168.1.73#53: failed while receiving responses: permission denied
Oct 17 15:04:02 ns2 named[6601]: transfer of '1.168.192.in-addr.arpa/IN' from 192.168.1.73#53: end of transfer

Le fichier named.conf.local sur ns2 :

zone "mv2" {
        type slave;
        masters {192.168.1.73;};
        file "/etc/bind/db.mv2";
};
// zone de plage IP pour la résolution inverse
zone "1.168.192.in-addr.arpa" {
        type slave;
        masters {192.168.1.73;};
        file "/etc/bind/db.192.168.1";
};

Le fichier named.conf.local sur ns1 :

zone "mv2" {
        type master;
        notify yes;
        allow-transfer {192.168.1.74;} ;
        file "/etc/bind/db.mv2";
};

zone "1.168.192.in-addr.arpa" {
        type master;
        notify yes;
        allow-transfer {192.168.1.74;};
        file "/etc/bind/db.192.168.1";
};

Le fichier db.mv2 :

$TTL 3h
@       IN      SOA     ns1.mv2. j.jemini.fr. (
2005090201
8H
2H
1W
1D )
@               IN      NS      ns1.mv2.
                A       192.168.1.73
ns1             A       192.168.1.73
ns2             A       192.168.1.74

@               IN              NS              ns2.mv2.

Le fichier db.192.168.1 :

$TTL 3h
@       IN      SOA     ns1.mv2. j.jemini.fr. (
2005090201
8H
2H
1W
1D )
@       IN      NS      ns1.mv2.
@       IN      NS      ns2.mv2.

$ORIGIN 1.168.192.in-addr.arpa.

73      IN      PTR     ns1.mv2.
74      IN      PTR     ns2.mv2.

Une idée ?

Dernière modification par jemini (Le 21/10/2008, à 15:01)

Hors ligne

#2 Le 17/10/2008, à 21:05

Uggy

Re : Bind9 et serveur DNS secondaire [RESOLU]

Q: I get "transfer of 'example.net/IN' from 192.168.4.12#53: failed while receiving responses: permission denied" error messages.

A: These indicate a filesystem permission error preventing named creating / renaming the temporary file. These will usually also have other associated error messages like

"dumping master file: sl/tmp-XXXX5il3sQ: open: permission denied" ....

La suite de la réponse sur la FAQ de Bind:
http://www.isc.org/index.pl?/sw/bind/FAQ.php

Hors ligne

#3 Le 21/10/2008, à 15:00

jemini

Re : Bind9 et serveur DNS secondaire [RESOLU]

Merci Uggy pour cette réponse qui m'a mis sur la piste de ... apparmor.

en effet, apparmor desormais présent dans Ubuntu (à partir de Gutsy[universe]) fixe les droits d'accès des programmes.
J'ai donc modifié sur le serveur primaire (ns1.mv2) : /etc/apparmor.d/usr.sbin.named en remplaçant :

/etc/bind/** r,

par

/etc/bind/** rw,

pour autoriser named à écrire dans /etc/bind.

sans oublier de relancer :

sudo /etc/init.d/apparmor restart

=> résolu smile

Dernière modification par jemini (Le 21/10/2008, à 15:09)

Hors ligne

#4 Le 21/10/2008, à 16:26

Uggy

Re : Bind9 et serveur DNS secondaire [RESOLU]

ok cool...
J'ai deja eu des probleme un peu dans le genre avec SELinux ... qui lui aussi fout pas mal la merde.. wink

Hors ligne

#5 Le 09/12/2008, à 23:23

Homer33

Re : Bind9 et serveur DNS secondaire [RESOLU]

SUPER!!! big_smile ca faisait un moment que je cherchais en faisant des chmod, chown sur les fichiers et les répertoires mais sans succès car c'est ce fameux "apparmor" (que je ne connaissais pas du tout) qui bloquait tout.
un GRAND merci

#6 Le 06/06/2016, à 15:39

progfou

Re : Bind9 et serveur DNS secondaire [RESOLU]

Bonjour, ce sujet ne bouge plus depuis longtemps déjà, mais vu qu'il est marqué comme résolu et que la solution n'est pas « la bonne » je me permets de réagir…

Il y a une raison pour laquelle AppArmor (ou SELinux ou autre) ne donne que le droit de lire dans /etc/bind et pas celui d'écrire (comme la solution le propose ici) : ce dossier ne doit contenir que la configuration, et non pas des fichiers temporaires ou autre fichiers qui bougent ; il y a d'autres dossiers pour cela, comme /var/cache/bind ici.

Il y a même une norme à ce niveau, le FHS/FSSTND, que Debian (et donc Ubuntu) respecte (et même fait respecter) en plaçant bien les fichiers au bon endroit par défaut dans ses empaquetages logiciels.

Ici l'erreur était en fait d'avoir spécifié un chemin pour le fichier slave : la ligne file "/etc/bind/db.192.168.1"; aurait dû être file "db.192.168.1"; car un fichier slave est un fichier temporaire et non un fichier de configuration.

Quand le chemin manque, bind9 va utiliser celui indiqué dans l'option "directory" se trouvant dans /etc/bind/named.conf.options (ou directement dans /etc/bind/named.conf). Ce dossier est normalement sous /var (lieu où les fichiers peuvent bouger) et on utilise typiquement /var/cache/bind.

Hors ligne

#7 Le 09/01/2017, à 15:07

sab332

Re : Bind9 et serveur DNS secondaire [RESOLU]

Bonjour,
merci de cette mise au point qui s'est avérée très juste lors de l'installation d'un nouveau dns 'slave'
par contre, le fichier récupéré par le transfert de zone n'est pas lisible alors qu'il l'est sur mon ancien serveur secondaire
est ce du au fait qu'il s'agit d'un fichier "temporaire" comme vous l'indiquez ?

Hors ligne

#8 Le 09/01/2017, à 20:53

progfou

Re : Bind9 et serveur DNS secondaire [RESOLU]

Le format a changé dernièrement. Avant c'était juste du texte, maintenant c'est du compilé ; certainement pour plus d'efficacité, mais peut-être aussi pour qu'on soit moins tenté d'y toucher directement… ;-)

Cette page explique comment convertir les fichiers de zone entre les formats texte et compilé : https://kb.isc.org/article/AA-00608/0/C … rmats.html

En gros, pour afficher sur la sortie standard le contenu d'un fichier de zone, on fera ceci :

named-compilezone -f raw -F text -o -  ma-zone.fr /var/cache/bind/db.ma-zone.fr

Hors ligne

#9 Le 10/01/2017, à 15:46

sab332

Re : Bind9 et serveur DNS secondaire [RESOLU]

Super
merci beaucoup pour votre aide !

Hors ligne