Bloquer toutes les publicités internet grâce à Pi-Hole

Cédric
28 mars 2019

Aujourd’hui, la publicité envahit internet, si bien que des logiciels ont été réalisés pour bloquer les publicités et ne plus les afficher: les adblockers. Il s’agit souvent d’extensions ou plugins à installer sur notre navigateur internet. La principale contrainte est de devoir installer cela sur chaque appareil: ordinateur, tablette, smartphone, etc. sans compter que cela est impossible sur certains périphériques, tels que les TV ou consoles par exemple. Et si on filtrait les publicités directement à la source ? C’est ce que permet Pi-Hole, un logiciel open source extrêmement bien réalisé. Une fois mis en place, tout le trafic internet passe par Pi-Hole, qui se charge de nettoyer les sites des publicités. Il filtre en fait toutes les requêtes DNS grâce à des listes de domaines bloqués, comme le fait par exemple AdBlock. Son gros avantage: une seule installation, effective automatiquement sur tous les appareils de la maison, de l’ordinateur au smartphone, en passant même par la TV et les consoles de jeux.

I. Installation de Pi-Hole sur une machine virtuelle

A la base, Pi-Hole a été réalisé pour être installé sur un Raspberry Pi. Cela permet d’obtenir un bloqueur de publicité hardware à peu de frais. Mais il peut être installé sur tout type de machine tournant sous Linux, et même sous forme de Docker. Ici je l’ai installé sous forme de machine virtuelle sur mon Nas Synology (comme je l’avais expliqué dans mon article pour installer Jeedom en machine virtuelle sur Synology, c’est exactement le même principe).

installation pi hole 15
Pi-Hole tourne ici en machine virtuelle sur Synology. Il est très peu gourmand en ressources, puisqu’il fonctionne ici avec seulement 512Mo de Ram affectée.

Bref, pour commencer, il nous faut donc une machine sous Linux, qu’elle soit physique (exemple Raspberry Pi) ou virtuelle (ici Virtual Manager sur Synology). Cela concerne aussi bien Debian, Ubuntu, Fedora, CentOS, ou encore Raspbian. Pi-Hole est peu gourmand en ressources, puisqu’il demandera moins de 100Mo sur disque dur, et 512Mo de Ram. C’est pourquoi il peut tout à fait fonctionner sur un Raspberry Pi.

Note: Avant de commencer, effectuez un test de vitesse sur speedcheck.org par exemple pour vous assurer que votre connexion Internet est suffisamment rapide.

Une fois la machine prête, on s’y connecte en SSH, et on tape ces deux commandes:

wget -O basic-install.sh https://install.pi-hole.net
sudo bash basic-install.sh

La première ligne va récupérer le script d’installation, et la seconde va l’exécuter, pour lancer l’installation de Pi-Hole.

installation pi hole 1

Le script effectue quelques vérifications au lancement, pour s’assurer que la configuration de la machine est correcte.

installation pi hole 2

Une fois validée, des paquets nécessaires à l’installation sont téléchargés.

installation pi hole 3

Puis l’installation proprement dite démarre.

installation pi hole 4

Il nous est conseillé d’utiliser une adresse IP fixe. Logique, puisque tous les appareils devront se connecter à Pi-Hole pour filtrer la publicité. Avec une adresse qui ne cesse de changer, cela pourrait poser des soucis…

installation pi hole 5

Il nous faut ensuite choisir un serveur DNS, ce serveur qui fait la liaison entre les noms des sites que nous visitons et leurs adresses IP. Ici j’ai opté pour Quad9, un petit nouveau, public, et accessible de manière sécurisée et sans logs, pour protéger sa vie privée).

installation pi hole 6

Une liste contenant tous les serveurs de publicités nous est ensuite proposée. On laisse tout coché par défaut comme c’est :)

installation pi hole 7

Idem pour le protocole utilisé:

installation pi hole 8

Pi-Hole propose une interface Web, qu’on peut ou non installer. Par défaut on la laisse s’installer, elle sera bien pratique par la suite.

installation pi hole 9

