💡
Vous aimeriez bloquer les publicités et traceurs sur tous les appareils de votre réseau local, câblés ou Wi-Fi ? Vous voulez vous affranchir de la surveillance DNS de votre fournisseur d'accès Internet ?

Pi-hole est fait pour vous, et ce tutoriel vous guide de l'installation à la configuration.

Présentation

Pi-hole est un logiciel libre sous licence EUPL, lancé en 2014 par Jacob Salmela et maintenu depuis par une communauté active de développeurs.

Son principe est simple : Pi-hole agit comme un "DNS menteur". Quand un appareil de votre réseau local demande l'adresse d'un domaine publicitaire ou traceur, Pi-hole répond simplement "cette adresse n'existe pas". La publicité est bloquée avant même d'être téléchargée.

Pour que cela fonctionne, Pi-hole doit devenir votre serveur DNS principal, en remplacement de celui de votre fournisseur d'accès. Pas d'inquiétude, on vous explique comment faire.

La différence à l'usage est frappante : un site d'actualité classique passe d'une page surchargée de bannières à un contenu lisible et net. Ci-dessous, voyez plutôt en image, la différence avec ou sans blocage de pubs :

Sans Blocage

Avec Blocage

Et cela s'applique à tous les appareils connectés à votre réseau local, même ceux où l'installation d'une extension de navigateur n'est pas possible (télévisions, objets connectés, téléphones Android sans root...).

Installation

Pré-requis

Pi-hole tourne sur n'importe quelle machine disposant d'au minimum 512 Mo de RAM et 8 Go d'espace disque. Comme ce serveur doit fonctionner 24h/24, nous recommandons vivement un nano-PC ou un SBC (comme un Raspberry Pi) pour la consommation électrique : quelques watts contre plusieurs dizaines pour un PC de bureau.

Les distributions GNU/Linux officiellement supportées en avril 2026 :

Distribution Versions supportées
Raspberry Pi OS (Raspbian) Bullseye, Bookworm
Debian 11 (Bullseye), 12 (Bookworm), 13 (Trixie)
Ubuntu 22.04 LTS, 24.04 LTS
Fedora versions récentes
CentOS Stream 8, 9
Nous recommandons Debian 13 Trixie, devenue version stable le 9 août 2025, que ce soit sur PC ou Raspberry Pi. C'est le choix le plus pérenne pour un serveur.
⚠️
Sur Raspberry Pi, Debian requiert le paquet non libre raspi-firmware, installé automatiquement. Pour le moment, il n'existe pas de remplacement stable entièrement libre.

Installation du système de base

Sur Raspberry Pi

Une version Debian maintenue par Gunnar Wolf est disponible pour les RPi, bien que non officielle :

  • Depuis votre PC, rendez-vous sur la page raspi.debian.net et téléchargez l'image xz-compressed pour Debian 13 (Trixie) correspondant à votre modèle de RPi, ainsi que le fichier sha256sum associé.
  • Vérifiez l'intégrité du fichier téléchargé grâce au SHA256.
  • Munissez-vous d'une carte SD d'au moins 8 Go.
  • Suivez les instructions d'installation officielles.

Sur PC

L'installation d'une Debian minimale adaptée à un serveur est documentée dans cet article :

Serveur sous Debian Stable
Installer et configurer un serveur Debian 13 Trixie, de l’ISO à la sécurisation de base.

N'importe quelle installation Debian 13 standard conviendra pour la suite.

Installation de Pi-hole

L'installation de Pi-hole se fait en une seule commande. Connectez-vous en SSH sur votre serveur fraîchement installé, puis lancez :

curl -sSL https://install.pi-hole.net | bash

L'installateur vous guidera avec quelques questions (interface réseau, fournisseur DNS racine, etc.). Répondez en suivant les suggestions par défaut, vous pourrez tout ajuster après.

⚠️
Notez bien le mot de passe affiché à la fin de l'installation : il est généré aléatoirement et vous en aurez besoin pour accéder à l'interface d'administration. Vous pourrez le changer immédiatement après.
💡
Remarque pour Debian 13 : Pi-hole v6 (sorti en février 2025) n'utilise plus lighttpd ni PHP. Il embarque son propre serveur HTTP léger. L'installation sur Debian 13 fonctionne sans configuration supplémentaire.

Configuration réseau

Pour que Pi-hole intercepte les requêtes DNS de vos appareils, il faut lui en donner le rôle. Deux situations se présentent selon votre box Internet.

Connexion à l'interface d'administration de votre box

Rendez-vous sur l'interface d'administration de votre opérateur :

Opérateur Adresse
Free (Freebox) http://mafreebox.freebox.fr
Orange (Livebox) http://192.168.1.1 ou http://192.168.0.1
SFR http://192.168.1.1
Bouygues http://192.168.1.1

Cas 1 : la configuration DNS est modifiable sur votre box

C'est le cas le plus simple. Dans l'interface d'administration de votre box, cherchez la section DNS (parfois appelée DDNS). Remplacez les adresses DNS par l'adresse IP fixe de votre serveur Pi-hole, et sauvegardez.

Suivez notre tutoriel dédié :

Changer les DNS sur votre box FAI
Ce tutoriel vous permet de modifier les DNS directement sur votre box FAI pour pointer vers des serveurs sécurisés…
⚠️
Attention : si le champ DNS est grisé, c'est que votre opérateur ne permet pas de le modifier. Passez au Cas 2.

Cas 2 : la configuration DNS n'est PAS modifiable

