[Pi-hole] Bloqueur de pub sur tout votre réseau

Bonjour,

Je vous écris un petit article pour vous présenter Pi-hole.

Pi-hole quésaco ?
Pi-hole est un "logiciel/paquet" pour distribution Linux. Une fois le paquet installé, nous définissons notre serveur Linux comme Serveur DNS pour notre réseau.

En quoi il consiste par rapport à un serveur DNS classique ?
La différence entre Pi-hole et un serveur DNS, c'est que Pi-hole s'appuie sur les serveurs DNS les plus connus (Google, Quad9, Opendns, Norton …) mais filtre les requêtes de nom indésirables.
Je vous donne un exemple, vous jouer à Candy Crush, l'application appelle fait des requêtes vers les serveurs de pub qui sont intégrés (exemple ceux de google) afin d'afficher la pub dans le jeu. C'est là que Pi-hole intervient.
Sachant qu'il filtre l'ensemble des requêtes, quand il voit passer une demande de résolution de nom et que c'est un domaine que dont nous avons au préalablement bloqué, il ne donnera pas suite à cette requête, ce qui empêche l'affichage de la pub. Voir l'illustration suivante.

g1mkzy4isn.png

Alors comment on le met en place ?
Pour ma part, j'utilise un Raspberry Pi 2 mais le top est d'utiliser le nouveau, le Raspberry Pi 3B+.
C'est le dernier en date est tellement bien plus puissant que le modèle 1 et 2. Voilà le lien chez Kubii

Après rien de plus simple, on télécharge la dernière image de Raspbian ici (https://www.raspberrypi.org/downloads/raspbian/)
3 types de version : Distribution avec les logiciels de base recommandés : Raspbian Stretch with desktop and recommended software
La même version sans les logiciels de base recommandés : Raspbian Stretch with desktop
Enfin la version serveur sans interface graphique : Raspbian Stretch Lite
Libre à vous de choisir, si vous voulez utiliser uniquement Pi-hole alors la version Lite suffit, si vous prévoyer d'autre projet à vous de choisir dans les deux premières versions.

Pour écrire l'iso sur votre carte SD j'utilise Win32DiskImager ou bien [url=https://github-production-release-asset-2e65be.s3.amazonaws.com/45055693/4482f000-ef64-11e8-9034-265e6e198452?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20181124%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20181124T135016Z&X-Amz-Expires=300&X-Amz-Signature=5808f292ea4117773d2b57eb9894063fc6b00e6fc56507ab9c35f68c7ec4a108&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DbalenaEtcher-Portable-1.4.8-x64.exe&response-content-type=application%2Foctet-stream]Version portable X64
[/url]
Fait en sorte qu'il n'y ai pas de partition sur votre carte SD et lancer l'écriture de l'image.
Une fois terminé, il ne vous reste qu'à insérer votre carte SD et démarrer le RPI.

Pour les premières configurations, regarder il y a beaucoup de tuto sur internet ou j'en ferai un plus tard.

Afin que ça soit facile, on fait tout depuis un PC fixe ou portable.

Voici la première commande à entrer dans le terminal afin de mettre à jour les paquets ainsi que le système.

sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get -y dist-upgrade && sudo rpi-update -y

Une fois terminé (une opération qui est assez longue) on entre cette commande :
Voilà ce que donne le lancement :
igdlulx20t.png
On suit on met ok
yv0qrihod2.png
Idem
diqdrpyprk.png
Là on met ok sauf si le Rpi se connecte aussi en Wifi en plus du LAN.
Par contre je vous déconseille d'utiliser uniquement le Wifi à la place du LAN, ce qui est logique, le Wifi étant moins rapide qu'une connexion câble.
6md6ooyt5f.png
Ici, à choisir je prends Quad9 (un service de DNS français qui respecte la vie privée mieux que Google et consorts)
umtf5kpvvd.png
Là on ne touche à rien, on met ok direct
uhyo4xvsae.png
Pareil ici on vérifie que IPv4 et IPv6 soient bien cochés car on va filtrer les deux.
tvjyfjmhoe.png
Cette fenêtre nous demande si on accepte cette adresse IP qui fût donné par le DHCP comme IP Fixe (je vous conseille de la changer et d'utiliser une adresse proche de l'adresse de broadcast, exemple : 192.168.0.253)
rafkl1azcx.png
Un message peut s'afficher de conflit entre la réservation d'adresse IP fixé par bail DHCP permanent et celle que Pi-Hole va fixer.
En gros si vous avez configurer votre routeur pour que le Rpi garde cette IP, il faut supprimer le Bail DHCP.
usk05fllbv.png
Ici on nous demande si on installe l'interface Web, ce qui permet fort logique. On met ok
q68nwfzr1j.png
Ici on met oui aussi
lqduwwkft6.png
Ici on nous demande si on sauvegarde ou pas les logs, de base je mets oui, le temps de voir ce que donnent les premiers logs et plus tard je conseille de les désactiver afin de préserver la vie de la carte SD.
w1wddgmwch.png
Ici on nous informe que tout est prêt et ça nous donne l'adresse pour accéder et le mot de passe qui a été généré.
Retenez l'adresse d'accès et le mot de passe si vous comptez garder celui-ci.
wehlpbjcxp.png

Moi je préfère changer le mot de passe en utilisant la commande suivante :

pihole -a -p

hrzhwkuhqc.png

Enfin on se connecte sur l'interface d'administration, puis Settings et enfin DNS où on coche l'utilisation de DNSSEC (DNSSEC permet de sécuriser les données envoyées par le DNS. Contrairement à d'autres protocoles comme SSL, il ne sécurise pas juste un canal de communication mais il protège les données, les enregistrements DNS, de bout en bout. Ainsi, il est efficace même lorsqu'un serveur intermédiaire trahit. / Source Wiki).
u5jaf0xs63.png

Maintenant deux possibilités :
Soit votre Box pour autorise à modifier le serveur DNS par défaut comme Numéricable/SFR et Orange Fibre (je précise Fibre et non Adsl,) (et Free si je me souviens bien) donc régler ça dans votre box. Je ne peux vous faire de capture d'écran car j'utilise un routeur Ubiquiti mais vous pouvez trouver cette démarche sur le Web.
Soit votre Box vous l’interdit comme une partie des Box Orange ADSL, Bbox de Bouygues
Et là, il faudra configurer Pi-hole comme DHCP et désactiver celui de votre Box.
On fait ainsi :
Pi-hole -> Settings -> DHCP
Pour l'instant on ne touche à rien, on va sur les paramètres de la Box du FAI.
On désactive le DHCP du FAI en premier, on sauvegarde
On retourne sur Pi-hole, on coche DHCP server enabled et on active en sauvegardant.

0yuwwt1b8ky.png
Enfin,
On ouvre l'invite de commande Windows et on entre les deux commandes suivantes :

ipconfig -release
ipconfig -renew

J'éditerais plus tard pour la suite.

Cordialement,
DX90