Tout d’abord, pourquoi installer un serveur DNS chez soi quand notre fournisseur d’accès nous en fournit déjà un?
- votre pays bloque certains sites web. Ca se fait 90% du temps en renvoyant de faux résultats DNS.
- vous voulez être sûr que personne ne vas usurper votre DNS en demandant directement les infos aux serveur DNS racines et en utilisant DNSSEC pour éviter les MITM.
- vous avez un serveur web sur votre réseau local et vous voudriez y accéder de la même façon (en tapant le même nom de domaine) depuis votre réseau local que depuis depuis Internet
- vous voulez bloquer certains domaines sur votre réseau local (publicité, Facebook :D)
La deuxième question, c’est « est-ce compliqué? »: Pas vraiment, comme nous alllons le voir. Sous debian, installez le paquet « unbound« . Pour activer DNSSEC, lancez en root # unbound-anchor; service unbound restart La configuration par défaut est suffisante pour un usage sur votre propre ordinateur et en configuration de DNS de votre connexion réseau sur 127.0.0.1, tout devrait fonctionner. Vous pouvez tester la configuration de DNSSEC sur ce site. Objectifs 1 et 2 accomplis ! Si maintenant on veut en faire profiter notre réseau local, il faut modifier un peu la configuration qui se trouve dans le fichier /etc/unbound/unbound.conf.d/root-auto-trust-anchor-file.conf Voici ma config:
server:
# The following line will configure unbound to perform cryptographic
# DNSSEC validation using the root trust anchor.
auto-trust-anchor-file: "/var/lib/unbound/root.key"
# listen on all interfaces, answer queries from the local subnet.
interface: 0.0.0.0
interface: ::0
#answer queries from any computer in my LAN
access-control: 192.168.1.0/8 allow
#Tell all requests for *.mondomaine.com to point the web server machine in my LAN (overwrite the root DNS so)
local-zone: « mondomaine.com » redirect
local-data: « mondomaine.com A 192.168.1.25 »
#Tell all requests for *.facebook.com to point to the local computer (means no access to facebook)
local-zone: « facebook.com » redirect
local-data: « facebook.com A 127.0.0.1 »
Ma configuration vous montre comment rendre votre serveur web accessible sur votre réseau local et comment bloquer un domaine. Cette documentation m’a beaucoup aidé. N’oubliez pas de lancer # service unbound restart après chaque modification de votre fichier de configuration. Il faut ensuite indiquer aux autres machines de votre réseau d’utiliser votre DNS (adresse 192.168.x.x où est installé unbound) plutôt que celui de votre fournisseur d’accès. Si vous pouvez modifier ça dans votre routeur/box DHCP c’est cool, sinon vous devez le faire machine par machine… Chose rigolote, vous pouvez espionner, tel la NSA et votre fournisseur d’accès, qui regarde quoi sur votre réseau local. Pour cela, installez le paquet dnstop Puis lancez : #dnstop eth0 Appyez sur @ pour voir les noms de domaines demandés par chaque IP de votre réseau local. Enjoy :-)
Queries: 2 new, 738 total
Source Query Name Count %
————– ———————– ——— ——
xx.160.37.4 measurement-factory.com 31 4.2
xxx.88.64.49 wpad.com 28 3.8
xxx.88.64.50 packet-pushers.com 14 1.9
xx.160.37.4 12.in-addr.arpa 12 1.6
xxx.88.64.50 wpad.com 7 0.9
xx.83.0.9 wpad.com 7 0.9
xx.160.37.4 life-gone-hazy.com 6 0.8
xxx.190.163.10 packet-pushers.com 4 0.5
xxx.155.0.15 packet-pushers.com 4 0.5
xx.18.192.242 wpad.com 4 0.5
xxx.69.16.18 packet-pushers.com 3 0.4
xx.140.11.85 packet-pushers.com 3 0.4
xxx.44.212.65 openresolvers.org 3 0.4
xx.160.37.4 74.in-addr.arpa 3 0.4
xx.18.251.250 wpad.com 3 0.4
xxx.104.96.79 wpad.com 3 0.4
xxx.126.96.162 ircache.net 3 0.4
xxx.137.171.10 wpad.com 3 0.4
Ping Bloquer les publicités et traqueurs au niveau du DNS avec Unbound – Tuxicoman