pi-hole : bloquer la publicité et trackers

Bloqueur de pub détectée - Vous bloquez l'affichage des publicités.
Pour soutenir le site, merci de bien vouloir laisser les publicités s'afficher.

Plus d'informations : Comment désactiver les bloqueurs de publicité sur un site internet.

pi-hole est un projet libre qui permet de créer un serveur pour bloquer la publicité et le pistage sur internet (trackers).
pi-hole vous protège des publicités et trackers grâce à un blocage efficace pour une meilleur vie privée.
Ce dernier fonctionne en Linux et peut se voir donc comme un serveur anti-publicité et anti-trackers.
On peut l'installer sur raspberry pi dans un réseau LAN ou sur un serveur dédié sur internet.

Dans cet article, vous trouverez une présentation de pi-hole mais aussi comment l'installer.

pi-hole : bloquer la publicité et trackers

Pi-hole : comment ça fonctionne ?

Dans un précédent article, j'avais présenté un Serveur d’anonymat : OpenVPN + Proxy et TOR.
Mais ce dernier n'est pas simple à mettre en place.
Avec Pi-hole vous créez un serveur de blocage de la publicité et filtrage des trackers.
Tout est clé en main et relativement facile à installer.

Pi-hole est un DNS sinkhole qui protège vos appareils contre le contenu indésirable, sans installer de logiciel côté client.
Cela est assez pratique pour les petites configurations car vous évitez de surcharger le navigateur internet.

Voici les caractéristiques et avantages qu'offrent pi-hole :

  • Facile à installer : notre installateur polyvalent vous guide tout au long du processus et prend moins de dix minutes.
  • filtrage complet contre les trackers : le contenu est bloqué dans des emplacements autres que des navigateurs, tels que les applications mobiles chargées de publicités et les téléviseurs intelligents.
  • Réactif : accélère de manière transparente la sensation de la navigation quotidienne en mettant en cache les requêtes DNS.
  • Léger : fonctionne sans problème avec des exigences matérielles et logicielles minimales. Une machine avec 512Mo RAM suffit.
  • Robuste : une interface de ligne de commande dont la qualité est garantie pour l'interopérabilité.
  • Perspicace : un magnifique tableau de bord d'interface Web réactif pour afficher et contrôler votre trou Pi.
  • Polyvalent : peut éventuellement fonctionner comme un serveur DHCP, garantissant que tous vos appareils sont automatiquement protégés.
  • Évolutif : capable de gérer des centaines de millions de requêtes lorsqu'il est installé sur du matériel de qualité serveur.
  • Moderne : bloque les publicités sur IPv4 et IPv6.
  • Gratuit : logiciel open source qui vous aide à être le seul à contrôler votre vie privée.
Le serveur de blocage gère des listes de blocages. Vous pouvez en ajouter par exemple pour filtrer les sites pornos et vous en servir en tant que contrôle parental.

Le serveur pi-hole de filtrage et anti-publicité et trackers.

Enfin le serveur pi-hole fonctionne avec les éléments suivants :

  • dnsmasq - un serveur DNS et DHCP léger.
  • curl - Un outil en ligne de commande pour transférer des données avec la syntaxe URL.
  • lighttpd - serveur web conçu et optimisé pour de hautes performances.
  • php - un langage de script Web à usage général populaire.
  • AdminLTE Dashboard - panneau de contrôle d'administration premium basé sur Bootstrap 3.x.

Et voici l'interface WEB de gestion de pi-hole d'où on configure le filtrage et la configuration.
De plus, des statistiques complètes de blocages et requêtes sont disponibles.

La page d'administration de pi-hole : un serveur de bloqueur de publicité et trackers

Dans le top 10 des adresses bloquées, on constate aussi que ce dernier bloquer les serveurs de télémétrie de Microsoft et Mozilla.
Tout cela pour protéger la vie privée.

Statistiques de blocages des trackers, telemetrie et publicités sur l'interface WEB de pi-hole

Les architectures d'installation de pi-hole

Pi-hole s'installe sur une machine de votre choix.
Plusieurs modes sont possibles.

installer pi-hole sur un raspberry au sein d'un réseau local.
Ce dernier fait office de serveur DHCP et passerelle pour filtrer le trafic internet.

architecture pi-hole avec un raspberry au sein d'un réseau LAN.
L'article suivante écrit l’installation de pi-hole sur un raspberry : Installer un raspberry en routeur VPN + pi-hole (NordVPN ou ProtonVPN).

installer sur un serveur sur internet. On se connecte à ce dernier via un VPN là aussi pour bloquer les publicités et tracker.
L'avantage c'est qu'on peut l'utiliser sur son Smartphone Android via une connexion 4G.

Architecture de pi-hole avec un serveur anti-publicité distant sur internet

Dans cet article, nous allons voir comment installer l'architecture via un serveur.

Installer pi-hole

L'installation est vraiment simple car des scripts automatisés sont fournis.
Dans un premier temps, il faut installer openVPN.