On peut régler le niveau de confidentialité: par défaut, on saura quelle IP a tenté d’accéder à quel site, à quelle heure, etc. On peut choisir de masquer certaines infos. Nous sommes ici dans un cadre privé et familial, on laisse par défaut…

installation pi hole 10

L’installation se poursuit alors avec l’installation de divers paquets.

installation pi hole 11

Après quelques minutes, l’installation se termine, et un écran nous résume les informations importantes: l’adresse IP de Pi-Hole, l’adresse pour son administration web, et enfin le mot de passe pour y accéder.

A lire également:
Installation de Frigate sur le mini pc NiPoGi GK3 Plus pour une vidéosurveillance au top !

[wpsm_box type= »warning » float= »none » text_align= »left »]Notez bien le mot de passe donné ici à la fin de l’installation, car il ne vous sera plus rappelé nulle part ![/wpsm_box]

installation pi hole 12

C’est terminé pour l’installation. Passons maintenant à son utilisation !

II. Utilisation de Pi-Hole

Pour pouvoir utiliser Pi-Hole, il va tout d’abord falloir y diriger notre flux internet. Ici, deux solutions.

Soit on décide de filtrer TOUT notre flux internet, quelque soit la machine. Dans ce cas le plus simple est de modifier l’adresse du serveur DNS sur notre routeur. Ici sur notre routeur Orbi RBK20, nous indiquons l’adresse IP de la machine Pi-Hole, par exemple 192.168.0.10. En dessous, j’indique par précaution un serveur DNS secondaire, celui que j’avais avant par défaut, par exemple 192.168.0.1. Ainsi, si jamais Pi-Hole venait à planter, le routeur passerait automatiquement sur le serveur DNS secondaire et l’accès à internet continuerait de fonctionner pour tout le monde. Sans cela, tout le réseau de la maison tomberait.

installation pi hole 16

Mais on peut également décider de ne filtrer que certaines machines. Dans ce cas, on ne touche pas au routeur, mais on va modifier l’adresse du serveur DNS sur chaque machine où on veut bénéficier du filtre. Ici sur Mac, par exemple, je vais dans les réglages réseau, et je remplace l’adresse DNS par celle de Pi-Hole:

installation pi hole 17

Une fois l’adresse DNS modifiée, que ce soit sur le routeur ou sur un appareil en particulier, le filtrage va démarrer automatiquement. Tel quel, il n’y a plus rien à faire, Pi-Hole fait parfaitement son boulot !

On peut néanmoins se rendre sur son interface web pour en apprécier un peu plus le fonctionnement, en se rendant sur l’adresse http://IP_SERVEUR_PIHOLE/admin/ . On renseigne alors le mot de passe qui nous avait été donné lors de l’installation.

installation pi hole 14

Nous avons alors un bel affichage graphique de toutes les requêtes web réalisés, et des publicités bloquées:

pi hole 01
pi hole 02

L’interface est même totalement responsive pour une consultation sur mobile par exemple.

A lire également:
DSL, fibre optique, LTE, câble et satellite: on fait le point sur les connexions internet

Dans le menu de gauche, nous pouvons accéder à diverses informations, comme la liste de toutes les requêtes reçues, autorisées ou non, avec possibilité d’interdire ou autoriser manuellement un domaine.

pi hole 03

Nous avons en effet la possibilité de gérer manuellement des listes blanches (pour autoriser certains domaines) et des listes noires (pour au contraire en interdire). Ici, par exemple, j’ai autorisé googleadservices.com, pour une raison toute simple: quand on fait une recherche sur Google, les premiers résultats sont souvent des pages ayant payé pour être mieux positionnées. On a en effet tendance à cliquer plus facilement dessus, et sans autoriser ce domaine, ces pages deviennent inaccessibles. A l’utilisation, c’est un peu contraignant (demandez à Madame ;-)

pi hole 04
pi hole 05

Dans la partie paramètrage, il est possible également de gérer les listes de blocage.

pi hole 07

