Debian Jessie - Bind9 n'écoute pas ce qu'on lui demande

8 réponses
Avatar
Jean-Marc
--Signature=_Thu__28_Jan_2016_03_43_24_+0100_.5x4w.I_37sqx9pv
Content-Type: text/plain; charset=UTF-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

salut la liste,

J'ai un cubieboard qui fonctionne sous Jessie.

Comme je l'ai connect=C3=A9 au net, j'ai pris soin de v=C3=A9rifier et rest=
reindre les services au strict minimum.

Sauf bind.

Dans le fichier de config', j'ai pourtant une directive :
listen-on { localhost; 192.168.1.12; };

Malgr=C3=A9 cela, le daemon named =C3=A9coute sur l'IP publique.

Une id=C3=A9e ?

Jean-Marc <jean-marc@6jf.be>

--Signature=_Thu__28_Jan_2016_03_43_24_+0100_.5x4w.I_37sqx9pv
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJWqYBMAAoJEEBxy1wt6cT8niMP/37EaC1WD3gPaIvrCH0h3wjD
g843t2k+ZOX0Nz78OIt+wO5zcWnGmm0GG8za1sh7VxPml1jGwcI7w6Ik7zZHSi9j
kIQQp7pmj3Xdc77KQSSSOkxnqSgk/fEdJxq0nO8baeKfDNgP2t1Ry6lLP7yFTTs4
euKArH648NZZo8I85pNMgNFOQ+h3tHP9W69RyWcQe9R3nHhk0Kr34jUiygkF2GJf
wqx/dlsfyEshYr/VQZg7L75dcg/VpvijkGlWGo5nQt2HothF0LP8NF0g7sWhfC4P
PQ9pGvR9HeAIYjO5EGm0xYEaoSab1bPj0CXXm0BwGzUzVdHOp9+h1mRkYzIApEv3
yUmZEJuYPInHK3WesNwzb4OeznIzKtz0X11jCnr3R9ek/cOY4I/gWFru54MGZX9u
TzxeuCSwBnZ0Shn8HB6e9N1i6XYnIiEgHO3hyFb41MBJElvjPNWvbTPof41Txuib
Qd9xZShNs7qpCWQh1kQZvISnqYwpXY+lTMvgTz2l3+92XmZlMsqCImikZ/T/cIR4
oU5eIbpRfUnQG1a3JDsAUoY0+4anMdFyZcHbloOE9MFpucy8g7C7aPbaGKXr2U57
uMlmwJdjzInMK08ClsSXbpV/B3qiPIPGmFDSgFolz9yK9kPyFcVCrAO2D40p+kVK
qbXj5HFs5YgwVHmzGwMb
=QWIg
-----END PGP SIGNATURE-----

--Signature=_Thu__28_Jan_2016_03_43_24_+0100_.5x4w.I_37sqx9pv--

8 réponses

Avatar
Daniel Caillibaud
Le 28/01/16 à 03:43, Jean-Marc a écrit :

JM> salut la liste,
JM>
JM> J'ai un cubieboard qui fonctionne sous Jessie.
JM>
JM> Comme je l'ai connecté au net, j'ai pris soin de vérifier et restreindre les services au
JM> strict minimum.
JM>
JM> Sauf bind.
JM>
JM> Dans le fichier de config', j'ai pourtant une directive :
JM> listen-on { localhost; 192.168.1.12; };
JM>
JM> Malgré cela, le daemon named écoute sur l'IP publique.
JM>
JM> Une idée ?

Je pense que localhost est pas autorisé (ça parait logique, c'est bind qui est censé dire
quelle est l'ip d'un nom, et il est pas encore démarré).

Essaie plutôt
listen-on { 127.0.0.1; 192.168.1.12; };
ou
listen-on { 127.0.0.0/16; 192.168.0.0/16; };

et oublie pas ipv6 (any par défaut)

listen-on-v6 { ::1; };


--
Daniel

Il existe 10 types de gens, ceux qui comprennent le binaire et les autres.
Avatar
Pascal Hambourg
Daniel Caillibaud a écrit :
Le 28/01/16 à 03:43, Jean-Marc a écrit :
JM>
JM> Dans le fichier de config', j'ai pourtant une directive :
JM> listen-on { localhost; 192.168.1.12; };
JM>
JM> Malgré cela, le daemon named écoute sur l'IP publique.

Je pense que localhost est pas autorisé



"localhost" est parfaitement autorisé, mais c'est une ACL qui a une
signification bien définie. Extrait du manuel de BIND :

localhost Matches the IPv4 and IPv6 addresses of all network interfaces
on the system.

Essaie plutôt
listen-on { 127.0.0.1; 192.168.1.12; };
ou
listen-on { 127.0.0.0/16; 192.168.0.0/16; };