Installer OpenVPN

Pi-hole fournot un script de gestion pour OpenVPN.

wget https://git.io/vpn -O openvpn-install.sh
chmod 755 openvpn-install.sh
./openvpn-install.sh

Laissez-vous guider et répondre aux questions, en laissant par défaut.

Installation d'OpenVPN au sein de pi-hole

Puis le script télécharger les packages et installent OpenVPN.

Installation d'OpenVPN au sein de pi-hole

Éditez le fichier suivant :

vim /etc/openvpn/server/server.conf

Remplacez la ligne push dhcp-option par celle-ci :

push "dhcp-option DNS 10.8.0.1"

Enfin enregistrez les modifications puis relancez le serveur VPN :

systemctl restart [email protected]
service [email protected] restart
[alert type="success"]Bravo ! Le serveur VPN est maintenant prêt![/alert]

On peut maintenant passer à l'installation du serveur pi-hole.

Installer pi-hole

Voici les étapes à réaliser afin d'installer un serveur pi-hole.
Vous devez posséder un serveur dédié en ligne, par exemple, un kimsuffi chez OVH.
Un VPS peut même suffire.

Si bind est installé, désinstallez le.

Ensuite passez les commandes suivantes pour télécharger et exécuter le script d'installation de pi-hole.

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

Une opération s'effectue puis l'assistant d'installation de pi-hole se lance.
Il faudra alors répondre aux configuration d'usage.
Sachez que vous pouvez les modifier plus tard depuis l'interface de gestion de pi-hole.

Installer pi-hole pour bloquer la publicité et les trackers

Puis vous arrivez à ces messages d'informations.

Installer pi-hole pour bloquer la publicité et les trackers

Ensuite vous devez choisir l'interface réseau où installer pi-hole.
Dans le cas d'un serveur par internet, il faut choisir l'interface VPN, soit tun0.

Installer pi-hole pour bloquer la publicité et les trackers

Ensuite, choisissez le fournisseur de serveurs DNS.
Pour des raisons de confidentialités, vous pouvez choisir Quad9.
Notez que vous pouvez définir le filtre et le changer ultérieurement.

Installer pi-hole pour bloquer la publicité et le pistage sur internet

Puis les listes de blocages à installer.

Installer pi-hole pour bloquer la publicité et le pistage sur internet

Les interfaces des adresses IP du serveur, laissez sur oui.

Installer pi-hole pour bloquer la publicité et le pistage sur internet

On vous demande si vous désirez installer l'interface WEB d'administration.
Pour faciliter la gestion pi-hole, répondez oui aux étapes suivantes.

Installer pi-hole pour bloquer la publicité et les trackers
Installer pi-hole pour bloquer la publicité et les trackers

Puis on indique si vous souhaitez enregistrer les requêtes DNS.

Installer pi-hole pour bloquer la publicité et les trackers

Enfin on définit le mode de fonctionnement lié à des règles de confidentialités.
C'est surtout liés aux statistiques, en effet, vous pouvez cacher les requêtes des domaines et clients.

Installer pi-hole pour bloquer la publicité et le pistage sur internet

Le téléchargement et l'installation s'effectue.

Installer pi-hole pour bloquer la publicité et le pistage sur internet
Installer pi-hole pour bloquer la publicité et le pistage sur internet

Enfin un message vous indique que l'installation est complète.
L'URL et le mot de passe administrateur est alors indiqué à la fin.

Installer pi-hole pour bloquer la publicité et le pistage sur internet
Bravo ! vous avez réussi à installer un serveur pi-hole pour filtrer et bloquer les publicités et trackers

Installer le client

Créer le client OpenVPN

Le serveur est prêt, nous pouvons créer le client openVPN.
Relancez le script OpenVPN :

./openvpn-install.sh

Ensuite dans le menu choisissez, l'option 1 pour ajouter un nouvel utilisateur.

Créer le certificat client OpenVPN pour pi-hole

Au final, le fichier /root/client.ovpn est créé.
C'est le fichier de configuration du client OpenVPN à mettre en place.

Sur Windows 10

Sur le PC à protéger, installez le client OpenVPN sur Windows ou Linux.

  • Pour Windows, suivre ce lien : Télécharger le client OpenVPN.
  • Copiez le fichier du client ovpn dans C:\Users\<user>\OpenVPN\config
  • Ensuite faites un clic droit sur l'icône OpenVPN
  • Le client VPN doit s'y trouver, lancez la connexion.
Installer le client OpenVPN pour pi-hole sur Windows 10
  • Enfin vérifiez la connexion et l'adresse IP. Par exemple avec ce lien.

Si tout fonctionne, l'IP retournée est celle du serveur pi-hole.
A partir de là, le filtrage est en place.

[alert type="success"]Bravo ! le blocage de la publicité est maintenant en place.[/alert]

Répétez l'opération pour d'autres PC en Windows.

Sur un téléphone Android

