Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Dnsmasq: interdire /etc/hosts aux requètes provenant d'un VLAN particulier

3 réponses
Avatar
Olivier
--000000000000b538c505926fed84
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Bonjour,

Une question toute simple:
j'ai une machine sous Debian Stretch avec deux interfaces eth0 et eth0.123
Comment faire pour qu'
1. aux requ=C3=A8tes re=C3=A7ues via eth0, Dnsmasq r=C3=A9ponde en consulta=
nt un fichier
/etc/hosts puis le serveur 1.1.1.1
2. aux requ=C3=A8tes re=C3=A7ues via eth0.123, Dnsmasq r=C3=A9ponde en cons=
ultant un
fichier /etc/hosts123 puis le serveur 8.8.8.8.

En d'autres termes, je ne veux pas que les utilisateurs du VLAN123 puisse
indirectement acc=C3=A9der au contenu du fichier /etc/hosts.

J'imagine qu'il est possible d'atteindre ce r=C3=A9sultat avec deux instanc=
es de
Dnsmasq tournant sur la m=C3=AAme machine.
J'ai lu que l'option local-queries pouvait peut-=C3=AAtre (pas test=C3=A9) =
avoir
l'effet de bord souhait=C3=A9 mais elle ne me plait pas car pas pr=C3=A9vue=
pour =C3=A7a
mais pour un h=C3=B4te =C3=A0 plusieurs interfaces reste plus facilement at=
teignable)
Est-ce possible de faire autrement et plus simple ?

Slts

--000000000000b538c505926fed84
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Bonjour,</div><div><br></div><div>Une question toute =
simple:</div><div>j&#39;ai une machine sous Debian Stretch avec deux interf=
aces eth0 et eth0.123</div><div>Comment faire pour qu&#39;</div><div>1. aux=
requ=C3=A8tes re=C3=A7ues via eth0, Dnsmasq r=C3=A9ponde en consultant un =
fichier /etc/hosts puis le serveur 1.1.1.1<br></div><div>2. aux requ=C3=A8t=
es re=C3=A7ues via eth0.123, Dnsmasq r=C3=A9ponde en consultant un fichier =
/etc/hosts123 puis le serveur 8.8.8.8.<br></div><div><br></div><div>En d&#3=
9;autres termes, je ne veux pas que les utilisateurs du VLAN123 puisse indi=
rectement acc=C3=A9der au contenu du fichier /etc/hosts.</div><div><br></di=
v><div>J&#39;imagine qu&#39;il est possible d&#39;atteindre ce r=C3=A9sulta=
t avec deux instances de Dnsmasq tournant sur la m=C3=AAme machine.</div><d=
iv>J&#39;ai lu que l&#39;option local-queries pouvait peut-=C3=AAtre (pas t=
est=C3=A9) avoir l&#39;effet de bord souhait=C3=A9 mais elle ne me plait pa=
s car pas pr=C3=A9vue pour =C3=A7a mais pour un h=C3=B4te =C3=A0 plusieurs =
interfaces reste plus facilement atteignable)<br></div><div>Est-ce possible=
de faire autrement et plus simple ?</div><div><br></div><div>Slts<br></div=
></div>

--000000000000b538c505926fed84--

3 réponses

Avatar
Daniel Huhardeaux
Le 13/09/2019 à 16:18, Olivier a écrit :
Bonjour,
Une question toute simple:
j'ai une machine sous Debian Stretch avec deux interfaces eth0 et eth0.123
Comment faire pour qu'
1. aux requètes reçues via eth0, Dnsmasq réponde en consultant un
fichier /etc/hosts puis le serveur 1.1.1.1
2. aux requètes reçues via eth0.123, Dnsmasq réponde en consultant un
fichier /etc/hosts123 puis le serveur 8.8.8.8.
En d'autres termes, je ne veux pas que les utilisateurs du VLAN123
puisse indirectement accéder au contenu du fichier /etc/hosts.
J'imagine qu'il est possible d'atteindre ce résultat avec deux instances
de Dnsmasq tournant sur la même machine.
J'ai lu que l'option local-queries pouvait peut-être (pas testé) avoir
l'effet de bord souhaité mais elle ne me plait pas car pas prévue pour
ça mais pour un hôte à plusieurs interfaces reste plus facilement
atteignable)
Est-ce possible de faire autrement et plus simple ?

Utilise les TAG puis les options router et dns
Ex:
# Telephones - Plage 10.10.12.190 à 10.10.12.191
dhcp-range = tag:voice,10.10.12.190,10.10.12.191,255.255.255.0,2m
dhcp-option = tag:voice, option:router, 10.10.12.254
dhcp-option = tag:voice, option:dns-server, 10.10.12.254
Avatar
Pascal Hambourg
Le 16/09/2019 à 08:26, Olivier a écrit :
Ma question n'était sans doute pas très bien formulée.
Elle ne portait pas sur la façon de router le DNS, mais d'avoir plusieurs
résolutions locales différenciées.

Si, c'était très clair (excepté le titre qui n'est pas terrible). Ce que
tu veux faire s'appelle du "split DNS". Dans BIND 9, cela correspondrait
à des "vues" (views). Malheureusement je ne connais pas bien dnsmasq et
ignore s'il possède une fonctionnalité équivalente.
Avatar
daniel huhardeaux
Le 16/09/2019 à 20:31, Pascal Hambourg a écrit :
Le 16/09/2019 à 08:26, Olivier a écrit :
Ma question n'était sans doute pas très bien formulée.
Elle ne portait pas sur la façon de router le DNS, mais d'avoir plusieurs
résolutions locales différenciées.

Si, c'était très clair (excepté le titre qui n'est pas terrible). Ce que
tu veux faire s'appelle du "split DNS". Dans BIND 9, cela correspondrait
à des "vues" (views). Malheureusement je ne connais pas bien dnsmasq et
ignore s'il possède une fonctionnalité équivalente.

L'OP devrait pouvoir s'en sortir en utilisant addn-hosts pour les
différents fichiers hosts et les noms de domaine locaux gérés par
dnsmasq (auth-server, auth-zone, localise-queries).
Pas testé.
--
Daniel