Celles indiquées par défaut sont déjà bien fournies, mais vous pouvez ajouter celles ci sans problème pour être encore plus exhaustif:

  • https://raw.githubusercontent.com/Spam404/lists/master/main-blacklist.txt
  • https://ransomwaretracker.abuse.ch/downloads/RW_DOMBL.txt
  • https://gitlab.com/ZeroDot1/CoinBlockerLists/raw/master/list.txt
  • https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts

Vous pourrez trouver d’autres listings de ce genre sur https://firebog.net/

Enfin, toujours dans le menu, vous avez la possibilité de suspendre le filtrage pour des durées prédéfinies, personnalisées, ou un arrêt total:

pi hole 06

L’interface permet donc déjà beaucoup de choses. On peut même déléguer le rôle de serveur DHCP à Pi-Hole, afin qu’il gère l’attribution des adresses IP sur le réseau par exemple. Une gestion du cache permet également de mettre en cache les requêtes DNS afin d’accélérer l’accès aux sites, etc.

Mais nous pouvons aller encore un peu plus loin, grâce à un plugin sorti sur la solution domotique Jeedom récemment.

III. Utiliser Pi-Hole avec Jeedom

Sur le market Jeedom, nous pouvons trouver un plugin sobrement appelé « PiHole« . Il suffit de l’installer comme n’importe quel autre plugin.

pi hole 09

Ensuite, dans l’interface de Pi-Hole, il nous faut récupérer une clé API, disponible sur l’onglet « API / Web Interface », via le bouton tout en bas à gauche « Show API Token ».

pi hole 08

Sur Jeedom, on crée un nouvel équipement « Pi-Hole », et on indique l’adresse IP de notre serveur Pi-Hole, ainsi que la clé API récupérée précédemment.

pi hole 10

On valide, et on obtient un widget de ce style:

pi hole 11

Diverses informations peuvent être ajoutées, il suffit de les rendre visibles dans la configuration du widget. On peut ainsi voir le nombre de requêtes effectuées, le nombre de publicités bloquées, le statut du serveur, mais on peut également le mettre en pause ou encore le relancer.

D’ailleurs, cette possibilité peut être intéressante pour programmer le filtrage: par exemple, travaillant à la maison essentiellement sur des projets web, j’ai besoin de voir les sites tels que tout le monde les voit, je peux donc désactiver le filtrage de 9h à 17h, par exemple. En dehors de ces horaires, Jeedom réactive le blocage, ce qui évite notamment aux enfants de voir des publicités déplacées.

A lire également:
Installation de Frigate sur le mini pc NiPoGi GK3 Plus pour une vidéosurveillance au top !

IV. Pi-Hole: pour ou contre ?

L’affichage ou non des publicités est une question qui fait polémique. Les publicités sont aujourd’hui l’un des seuls revenus de nombreux sites. Ils permettent de payer certains pigistes dans le cas de sites professionnels, ou tout au moins de couvrir certains frais de fonctionnement dans le cas de sites plus personnels, comme le mien. Sans ce revenu, de nombreux sites fermeraient. Beaucoup l’ont d’ailleurs déjà fait, devant la baisse de revenus due justement aux bloqueurs de publicité. Je pense qu’il faut y aller avec parcimonie. Personnellement je passais déjà sur liste blanche les quelques sites que je fréquente chaque jour, et qui usent de la publicité de façon modérée. Je trouve normal qu’ils aient un peu de revenu en contrepartie des informations qu’ils nous livrent gratuitement. De plus, quand elles sont correctement utilisées, les publicités permettent parfois de nous faire découvrir d’autres sites intéressants. J’ai donc refait la même chose sur Pi-Hole, en ajoutant ces sites à la liste blanche. En parallèle, Pi-Hole allège considérablement l’affichage de certains sites qui abusent exagérément des publicités, rendant la navigation difficile, et pour cela je l’apprécie beaucoup.