On peut aussi mettre en place pi-hole sur un smartphone Android.
Cela permet aussi de bloquer les publicités et trackers sur ce dernier.

  • Cherchez et télécharger l'application OpenVPN depuis Google Play.
  • Ensuite générer un fichier client OpenVPN et transférez le sur le smartphone.
  • Lancez l'application OpenVPN puis cliquez sur import file.
  • Puis cherchez le fichier client.ovpn depuis l'emplacement où vous l'avez transférez. Cela va importer la configuration VPN.
  • Si réussi, lancez la connexion
Installer le client OpenVPN pour pi-hole sur smartphone android
  • Enfin vérifiez l'adresse IP retournée par votre téléphone depuis le WEB.
Installer le client OpenVPN pour pi-hole sur smartphone android

Pihole et DNSCrypt, DoH

Pour plus de sécurité et confidentialité, on peut aussi ajouter le support DNSCrypt et DNS Over HTTPS dans pihole.
Pour plus d'informations, se reporter à cet article :

Exemple de blocage de la publicité par pi-hole

Ci-dessous un article du monde.fr sans bloqueur de publicité.
On voit une publicité en fond et sur le côte droit.

Exemple de blocage de la publicité par pi-hole

Le même article en utilisant pi-hole.
Les publicités ne s'affichent plus et on voit qu'une bonne partie des trackers sont bien bloqués.
Moins d'éléments à charger et donc la page s'affiche plus rapidement.

Exemple de blocage de la publicité par pi-hole

Enfin le serveur anti-publicité bloque aussi les Tracker first-party.
Il faut aussi ajouter des listes, on en trouve alors sur la page : Geoffrey Frogeye's block list of first-party trackers
On le voit ci-dessous lors d'une tentative de connexion au site de liberation.fr.

Bloquer les Tracker first-party avec pi-hole

Administrer pi-hole

pi-hole s'administre donc depuis une interface web ou en ligne de commandes.
Rendez-vous sur la page : http://adresseip/admin/index.php
Saisissez le mot de passe indiqué à la fin de l'installation.

Administrer pi-hole - le serveur de blocage de la publicité et trackers
Le site fournit la liste des principales commandes : The pihole command

Mettre à jour pihole

Pour mettre à jour pihole, vous pouvez utiliser la commande suivante :

pihole -up
Administrer pi-hole - Mettre à jour pihole

Ce dernier vérifie alors si de nouveaux packages sont disponibles.
Si c'est le cas, il les télécharge et les installe automatiquement.

Ajouter et mettre à jour les listes de blocages

Depuis le menu Settings > Blocklists, vous gérez les listes de blocage.
Il suffit de saisir l'URL puis cliquez sur Save.
Enfin le bouton Save and update permet de mettre à jour les listes.

Ajouter et mettre à jour les listes de blocages dans pi-hole

Vous cherchez les meilleurs listes de blocages pour pi-hole ?
Sur les sites suivants, vous trouverez des listes de blocages :

Les deux premiers liens vous donnent les listes EasyList.
Pensez à les ajouter.

Ajouter et mettre à jour les listes de blocages dans pi-hole

Mais on peut aussi le faire en ligne de commandes avec la commande suivante.

/usrc/local/bin/pihole -g

Vous pouvez alors l'intégrer dans un cron pour des mises à jour automatiques des listes de blocages.

Ajouter et mettre à jour les listes de blocages dans pi-hole

Ainsi, on peut porter la liste noire à plus de 150 000 sites bloqués.

Ajouter et mettre à jour les listes de blocages dans pi-hole

Sites et domaines en liste noire et blanche

Vous pouvez placer un domaine à tout moment en liste blanche.
Cela évite le blocage de ce dernier.
D'ailleurs vous pouvez suivre cette page avec les services communs : Commonly Whitelisted Domains

Ajouter un domaine ou site en liste noire ou blanche sur pi-hole

Mais on peut aussi mettre un site en liste noire.
A partir de là, l'accès devient impossible.
Par exemple ci-dessous on peut le site pour adulte pornhub.

Ajouter un domaine ou site en liste noire ou blanche sur pi-hole

Voici les paramètres à utiliser pour blacklister en ligne de commandes :

pihole -w --help, pihole -b --help, pihole -regex --help, pihole -wild --help

Les domaines sont stockés dans les fichiers de configurations suivants :

  • /etc/pihole/whitelist.txt
  • /etc/pihole/blacklist.txt et pour les regex : /etc/pihole/regex.list

pi-hole en vidéo

Enfin une vidéo qui reprend une bonne partie de ce tutoriel.

Liens

Vous avez trouvé cet article utile et interressant, n'hésitez pas à le partager...

Trouver la solution sur le forum d'aide

Vous êtes arrivé au terme de l'article pi-hole : bloquer la publicité et trackers mais vous n'avez pas trouvé la solution à votre problème...
Suivez ces articles du forum pour trouver une réponse ou demandez à votre tour de l'aide sur le forum