Dans ce cas, on va demander à Pi-hole de gérer aussi le DHCP, le service qui distribue les adresses IP sur votre réseau local.

Concrètement : votre box distribue normalement les IPs et les paramètres réseau (dont le DNS) à chaque appareil. En désactivant son DHCP et en activant celui de Pi-hole, vous permettez à Pi-hole de s'annoncer lui-même comme DNS auprès de tous vos appareils.

🚨
Attention : entre la désactivation du DHCP de la box et l'activation de celui de Pi-hole, aucun nouvel appareil ne peut obtenir d'IP automatiquement. Faites les deux opérations l'une après l'autre rapidement.

Désactiver le DHCP sur votre box

Dans l'interface d'administration de votre box, rendez-vous dans la section DHCP et désactivez-le. Sur une Livebox Orange, l'option se trouve dans "Réseau" > "DHCP".

Activer le DHCP sur Pi-hole

Ouvrez votre navigateur et connectez-vous à l'interface d'administration de Pi-hole :

http://192.168.1.100/admin/
⚠️
Remplacez 192.168.1.100 par l'adresse IP fixe que vous avez attribuée à votre serveur Pi-hole lors de sa configuration.

Une fois connecté :

  1. Cliquez sur Settings dans le menu de gauche.
  2. Ouvrez l'onglet DHCP.
  3. Cochez DHCP Server enabled.
  4. Dans le champ Router, saisissez l'adresse IP de votre box (généralement 192.168.1.1).
  5. Définissez la plage d'adresses IP à distribuer, par exemple de 192.168.1.120 à 192.168.1.254.
  6. Cliquez sur Save.
⚠️
Ne démarrez pas la plage à 192.168.1.1 : c'est l'adresse de votre box. Si certains appareils ont une IP fixe, excluez-les de la plage.

Paramétrage de Pi-hole

Mot de passe d'administration

Commencez par changer le mot de passe généré aléatoirement à l'installation. En SSH sur votre serveur :

pihole setpassword

Saisissez et confirmez votre nouveau mot de passe.

⚠️
Choisissez un mot de passe fort et stockez-le dans un gestionnaire de mots de passe. Consultez l'article Gestionnaire de mots de passe pour plus d'informations.

Reconnectez-vous ensuite à l'interface web avec ce nouveau mot de passe :

http://192.168.1.100/admin/

Comme vous le voyez, la page d'accueil du tableau de bord s'affiche.

Choisir un fournisseur DNS racine

Pi-hole a besoin d'un DNS "amont" pour résoudre les domaines qu'il ne bloque pas. Dans l'interface :

  1. Cliquez sur Settings dans le menu de gauche.
  2. Ouvrez l'onglet DNS.
  3. Cochez les cases IPv4 d'un fournisseur DNS. Nous recommandons Quad9 (filtered, DNSSEC) pour sa politique de confidentialité et son filtrage malware, mais vous pouvez en choisir un autre ou ajouter manuellement un DNS non listé.
  4. Laissez les autres paramètres par défaut.
  5. Cliquez sur Save.

Mise à jour des listes de blocage

Le blocage repose sur des listes de domaines stockées dans la base de données Gravity de Pi-hole. Pour la mettre à jour manuellement :

  1. Cliquez sur Tools dans le menu de gauche.
  2. Cliquez sur Update Gravity.
  3. Cliquez sur le bouton Update.

La mise à jour est terminée quand le message vert "Success!" apparaît en haut de page :

Ajout de nouvelles listes de blocage

Pi-hole inclut par défaut la liste StevenBlack/hosts, une référence solide et régulièrement mise à jour. Vous pouvez y ajouter d'autres listes selon votre niveau de filtrage souhaité.

Deux listes maintenues par la communauté, au choix selon votre tolérance aux faux positifs :

  • Liste complète (plus agressive) : https://sammatthews.co.uk/assets/Full-on-ad-trackinglist.txt
  • Liste légère (moins de faux positifs) : https://sammatthews.co.uk/assets/lite-list.txt

Pour ajouter une liste :

  1. Cliquez sur Adlists dans le menu de gauche.
  2. Collez l'URL de la liste et ajoutez un commentaire pour vous y retrouver.
  3. Cliquez sur Add.

Une fois la liste ajoutée, relancez une mise à jour Gravity pour l'intégrer.

💡
Plus une liste est agressive, plus le risque de bloquer des domaines légitimes ("faux positifs") augmente. Commencez avec la liste légère, et observez quelques jours avant de passer à la version complète.

Mise à jour de Pi-hole

Quand une mise à jour est disponible, un bandeau apparaît en bas de l'interface d'administration. Lisez les notes de version avant de procéder.

Pour mettre à jour, connectez-vous en SSH sur votre serveur et lancez :

pihole update

Attendez la fin du processus. Le message [✓] Update complete! confirme que tout s'est bien passé.

💡
Pi-hole publie régulièrement des mises à jour de sécurité et de listes. Mettez-le à jour au moins une fois par mois.

Désactiver Pi-hole temporairement

Certains sites refusent parfois de fonctionner correctement quand Pi-hole bloque un domaine dont ils dépendent.

  • Pour vérifier si Pi-hole est en cause, désactivez-le temporairement via le menu de gauche Disable Blocking : vous pouvez choisir 10 secondes, 30 secondes, 5 minutes, ou indéfiniment.

Si le site fonctionne après désactivation, le domaine bloqué est probablement légitime. Vous pouvez alors l'ajouter à la liste blanche (whitelist) de Pi-hole.

Références


Contributeur(s): Marmotte, Theudric