Ensuite, outre cet aspect, il y a également un aspect technique: il ne faut pas non plus que Pi-Hole nous empêche d’accéder à certaines choses importantes. Par exemple, il y a quelques jours, lors d’une commande sur le store Google, il m’était impossible de passer à l’étape du paiement. Une fois Pi-Hole désactivé, tout est rentré dans l’ordre et j’ai pu valider ma commande. Même chose avec les sites « sponsorisés » affichés en tête des résultats Google, qui parfois correspondent exactement à ce que nous cherchons. Pi-Hole est donc extrêmement pratique et bien conçu, mais le filtrage nécessite d’être correctement configuré afin qu’il ne devienne pas plus contraignant qu’autre chose.

Donc pour ou contre ? Personnellement je suis pour ! Pour une utilisation globale sur tout le réseau, à condition de configurer correctement le paramétrage. De toute façon si celui ci est trop contraignant, vous aurez rapidement des nouvelles de madame ou des enfants ;-) Si on ne souhaite pas le mettre sur tout le réseau, je pense que Pi-Hole restera très utile notamment pour filtrer tous les accès des enfants par exemple. Une gestion centralisée du bloqueur de pub, avec simplement la modification de l’adresse DNS à faire sur leur smartphone / tablette / ordinateur, et le tour est joué. Ne serait ce que pour cette utilisation, je ne peux que le conseiller :)

share Partager

Ces articles pourraient aussi vous intéresser:

Gaming et éclairage connecté : transformez la chambre de votre ado en véritable arène esport !

Découvrez comment créer une chambre d'ado gaming immersive en synchronisant l'applique murale et le lustre moderne avec votre setup PC. Guide complet sur les protocoles d'éclairage et solutions connectées pour une expérience de jeu unique.

DSL, fibre optique, LTE, câble et satellite: on fait le point sur les connexions internet

Actuellement, il existe de multiples façons d'accéder à Internet, ou plus précisément, divers types de connexions en ligne. En outre, des tendances comme le télétravail et le streaming de divertissement ne cessent d'augmenter les besoins en bande passante. Pour profiter de services de qualité, il est important de comprendre les différences entre le DSL, le câble, la fibre optique et même la téléphonie mobile, devenue elle aussi un moyen de connexion à internet.

Installation de Frigate sur le mini pc NiPoGi GK3 Plus pour une vidéosurveillance au top !

Ce guide explique comment installer Frigate sur un mini PC NiPoGi GK3 Plus à 200€, pour obtenir un système de vidéosurveillance ultra complet, intégrable à Jeedom ou Home Assistant.

29 réactions

Marbaf
28 mars 2019

Merci pour cet article. J’avais croisé ce nom là sur un forum sans m’y attarder, maintenant je sais.
Est-ce que la rapidité/confort de surf, l’accès aux services en ligne (Netflix, Deezer,…) s’en ressent ?

Zek
28 mars 2019

Bonjour,
Utilisateur de pihole depuis plusieurs mois, est ce que tu constate aussi un nombre important de requêtes provenant du synology ? , a tel point que j ai configuré les dns du syno pour ne pas utiliser le pihole ….

Cédric Locqueneux
28 mars 2019

C’est en place à la maison depuis un peu plus d’un mois, et je n’ai pas ressenti de soucis particulier à ce niveau là, non.

Cédric Locqueneux
28 mars 2019

Non, pas spécialement. Après ca dépend aussi des services et packages installés, je pense. Le Syno en lui même n’a pas à faire de requêtes vers l’extérieur.

Zek
28 mars 2019

@marbaf , perso sur un hummingboard ( équivalent raspberry mais avec interface giga et plus de ram), je ne vois pas la différence de vitesse , j aurais tendance a dire que l affichage des pages web est plus rapide ( normal plus de pub a charger ).
c est même surprenant de visiter un site a la maison ( sur le smartphone, donc wifi , pas de pub ) et revoir la meme page en extérieur en 4G ( blindée de pub )

Pour Netflix, j utilise le client intégré a ma tv samsung , rien à signaler ( et j avais déjà pas de pub sur la tv , je ne sais pas si la version navigateur de Netflix en as ).

Stéphane
28 mars 2019

D’ailleurs, pour ceux qui ne veulent pas s’embêter j’ai crée un serveur Pi-Hole sur un dédié qui ne s’appuie pas sur d’autres serveurs DNS (autre que les root-server) : http://51.15.237.181/

