Pi-Hole est un projet libre de blocage des publicités pouvant fonctionner sur un Raspberry Pi et de manière générale sur les distributions basées sur Debian : Raspbian, Kali, Ubuntu, etc.
Plutôt que de bloquer les publicités avec un AdBlock like sur vos machines Pi-Hole va s'en charger pour tout votre réseau local.
Principe de fonctionnement
Pi-Hole va assurer va assurer le rôle de serveur DNS grâce à Dnsmasq et des fichiers texte contenant des domaines bloqués pointants vers 0.0.0.0 (une adresse non routable). En sorte c'est un bon vieux DNS menteur. Plutôt que d'utiliser votre box/routeur comme DNS il faudra que toutes vos machines pointent vers Pi-Hole pourla résolution IP.
Cela 29, et même de bloquer les publicités là où c'est normalement pas possible (console de jeu, camera IP connectée au cloud, etc).
Installation
C'est un jeu d'enfant. Saisir la commande dans un terminal :
curl -L https://install.pi-hole.net | bash
Laissez-vous guider par l'assistant qui va vous poser quelques questions.
Interface web sympa
Une chouette interface web est accessible sur http://ip/admin
Le menu Query Log permet de visualiser toutes les requêtes, particulièrement pratique pour inspecter les communications d'un périphérique douteux acheté sur banggood 🙂 Même si le niveau de détail ne sera pas aussi précis qu'avec un routeur Tomato avec tcpdump qui englobera tout le trafic.
Chemins utiles
Configuration Dnsmasq utilisée par Pi-Hole (si besoin de changer de DNS externe) :
/etc/dnsmasq.d/01-pihole.conf
Liste par défaut (modifiable via l'interface web)
/etc/pihole/adlists.default
Savoir si un site web est présent dans une des listes :
# pihole -q m6.fr
::: /etc/pihole/list.0.raw.githubusercontent.com.domains (1 results)
0.0.0.0 m6.fr.2mdn.net
Activer le mode debug (ctrl+c pour le stopper ensuite):
pihole -d
Log des résolutions DNS (log-facility) :
/var/log/pihole.log
Mise à jour des listes : Log des résolutions DNS (log-facility) :
pihole -g
Ajoutez la commande en crontab pour une mise à jour automatique.
Conclusion
Cette solution est intéressante car libre, et vous pourrez customiser au maximum les listes en ajoutant des domaines à bloquer. Néanmoins elle ne se révelera pas aussi effiace qu'une extension uBlock qui va réussir à bloquer des éléments plus finement (expressions régulières, CSS, etc).
Si comme moi vous avez un routeur Tomato cela vous permettra de vous inspirer de la configuration pour l'insérer dans Dnsmasq (menu Advanced > DHCP/DNS > Dnsmasq).
Enfin, si vous préférez utiliser Unbound au lieu de Dnsmasq je vous invite à suivre le tutoriel de Tuxicoman.
Merci @Yrill pour la découverte
Auteur : Mr Xhark
Fondateur du blog et passionné par les nouvelles techno, suivez-moi sur twitter
4 commentaires
Je l'ai installé hier (trouvé sur Framasphère)
Il fonctionne très bien sur RaspberryPI 3
A propos du cron,Les commandes les plus utiles sont ici
https://github.com/pi-hole/pi-hole/blob/master/advanced/pihole.cron
j'aimerais bien l'installer mais après avoir regardé la vidéo qui explique l'installation https://pi-hole.net/ je ne vois pas où, dans ma livebox, je peux ajouter "static DNS"...une idée ? merci, de plus peut-on installer pi-hole à coté d'autres programmes sur le pi ou faut-il avoir un pi dédié à pi-hole ?
C'est to Raspberry qui doit prendre une adresse statique
Il y a des articles à gauche et à droite
http://www.skanc.com/?p=245
http://www.suntimebox.com/raspberry-pi-tutorial-course/week-3/day-5/
On peut parfaitement installer pi-hole à côté d'autres programme
La consommation mémoire et cpu est gérable (mais j'ai un pi-3)
Le seul truc : l'interface d'admin pi-hole est sur le port 80
Il ne faut pas avoir de serveurs web sur ce port (our les changer)
J'avais par exemple le "default" de nginx que j'ai viré
merci, je viens de l'installer et mes autres programmes fonctionnent bien à coté.
Arnauld