Pourquoi /16 ? Le préfixe de loopback est un /8, et les préfixes
utilisés dans 192.168 sont généralement des /24.
Avatar
Jean-Marc
--Signature=_Thu__28_Jan_2016_09_23_17_+0100_skGHC5uTiu=qXPci
Content-Type: text/plain; charset=UTF-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Thu, 28 Jan 2016 09:12:21 +0100
Pascal Hambourg écrivait :

Daniel Caillibaud a écrit :
> Le 28/01/16 à 03:43, Jean-Marc a écrit :
[...]
"localhost" est parfaitement autorisé, mais c'est une ACL qui a une
signification bien définie. Extrait du manuel de BIND :

localhost Matches the IPv4 and IPv6 addresses of all network interfaces
on the system.

> Essaie plutôt
> listen-on { 127.0.0.1; 192.168.1.12; };



Merci à Daniel pour la piste. Merci à Pascal pour l'explication.
La directive suivante :
listen-on { 127.0.0.1; 192.168.1.12; };
remplit parfaitemet son rôle. Plus rien n'écoute sur l'IP publiqu e.

Un usage inhabituel de localhost quand même.

Bonne journée à tous.

Jean-Marc

--Signature=_Thu__28_Jan_2016_09_23_17_+0100_skGHC5uTiu=qXPci
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJWqc/2AAoJEEBxy1wt6cT8UVoP/RBY0WjHyy9MXcZthGjqTAc7
Nl7nJSnR6VZSSDAzO2NwPM/ibOuFVZR0thLiMgJsoVhwVJME/I1+T6lVClcqOgOd
syc/qARQR94YyIF/hhazAnOQEUmE7ltQTnspEAnQYmXQTojTtknORsBnXhUvKFbt
Uc2LLxD+yaEcjBs4pBVBC6uaF5Q7mH131Uxi+WiARXEs0uuX/xByGvgEizZ0LVN1
jRWYtu54Q4d/y6yxBVRUXatKTPbkNNxsyeRVW2uGEUp/mk6ARZnnFWKPJovwYoHT
NeKZiiMtsK5IdqfCF4TBdyO4npkXkb00yUiNU1qr6viEFlbkLgzPnP/jz9nJCCYi
638Z+qK2mIftEuUOT4QVrbsSQjV1+y/KqfY+w3kXUO5+ZAvJHSfK0B4Ghaq++5h+
aW+TilsCSv09pWKnBYMAqtVEIMmgGtBoUX/0WoYyOh51W3c/kx9HJLhUeY7ZJTLP
VvdFAVg0kcdI8PxIFdNTHN9c7ZdbZboF3eLlK3c3XnrfWgMEFHoAE3XbcriT3I7h
IadbP6jFksPZhggLuAdKehkO9lv7OG07dIk7wYSzbN9LS6X9Z4Zl0KBvPNr4YpH/
p166stnBpjlArQGXVGMEocJcW+QWdTM8ipIwOJPyCie6zUttjUIQnxVolzHP8cZL
eP6qwRR8UZQ3GaJlKt9e
=GCP2
-----END PGP SIGNATURE-----

--Signature=_Thu__28_Jan_2016_09_23_17_+0100_skGHC5uTiu=qXPci--
Avatar
Eric Degenetais
Le 28 janvier 2016 à 14:43, Daniel Caillibaud a écrit :

Ok, mais dans ce cas ça marche pas chez lui parce qu'il ne faut pas mixer acl et ip ?




bonjour,
l'explication ne serait-elle pas tout simplement que pour lister les
interfaces à écouter {localhost, 192.168.1.12} est interprêt é comme
{toutes les interfaces + 192.168.1.12}, soit au final {toutes les
interfaces} ?

bonne journée

______________
Éric Dégenètais
Henix



http://www.henix.com
http://www.squashtest.org
Avatar
Daniel Caillibaud
Le 28/01/16 à 09:12, Pascal Hambourg a é crit :

PH> Daniel Caillibaud a écrit :
PH> > Le 28/01/16 à 03:43, Jean-Marc a écrit :
PH> > JM>
PH> > JM> Dans le fichier de config', j'ai pourtant une directive :
PH> > JM> listen-on { localhost; 192.168.1.12; };
PH> > JM>
PH> > JM> Malgré cela, le daemon named écoute sur l'IP publique.
PH> >
PH> > Je pense que localhost est pas autorisé
PH>
PH> "localhost" est parfaitement autorisé, mais c'est une ACL qui a une
PH> signification bien définie. Extrait du manuel de BIND :
PH>
PH> localhost Matches the IPv4 and IPv6 addresses of all network interfaces
PH> on the system.