Il est optimisé pour le filtrage de pub en anglais et en français (ce que les autres Pi-Hole publiques ne proposent pas…

Pour le filtrage sur smartphone (surtout pour les connexions hors-WiFi) je vous conseille l’app Android DnsChanger…

Julien Ça Sert à Quoi?
28 mars 2019

Excellent article!
ca fait un moment que j’entends ce genre de solution mais je n’avais pas encore franchi le pas.
Tu m’as donné envie…
Ce week-end, je vais faire un essai en installant cela sur Proxmox.

par contre, comme tu le dit, il ne faut pas en abuser et laisser la pub sur certains site :)
moi je sais que le tien sera dans la white list ;)

Cédric Locqueneux
28 mars 2019

Merci !

Marbaf
28 mars 2019

@ZEK c’est en particulier pour Android, véritable nid à pub, que cette solution est intéressante. Sur un Pi, j’ai peur que ça fasse goulet…
@STÉPHANE Tu nous proposes de supporter tout notre trafic web gratuitement ? À un moment ton serveur va tousser non ?

mmm
28 mars 2019

J’utilise depuis plusieurs mois, ca marche nickel. Je recommande d’ajouter un script hebdomadaire qui fait les mises à jours + fail2ban.

Loup
28 mars 2019

Bonjour
Ceci est super intéressante, j’ai fait un test avec un seul ordi pour voir.
En mode normal tout fonctionne mais si j’active ExpressVPN, la ça ne fonctionne plus.
J’ai mis serveur DNS sur Pi-Hole, je n’ai surement pas la bonne façon.
Vous avez une idée??
Merci
Loup

Julien ça sert à quoi?
28 mars 2019

Ca y est c’est installé! merci pour ce tuto. bon par contre, en cliquant trop vite j’ai pas vu qu’il me donnait un mot de passe (tu peux mettre cette information en GROS). pas trop grave car la commande de récupération est donnée…

par contre, j’ai mis le pi Hole comme DNS de mon routeur mais dans ce cas, je ne vois pas l’ip qui a fait la demande… je ne vois que mon routeur comme client. tu as la meme chose?

vosmont
28 mars 2019

Hello,
je l’utilise aussi chez moi et ça filtre vraiment bien, même sur les appareils mobiles.

A noter qu’il faut aussi mettre un filtrage sur le router pour n’accepter les requêtes DNS vers l’extérieur que du PiHole (ou du serveur DNS local secondaire).
Il y a un paquet d’applis mobiles qui utilisent leur propre DNS sans prendre celui indiqué par le serveur DHCP. Ça leur permet surement de contourner le filtrage par DNS.
Même les Google Home prennent par défaut 8.8.8.8 (le DNS Google) !

Cédric Locqueneux
29 mars 2019

Ah, merci pour l’info, je ne savais pas ! Comment mets tu en place ce filtrage sur ton routeur, par contre ?

Cédric Locqueneux
29 mars 2019

Tu n’auras pas perdu de temps ! La commande est en effet donnée pour le mot de passe, j’ai eu le même cas que toi la première fois :p Je vais le mettre plus en évidence dans l’article :)
Si on change le DNS directement sur le routeur, en effet, on ne voit que l’IP de celui ci. J’ai pas réussi à avoir mieux, même en jouant avec les divers paramètres. Si on veut le détail, faut que Pi-Hole soit aussi serveur DHCP. Ou alors changer le DNS sur chaque appareil, mais c’est pas possible partout :/ Si tu trouves une autre astuce je suis preneur !

Bernard
29 mars 2019

Merci Cédric pour ce tuto, j’ai fait l’installation sur le synology, cependant je n’ai pas de blocage de mon coté. Les stats n’indiquent rien. J’ai pourtant indiqué dans mon routeur Ubiquiti l’adresse ip du synology en DNS numéro1 puis laisser 3 autres DNS au cas ou, mais rien ne fonctionne. J’avoue ne pas comprendre. J’utilise l’image pihole/pihole Est-ce que j’ai loupé quelque chose ?

vosmont
29 mars 2019

J’ai mis plusieurs règles firewall sur mon routeur pour LAN_IN (Ubiquiti USG):
– Autorisation des requêtes vers le port 53 (DNS) pour quelques appareils sur le réseau local (ça permet au PiHole d’appeler les serveurs DNS à l’extérieur).
– Autorisation des requêtes vers le port 53 et le serveur PiHole
– Blocage de toutes les requêtes vers le port 53

Domodial Bernard
30 mars 2019

@Vosmont forcément avec le port 53 déclaré ça fonctionne bien mieux ! Je n’avais pas vu qu’il fallait le faire ! Mon Dashboard commence à remonter des données ! Par contre toujours pas de blocage sur les pubs de ce site de test : https://www.adsbexchange.com/ad-test-page/?

Galaksy2001
30 mars 2019

Je cherchais un Raspberry dans un tiroir, je n’avais pas pensé à l’installer sur une VM …

Mis en place aussi aujourd’hui ! Merci pour l’article :)

envoyages
30 mars 2019

Attention Quad9 n’est pas aussi vertueux que vous le dite dans votre article. Je vous laisse éplucher cet article qui le décrit très bien : https://www.bortzmeyer.org/quad9.html

Merci pour vos tutos

Bernard Wojcieszynski
31 mars 2019

Bonjour, j’ai installé PiHole sur synology, il semble bien fonctionnel car j’ai énormément de blocage sur le dasboard avec des graphique et tout, mais il ne bloque rien en fait :( Les publicités de cette page ne sont pas bloqués, et aucune ailleur non plus. Je dirige bien le trafic sur mon synology. Un coup de main svp ?

domodial
31 mars 2019

Bonjour, j’ai installé PiHole sur synology, il semble bien fonctionnel car j’ai énormément de blocage sur le dasboard avec des graphique et tout, mais il ne bloque rien en fait :( Les publicités de cette page ne sont pas bloqués, et aucune ailleur non plus. Je dirige bien le trafic sur mon synology. Un coup de main svp ?

Philippe
31 mars 2019

Bonjour,
J’ai fait l’insall sur un Synology. Tout se passe bien, mais quand je vais sur l’adresse web d’administration j’ai le script suivant et pas la page web :

Que dois je faire ?

Philippe
31 mars 2019

Le script n’a pas été affiché. Voici le début :
* Pi-hole: A black hole for Internet advertisements
* (c) 2017 Pi-hole, LLC (https://pi-hole.net)
* Network-wide ad blocking via your own hardware.
*
* This file is copyright under the latest version of the EUPL.
* Please see LICENSE file for your rights under this license. */
$indexpage = true;
require « scripts/pi-hole/php/header.php »;
require_once(« scripts/pi-hole/php/gravity.php »);

Stéphane
1 avril 2019

Tu es bien certain soit d’être en DHCP (en ayant préalablement renseigné ton serveur Pi-Hole comme serveur DNS) ou bien d’avoir configuré l’IP de ton Pi-Hole manuellement depuis la configuration réseau de ton PC ? Car sinon il ne risque effectivement pas de bloquer grand chose ;)

Mbungu ngoma
9 novembre 2019

Je viens tout juste d’en faire connaissance sur un forum. Un petit tour sur Google et je me suis retrouvé sur cet article très bien détaillé qui explique ce que j’avais besoin de savoir sur ce mot.

Coup de chapeau !

Ludovic
14 avril 2020

Bonjour

Quel iso raqpian prenez vous pour la virtualisation?

Merci

Seb FORUM
27 avril 2020

Bonsoir, lorsque vous dites que PiHole va finalement voir tout le traffic, est ce que cela signifie que l’intégralité des données va transiter par la machine hôte ? Exp, si je passe une soirée sur Netflix ou Mycanal, mon Nas verra passer plusieurs Giga de vidéos ? Pas génial non ? Ou alors je rien compris ? Merci par avance !

Votre réaction
Nom
Adresse de messagerie
Site internet