Ok, mais dans ce cas ça marche pas chez lui parce qu'il ne faut pas mi xer acl et ip ?

Pas vraiment cherché, juste donné une solution dont je sais qu'el le fonctionne, mais ma
supposition était foireuse.

PH>
PH> > Essaie plutôt
PH> > listen-on { 127.0.0.1; 192.168.1.12; };
PH> > ou
PH> > listen-on { 127.0.0.0/16; 192.168.0.0/16; };
PH>
PH> Pourquoi /16 ?

Ben, pourquoi pas ? ;-)

En fait par habitude, je mets /16 sur tous mes préfixes locaux parce q ue ça couvre tous mes
besoins et m'évite de me poser des questions ou faire une erreur en co nfondant les préfixes.

PH> Le préfixe de loopback est un /8, et les préfixes
PH> utilisés dans 192.168 sont généralement des /24.

Pour 127, je mets /16 par habitude, parce que j'ai jamais vu d'exemple de l oopback qui remonte
plus haut, et pour 192.168, ça m'est arrivé d'utiliser 192.168.1. 0/24 et 192.168.2.0/24 sur la
même machine (pour faire des groupes de VMs), donc /16 me permet de re grouper tout ce qui est
local sans me poser de question.

--
Daniel

C'est drôle comme les gens qui se croient instruits
éprouvent le besoin de faire chier le monde.
Boris Vian
Avatar
Pascal Hambourg
Eric Degenetais a écrit :
Le 28 janvier 2016 à 14:43, Daniel Caillibaud a écrit :
Ok, mais dans ce cas ça marche pas chez lui parce qu'il ne faut pas mixer acl et ip ?



l'explication ne serait-elle pas tout simplement que pour lister les
interfaces à écouter {localhost, 192.168.1.12} est interprêté comme
{toutes les interfaces + 192.168.1.12}, soit au final {toutes les
interfaces} ?



Bien sûr. Il me semblait que c'était assez clair.
Avatar
Daniel Caillibaud
Le 28/01/16 à 20:52, Pascal Hambourg a é crit :

PH> Eric Degenetais a écrit :
PH> > Le 28 janvier 2016 à 14:43, Daniel Caillibaud g> a écrit :
PH> >> Ok, mais dans ce cas ça marche pas chez lui parce qu'il ne faut pas mixer acl et ip ?
PH> >
PH> > l'explication ne serait-elle pas tout simplement que pour lister les
PH> > interfaces à écouter {localhost, 192.168.1.12} est interpr êté comme
PH> > {toutes les interfaces + 192.168.1.12}, soit au final {toutes les
PH> > interfaces} ?
PH>
PH> Bien sûr. Il me semblait que c'était assez clair.

Pas si évident que "localhost" désigne "toutes les ips assignà ©es à une interface locale", dans
un contexte ip on pourrait s'attendre à ce que ce soit la ou les ip de loopback.
(ok, ce localhost prend plus de sens dans une acl "allow {localhost}", oà ¹ on veut autoriser
toutes les ips locales).

Il faut aller voir la doc de bind (https://www.isc.org/downloads/bind/doc/, mais sous mon
iceweasel la page est quasi vide) car c'est pas dans les fichiers de conf ( c'est un built in),
cf 6.2.2, acl Statement Definition and Usage

The following ACLs are built-in:
- any Matches all hosts.

- none Matches no hosts.

- localhost Matches the IPv4 and IPv6 addresses of all network interfaces o n the system. When
addresses are added or removed, the localhost ACL element is updated to reflect the changes.

- localnets Matches any host on an IPv4 or IPv6 network for which the syste m has an interface.
When addresses are added or removed, the localnets ACL element is updat ed to reflect the
changes. Some systems do not provide a way to determine the prefix leng ths of local IPv6
addresses. In such a case, localnets only matches the local IPv6 addres ses, just like
localhost.

--
Daniel

Il faut choisir, dans la vie, entre gagner de l'argent et le dépenser,
on n'a pas le temps de faire les deux.
Edouard Bourdet
Avatar
Eric Degenetais
Le 28 janvier 2016 à 20:52, Pascal Hambourg a écrit :
l'explication ne serait-elle pas tout simplement que pour lister les
interfaces à écouter {localhost, 192.168.1.12} est interprà ªté comme
{toutes les interfaces + 192.168.1.12}, soit au final {toutes les
interfaces} ?



Bien sûr. Il me semblait que c'était assez clair.



J'avais compris les explications, mais apparemment ce n’était pas
clair pour tout le monde du coup j'ai tenté de reformuler.

bonne jouréne
______________
Éric Dégenètais
Henix



http://www.henix.com
http://www.squashtest.org