[{"data":1,"prerenderedAt":328},["ShallowReactive",2],{"seo-verification":3,"blog-heberger-pi-hole-ma-fr":6,"promo-bar-likely":327},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-heberger-pi-hole-ma-fr",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"noindex":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":30,"intro":33,"sections":34,"ctaTitle":267,"ctaBody":268,"ctaButton":269,"ctaUrl":270,"relatedPosts":271},91,"heberger-pi-hole",{"fr":10,"en":12,"ar":13,"es":14},"hosting-pi-hole-on-your-own-vps","استضافة-pi-hole-على-خادم-vps-الخاص-بك","alojar-pi-hole-en-un-vps","Héberger Pi-hole sur votre propre VPS","Guide complet pour déployer Pi-hole v6 sur un VPS : installation, résolution du conflit port 53, Unbound pour la récursion DNS, whitelisting, métriques et sauvegarde.",17,4,false,"2026-03-21T00:00:00+00:00","2026-11-08T01:13:12+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},7,"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fheberger-pi-hole-poster.svg","Pi-hole transforme n'importe quel serveur Linux en un bloqueur de publicités et de traceurs à l'échelle du réseau. Hébergé sur un VPS, il protège tous vos appareils et tous vos conteneurs à la fois, sans extension à installer dans chaque navigateur. Ce guide couvre la version 6, publiée le 18 février 2025 avec une architecture réécrite, en installation native comme en Docker Compose. Il va plus loin que la simple installation : ne jamais servir un résolveur ouvert, port 53 pris par systemd-resolved, Unbound pour une récursion DNS complète, gestion des faux positifs, métriques et sauvegarde.",[35,38,41,51,53,85,87,89,97,100,102,124,126,128,136,139,141,143,158,160,162,177,179,181,199,201,203,212,214,217,246,248,250,265],{"type":36,"title":37},"h2","Pourquoi auto-héberger Pi-hole sur un VPS",{"type":39,"body":40},"p","La plupart des guides Pi-hole supposent un Raspberry Pi sur votre réseau local. Un VPS change radicalement l'équation : votre DNS bloqueur est joignable depuis n'importe quel appareil, n'importe où dans le monde. Configurez votre smartphone en déplacement pour pointer vers votre VPS, et les publicités disparaissent y compris sur les réseaux mobiles et les Wi-Fi publics.",{"type":42,"title":43,"items":44},"ul","Bénéfices concrets de Pi-hole sur VPS",[45,46,47,48,49,50],"Protection universelle : couvre tous vos appareils (PC, téléphones, tablettes) sans configuration par appareil","Réduction de la bande passante : les requêtes bloquées ne consomment aucun octet de téléchargement","Logs DNS centralisés : visibilité complète sur les domaines contactés par chaque appareil","Indépendance vis-à-vis des FAI : votre DNS ne transite plus par le résolveur de votre opérateur","Blocage des traceurs IoT : les objets connectés ne peuvent pas contacter leurs serveurs de télémétrie","Personnalisable : ajoutez vos propres règles, whitelistez ce dont vous avez besoin, choisissez vos listes",{"type":36,"title":52},"Pi-hole v5 vs Pi-hole v6 : ce qui a changé",{"type":54,"title":55,"col_a":56,"col_b":57,"rows":58,"headers":83},"comparison","Pi-hole v5 vs v6","Pi-hole v5","Pi-hole v6 (2025)",[59,63,67,71,75,79],[60,61,62],"Interface web","PHP + lighttpd","Application intégrée dans FTL, sans lighttpd",[64,65,66],"Moteur DNS","dnsmasq séparé","FTL unifié (Faster Than Light) embarque le DNS",[68,69,70],"API","API limitée, clé dans l'URL","API REST complète avec authentification par token",[72,73,74],"Configuration","Fichiers \u002Fetc\u002Fpihole\u002F*","Fichier TOML unique pihole.toml",[76,77,78],"Installation","Script curl | bash","Script curl | bash (identique, même URL)",[80,81,82],"Docker","Image pihole\u002Fpihole","Image pihole\u002Fpihole (mise à jour, même nom)",[84,56,57],"Critère",{"type":39,"body":86},"Pi-hole v6 est sorti le 18 février 2025. La migration depuis la v5 passe par le script d'installation habituel lancé sur un système déjà en v5 : Pi-hole détecte la version existante, propose la mise à jour et convertit la configuration au format TOML (`\u002Fetc\u002Fpihole\u002Fpihole.toml`). Si vous partez de zéro, installez directement la v6.\n\nDeux changements comptent pour un VPS. D'abord, chaque réglage de `pihole.toml` a son équivalent en variable d'environnement `FTLCONF_\u003Csection>_\u003Cclé>` : `WEBPASSWORD` de la v5 devient `FTLCONF_webserver_api_password`, et les serveurs amont s'écrivent `FTLCONF_dns_upstreams`, séparés par des points-virgules. Une variable posée ainsi passe en lecture seule dans l'interface : c'est la source de vérité. Ensuite, aux listes de blocage s'ajoutent des listes d'autorisation par abonnement (antigravity), pratiques pour neutraliser des faux positifs connus.\n\nAu 7 novembre 2026, les versions courantes sont Pi-hole Core `v6.5`, FTL `v6.8` et Web `v6.6.1` (17 octobre 2026) ; l'image Docker correspondante est `pihole\u002Fpihole:2026.10.1`, publiée le 31 octobre 2026 pour mettre à jour sa base Alpine.",{"type":36,"title":88},"Prérequis techniques",{"type":42,"title":90,"items":91},"Ce dont vous avez besoin",[92,93,94,95,96],"Un VPS sous Ubuntu 22.04\u002F24.04 ou Debian 12 avec au moins 512 Mo de RAM (1 Go recommandé)","Une adresse IPv4 statique et idéalement une adresse IPv6","Accès SSH root ou sudo","Le port 53 (TCP et UDP) fermé à Internet : ouvert seulement à l'interface WireGuard ou à vos propres adresses IP, jamais à tous","Port 80 ou 443 pour l'interface web (optionnel, mais recommandé avec HTTPS)",{"type":36,"title":98,"body":99},"Sécurité d'abord : pas de résolveur ouvert, et des mises à jour suivies","Sur un Raspberry Pi derrière une box, le port 53 n'est joignable que depuis la maison. Sur un VPS, il est sur Internet : un résolveur qui répond à tout le monde sert de relais aux attaques DDoS par amplification DNS, et votre IP finit sur des listes noires. Pi-hole le sait. Son mode d'écoute par défaut, « Allow only local requests », n'accepte que les hôtes d'un sous-réseau dont une interface existe sur le serveur ; le mode `ALL` « permet toutes les origines », et la documentation de FTL prévient qu'il peut faire de votre Pi-hole un résolveur ouvert s'il n'est pas protégé par un pare-feu.\n\nLa bonne architecture découle de là : vos appareils rejoignent le VPS par un tunnel \u003Ca href=\"\u002Fblog\u002Finstaller-wireguard-vps\">WireGuard\u003C\u002Fa>, dont le sous-réseau est local pour Pi-hole, et le port 53 reste fermé au reste du monde. Vérifiez-le depuis l'extérieur avec `nmap -sU -p 53 IP_DE_VOTRE_VPS` : le port doit apparaître `closed` ou `filtered`.\n\nSuivez aussi les correctifs. Pi-hole a publié en 2026 plusieurs séries d'\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpi-hole\u002FFTL\u002Fsecurity\u002Fadvisories\">avis de sécurité\u003C\u002Fa> (avril, mai, juillet, septembre et octobre), dont des exécutions de code à distance par injection dans la configuration, comme CVE-2026-35517 via `dns.upstreams`, et des élévations de privilèges locales. Le dernier lot est corrigé dans les versions du 17 octobre 2026. Lancez `pihole -up` en installation native, ou `docker compose pull && docker compose up -d` en Docker, et appliquez en parallèle \u003Ca href=\"\u002Fblog\u002Fsecurite-vps-mises-a-jour-automatiques-debian-ubuntu\">les mises à jour de sécurité automatiques du système\u003C\u002Fa>. Enfin, ne laissez pas le mot de passe vide : sans valeur fixée, Pi-hole en génère un aléatoire qu'il écrit dans les logs au premier démarrage. Pour un script ou un exporteur, créez un mot de passe d'application dans Settings → Web interface \u002F API plutôt que d'y copier le mot de passe administrateur.",{"type":36,"title":101},"Déployer Pi-hole pas à pas",{"type":103,"title":104,"steps":105},"steps","Installation complète sur Ubuntu\u002FDebian",[106,109,112,115,118,121],{"title":107,"body":108},"Désactiver le stub resolver de systemd-resolved","Sur Ubuntu et Debian récents, systemd-resolved occupe le port 53 en écoute locale. Pi-hole ne peut pas démarrer tant que ce port est pris. Éditez \u002Fetc\u002Fsystemd\u002Fresolved.conf et ajoutez DNSStubListener=no sous la section [Resolve]. Rechargez ensuite : sudo systemctl reload systemd-resolved. Vérifiez que le port est libre avec : ss -tulpn | grep ':53'.",{"title":110,"body":111},"Installer Pi-hole","Lancez le script officiel :\n\n```bash\ncurl -sSL https:\u002F\u002Finstall.pi-hole.net | bash\n```\n\nL'installateur vous demande l'interface réseau (souvent `eth0`) et le DNS amont (choisissez Custom si vous installez Unbound ensuite). Gardez le mode d'écoute par défaut, « Allow only local requests » : avec WireGuard, c'est celui qui convient. Notez le mot de passe admin affiché à la fin, ou fixez-le avec `pihole setpassword`.",{"title":113,"body":114},"Configurer le pare-feu","N'ouvrez pas le port 53 à tout Internet. Ouvrez le port de WireGuard, autorisez le DNS depuis le sous-réseau du tunnel, et refusez le reste :\n\n```bash\nsudo ufw allow 51820\u002Fudp\nsudo ufw allow from 10.8.0.0\u002F24 to any port 53\nsudo ufw deny 53\n```\n\nAdaptez `10.8.0.0\u002F24` au sous-réseau de votre tunnel. Si vous utilisez CSF ou firewalld, transposez les mêmes règles. L'interface web ne doit pas non plus être publique : passez par le tunnel ou par un reverse proxy HTTPS restreint à vos IP.",{"title":116,"body":117},"Vérifier le fonctionnement","Testez la résolution, puis le blocage, depuis le VPS lui-même ; vérifiez ensuite depuis l'extérieur que le port n'est pas joignable hors tunnel :\n\n```bash\n# depuis le VPS\ndig @127.0.0.1 google.com\ndig @127.0.0.1 doubleclick.net\n# depuis un poste extérieur, HORS tunnel : doit échouer\nnmap -sU -p 53 IP_DE_VOTRE_VPS\n```\n\n`google.com` doit renvoyer une adresse, `doubleclick.net` doit répondre `0.0.0.0`, et `nmap` doit afficher le port `closed` ou `filtered`.",{"title":119,"body":120},"Pointer vos appareils vers le VPS","Le plus simple est de passer par WireGuard : dans la configuration de chaque client, indiquez l'adresse de Pi-hole dans le tunnel comme serveur DNS, selon la méthode du \u003Ca href=\"https:\u002F\u002Fdocs.pi-hole.net\u002Fguides\u002Fvpn\u002Fwireguard\u002F\">guide WireGuard de Pi-hole\u003C\u002Fa> :\n\n```bash\n[Interface]\nAddress = 10.8.0.2\u002F32\nDNS = 10.8.0.1\n```\n\nSur Android, le « DNS privé » ne convient pas : il attend le nom d'hôte d'un fournisseur DNS-over-TLS, pas une adresse IP (cf. \u003Ca href=\"https:\u002F\u002Fsupport.google.com\u002Fandroid\u002Fanswer\u002F9654714\">l'aide Android\u003C\u002Fa>), et Pi-hole ne sert pas le DNS chiffré. Sur iOS et sur ordinateur, l'application WireGuard applique la même ligne `DNS`. Le tunnel protège aussi en 4G et sur les Wi-Fi publics.",{"title":122,"body":123},"Accéder à l'interface web","En v6, l'interface est servie par FTL lui-même sur `http:\u002F\u002FIP\u002Fadmin` (et en HTTPS avec un certificat auto-signé). Ouvrez-la à travers le tunnel, par exemple `http:\u002F\u002F10.8.0.1\u002Fadmin`, et connectez-vous avec le mot de passe défini à l'installation. Le tableau de bord affiche en temps réel le nombre de requêtes, le taux de blocage, les domaines les plus sollicités et les clients les plus actifs.",{"type":36,"title":125},"Ajouter des listes de blocage recommandées",{"type":39,"body":127},"Pi-hole est livré avec une liste de base. Pour un blocage efficace, ajoutez des listes communautaires éprouvées depuis le menu Adlists de l'interface web (dans Group Management → Adlists).",{"type":42,"title":129,"items":130},"Listes recommandées",[131,132,133,134,135],"StevenBlack Unified (publicités + traceurs) : https:\u002F\u002Fraw.githubusercontent.com\u002FStevenBlack\u002Fhosts\u002Fmaster\u002Fhosts — la référence, ~100 000 domaines","OISD Big : https:\u002F\u002Fbig.oisd.nl — liste agressive mais peu de faux positifs, ~500 000 domaines","Firebog Ticked (coche verte uniquement) : visitez firebog.net et ajoutez uniquement les listes cochées en vert pour minimiser les faux positifs","HaGeZi Multi PRO : https:\u002F\u002Fraw.githubusercontent.com\u002Fhagezi\u002Fdns-blocklists\u002Fmain\u002Fadblock\u002Fpro.txt — excellente couverture malwares","Perflyst Smart-TV : pour bloquer la télémétrie des téléviseurs connectés",{"type":137,"body":138},"tip","Après avoir ajouté des listes, cliquez sur Tools → Update Gravity (ou lancez `pihole -g` en SSH) pour télécharger et compiler toutes les listes. L'opération prend une à trois minutes selon le nombre de listes, et Pi-hole reste fonctionnel pendant ce temps. Ensuite, Gravity se met à jour seul une fois par semaine, dans la nuit du samedi au dimanche : inutile d'ajouter votre propre tâche cron.",{"type":36,"title":140},"Gérer les faux positifs et le whitelisting",{"type":39,"body":142},"Un blocage trop agressif finit par casser des services légitimes. Pi-hole fournit des outils de diagnostic précis pour identifier et corriger les faux positifs sans affaiblir votre protection.",{"type":103,"title":144,"steps":145},"Diagnostiquer et corriger un faux positif",[146,149,152,155],{"title":147,"body":148},"Identifier le domaine bloqué","Dans l'interface, ouvrez Query Log (temps réel) ou Long-term data → Query Log. Filtrez par client ou par status Blocked. Chaque entrée indique le domaine exact et la liste qui le bloque. En v6, vous pouvez cliquer sur l'entrée pour voir les détails complets.",{"title":150,"body":151},"Ajouter à la liste d'autorisation","Cliquez sur le domaine puis sur Allow, ou allez dans Domains et ajoutez-le en type Allow. Pour autoriser un domaine et tous ses sous-domaines, utilisez l'option Wildcard. Une entrée autorisée l'emporte toujours sur les listes de blocage. Si un même faux positif revient sur beaucoup de domaines, abonnez-vous plutôt à une liste d'autorisation maintenue par la communauté, dans Lists, en type Allow.",{"title":153,"body":154},"Autoriser en ligne de commande","La v6 a renommé les commandes : `pihole -w` et `--white-wild` n'existent plus. Depuis SSH :\n\n```bash\npihole allow exemple.com\npihole --allow-wild exemple.com\npihole allow -l\n```\n\nLa première autorise un domaine exact, la deuxième le domaine et ses sous-domaines, la troisième affiche la liste d'autorisation.",{"title":156,"body":157},"Cas courants de faux positifs","Microsoft Teams et Office 365 bloquent parfois sur des listes agressives (domaines live.com, microsoft.com). Apple utilise des CDN partagés avec des traceurs. Les mises à jour automatiques de Windows peuvent être bloquées par certaines listes. Le site firebog.net maintient une liste verte précisément pour réduire ces problèmes.",{"type":36,"title":159},"Pi-hole dans Docker, et les conflits du port 53",{"type":39,"body":161},"Si votre VPS fait déjà tourner des conteneurs, Pi-hole peut lui-même être un conteneur, et servir de résolveur à tous les autres. Deux pièges reviennent : un autre processus occupe déjà le port 53 de l'hôte, et les conteneurs ne joignent pas l'adresse sur laquelle Pi-hole écoute. Le résolveur embarqué de Docker (`127.0.0.11`) vit, lui, à l'intérieur de chaque conteneur : il ne prend pas le port 53 de l'hôte.",{"type":103,"title":163,"steps":164},"Déployer Pi-hole avec Docker Compose et y brancher vos conteneurs",[165,168,171,174],{"title":166,"body":167},"Écrire le docker-compose.yml","Le fichier suit la \u003Ca href=\"https:\u002F\u002Fdocs.pi-hole.net\u002Fdocker\u002Fconfiguration\u002F\">documentation Docker de Pi-hole\u003C\u002Fa>, avec un tag daté plutôt que `latest` pour maîtriser les mises à jour. Le DNS n'est publié que sur la boucle locale et sur l'adresse du pont Docker `172.17.0.1`, jamais sur l'IP publique ; l'interface web ne l'est que sur `127.0.0.1:8080`, pour un reverse proxy.\n\n```bash\nmkdir -p \u002Fopt\u002Fpihole\u002Fetc-pihole && cd \u002Fopt\u002Fpihole\ncat > docker-compose.yml \u003C\u003C 'EOF'\nservices:\n  pihole:\n    container_name: pihole\n    image: pihole\u002Fpihole:2026.10.1\n    ports:\n      - \"127.0.0.1:53:53\u002Ftcp\"\n      - \"127.0.0.1:53:53\u002Fudp\"\n      - \"172.17.0.1:53:53\u002Ftcp\"\n      - \"172.17.0.1:53:53\u002Fudp\"\n      - \"127.0.0.1:8080:80\u002Ftcp\"\n    environment:\n      TZ: 'Europe\u002FParis'\n      FTLCONF_webserver_api_password: 'un-mot-de-passe-long'\n      FTLCONF_dns_listeningMode: 'ALL'\n      FTLCONF_dns_upstreams: '9.9.9.9;1.1.1.1'\n    volumes:\n      - '.\u002Fetc-pihole:\u002Fetc\u002Fpihole'\n    restart: unless-stopped\nEOF\ndocker compose up -d && docker compose logs pihole | tail -20\n```\n\n`FTLCONF_dns_listeningMode: 'ALL'` est requis sur le réseau bridge, parce que les requêtes arrivent de l'extérieur du sous-réseau du conteneur ; c'est le mapping de ports qui empêche l'exposition publique. Ajoutez `cap_add: NET_ADMIN` seulement si Pi-hole fait aussi serveur DHCP, ce qui n'a pas de sens sur un VPS.",{"title":169,"body":170},"Brancher les autres conteneurs sur Pi-hole","Dans chaque service de vos autres stacks, indiquez l'adresse du pont Docker :\n\n```bash\nservices:\n  mon-app:\n    image: mon-image\n    dns:\n      - 172.17.0.1\n```\n\nN'écrivez pas `127.0.0.1` : la documentation de Docker rappelle que, dans un conteneur, `--dns=127.0.0.1` désigne la boucle locale du conteneur lui-même, pas celle de l'hôte. Pour un réglage global, la même adresse va dans `\u002Fetc\u002Fdocker\u002Fdaemon.json` sous la clé `dns`, suivie d'un `systemctl restart docker`.",{"title":172,"body":173},"Vérifier qu'aucun autre processus n'écoute","Commande de diagnostic : `sudo ss -tulpn | grep ':53'`. Le seul processus attendu est `pihole-FTL` (ou `docker-proxy` pour les ports publiés par le conteneur). Si vous voyez systemd-resolved, named ou bind9, désactivez le service concurrent. Pour systemd-resolved, `DNSStubListener=no` dans `\u002Fetc\u002Fsystemd\u002Fresolved.conf` suffit, comme en installation native.",{"title":175,"body":176},"Contrôler le résolveur vu par un conteneur","Depuis un conteneur, lisez sa configuration DNS :\n\n```bash\ndocker exec mon-app cat \u002Fetc\u002Fresolv.conf\nsudo ss -tulpn | grep ':53'\n```\n\nUn conteneur d'un réseau Compose personnalisé affiche `127.0.0.11`, le résolveur embarqué de Docker, qui relaie vers les serveurs `dns:` déclarés : c'est normal. La preuve se lit dans le Query Log de Pi-hole, où le conteneur doit apparaître comme client. Si la mise à jour de Gravity échoue avec « Could not access the internet », le conteneur Pi-hole se résout probablement lui-même en boucle : vérifiez que `FTLCONF_dns_upstreams` vise bien un résolveur externe ou Unbound.",{"type":36,"title":178},"Pi-hole + Unbound : récursion DNS complète sans tiers",{"type":39,"body":180},"Par défaut, Pi-hole transfère les requêtes non bloquées vers un résolveur public (Cloudflare 1.1.1.1, Google 8.8.8.8). Ce résolveur voit alors l'ensemble de vos requêtes DNS. Unbound résout ce problème en interrogeant directement les serveurs racine et d'autorité — sans intermédiaire.",{"type":103,"title":182,"steps":183},"Installer et configurer Unbound",[184,187,190,193,196],{"title":185,"body":186},"Installer Unbound","sudo apt install unbound. Unbound est disponible dans les dépôts officiels Ubuntu et Debian. Il démarre automatiquement mais nous allons le configurer pour qu'il écoute uniquement en local.",{"title":188,"body":189},"Créer la configuration Pi-hole + Unbound","Créez `\u002Fetc\u002Funbound\u002Funbound.conf.d\u002Fpi-hole.conf` d'après la configuration du \u003Ca href=\"https:\u002F\u002Fdocs.pi-hole.net\u002Fguides\u002Fdns\u002Funbound\u002F\">guide Unbound de Pi-hole\u003C\u002Fa> : écoute sur `127.0.0.1` port `5335`, durcissement DNSSEC, tampon EDNS à 1232 octets.\n\n```bash\nsudo tee \u002Fetc\u002Funbound\u002Funbound.conf.d\u002Fpi-hole.conf > \u002Fdev\u002Fnull \u003C\u003C 'EOF'\nserver:\n    verbosity: 0\n    interface: 127.0.0.1\n    port: 5335\n    do-ip4: yes\n    do-udp: yes\n    do-tcp: yes\n    do-ip6: no\n    harden-glue: yes\n    harden-dnssec-stripped: yes\n    edns-buffer-size: 1232\n    prefetch: yes\nEOF\nsudo systemctl restart unbound\n```\n\nInstallé depuis les dépôts Debian ou Ubuntu, Unbound connaît déjà les serveurs racine : le téléchargement de `root.hints` depuis internic.net n'est utile que pour une installation compilée à la main.",{"title":191,"body":192},"Pointer Pi-hole vers Unbound","Dans l'interface Pi-hole, allez dans Settings → DNS. Désactivez tous les DNS upstream cochés. Dans le champ Custom DNS, entrez 127.0.0.1#5335. Sauvegardez. Pi-hole enverra maintenant toutes les requêtes non bloquées à Unbound, qui les résoudra en direct depuis les serveurs racine.",{"title":194,"body":195},"Vérifier la récursion et DNSSEC","Testez Unbound directement :\n\n```bash\ndig pi-hole.net @127.0.0.1 -p 5335\ndig fail01.dnssec.works @127.0.0.1 -p 5335\ndig +ad dnssec.works @127.0.0.1 -p 5335\n```\n\nLa première requête doit renvoyer une adresse. La deuxième doit échouer en `SERVFAIL`, sans adresse : la signature du domaine est volontairement cassée. La troisième doit répondre `NOERROR` avec le drapeau `ad`, qui confirme la validation DNSSEC. Dans le Query Log de Pi-hole, les requêtes doivent apparaître transmises à `127.0.0.1#5335`.",{"title":197,"body":198},"Neutraliser openresolv sur Debian","Debian installe d'office `openresolv`, et le service `unbound-resolvconf` écrit alors `nameserver 127.0.0.1` sans le port `5335` dans `\u002Fetc\u002Fresolv.conf` : le système interroge Pi-hole, qui interroge Unbound, qui n'est plus joint. Le guide Unbound de Pi-hole recommande de désactiver ce service :\n\n```bash\nsudo systemctl disable --now unbound-resolvconf.service\n# puis commenter la ligne unbound_conf= dans \u002Fetc\u002Fresolvconf.conf\n```\n\nRedémarrez ensuite Unbound et refaites les tests de l'étape précédente.",{"type":36,"title":200},"Surveiller les métriques Pi-hole",{"type":39,"body":202},"Le tableau de bord Pi-hole v6 affiche les métriques clés en temps réel. Voici comment les interpréter et ce qu'il faut surveiller.",{"type":42,"title":204,"items":205},"Métriques importantes et valeurs de référence",[206,207,208,209,210,211],"Taux de blocage (Ads blocked today) : entre 10 % et 30 % est normal. Un taux en dessous de 5 % suggère que vos listes sont incomplètes. Un taux supérieur à 40 % peut signaler trop de faux positifs.","Queries\u002F24h : donne une idée de la charge. Un réseau familial génère typiquement 5 000 à 50 000 requêtes par jour.","Top Blocked Domains : si un domaine publicitaire revient en tête chaque jour, c'est que l'application correspondante est particulièrement intrusive.","Top Clients : identifiez les appareils les plus bavards — les objets IoT sont souvent en tête.","DNS cache size : en v6, FTL gère le cache interne. Un hit rate élevé (>60 %) réduit la latence perçue.","Query Types : un volume anormal de requêtes PTR (résolution inverse) peut indiquer un scan réseau ou un logiciel mal configuré.",{"type":137,"body":213},"Pour exporter les métriques vers Prometheus et Grafana, l'API REST de la v6 expose notamment `\u002Fapi\u002Fstats\u002Fsummary` et `\u002Fapi\u002Finfo\u002Fmetrics`. L'exporteur communautaire `pihole-exporter` s'y connecte avec un mot de passe d'application (Settings → Web interface \u002F API) et alimente un tableau de bord existant sans toucher à la configuration de Pi-hole.",{"type":36,"title":215,"body":216},"Pi-hole v6 ou AdGuard Home ?","\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FAdguardTeam\u002FAdGuardHome\">AdGuard Home\u003C\u002Fa> est l'autre DNS filtrant à auto-héberger, écrit en Go (version `v0.107.80` du 3 novembre 2026). Le tableau reprend les différences que l'on vérifie dans la documentation des deux projets ; pour un VPS relié à vos appareils par WireGuard, le chiffrement DNS natif d'AdGuard Home compte moins, puisque le tunnel chiffre déjà le trafic.",{"type":54,"title":218,"headers":219,"rows":222},"Pi-hole v6 et AdGuard Home, critère par critère",[84,220,221],"Pi-hole v6","AdGuard Home",[223,227,231,234,238,242],[224,225,226],"Architecture","FTL (C) avec serveur web et API intégrés, sans PHP ni lighttpd","Binaire Go unique, multiplateforme",[228,229,230],"Servir du DNS chiffré (DoH, DoT) aux clients","Non, il faut un logiciel en plus (ou un tunnel WireGuard)","Oui, nativement",[232,233,230],"Amont chiffré (DoH, DoT, DNSCrypt)","Non natif (cloudflared ou Unbound en complément)",[235,236,237],"Règles par client","Oui, par groupes de clients","Oui",[239,240,241],"Contrôle parental et SafeSearch forcé","Via des listes dédiées ; pas de SafeSearch forcé","Intégrés",[243,244,245],"Configuration déclarative","Fichier `pihole.toml` et variables `FTLCONF_*`","Fichier YAML et interface web",{"type":36,"title":247},"Sauvegarder et restaurer la configuration Pi-hole",{"type":39,"body":249},"Une sauvegarde régulière de Pi-hole est essentielle : elle préserve vos listes personnalisées, votre whitelist, vos groupes et la configuration DNS, que vous ne voudrez pas reconfigurer manuellement après une migration ou une réinstallation.",{"type":103,"title":251,"steps":252},"Sauvegarde et restauration",[253,256,259,262],{"title":254,"body":255},"Créer une sauvegarde Teleporter","Dans l'interface web, ouvrez Settings → Teleporter et exportez l'archive : Pi-hole génère un fichier ZIP avec la configuration, les listes, les groupes et les domaines autorisés ou bloqués. En ligne de commande, la v6 passe par le binaire FTL :\n\n```bash\nmkdir -p \u002Froot\u002Fpihole-backups && cd \u002Froot\u002Fpihole-backups\nsudo pihole-FTL --teleporter\n```\n\nL'archive est créée dans le répertoire courant, et son nom est affiché.",{"title":257,"body":258},"Automatiser la sauvegarde","Ajoutez ces deux tâches avec `crontab -e` : une archive chaque nuit, et le ménage des archives de plus de 30 jours.\n\n```bash\n0 2 * * * cd \u002Froot\u002Fpihole-backups && pihole-FTL --teleporter >\u002Fdev\u002Fnull 2>&1\n0 3 * * * find \u002Froot\u002Fpihole-backups -name '*.zip' -mtime +30 -delete\n```\n\nEn Docker, préfixez la commande par `docker exec pihole` et écrivez l'archive dans le volume monté, par exemple `\u002Fetc\u002Fpihole`.",{"title":260,"body":261},"Restaurer depuis une sauvegarde","Après une réinstallation, ouvrez Settings → Teleporter et importez votre fichier ZIP, ou passez par la ligne de commande :\n\n```bash\nsudo pihole-FTL --teleporter \u002Froot\u002Fpihole-backups\u002FARCHIVE.zip\n```\n\nPi-hole importe réglages, groupes et listes. En v6, le format Teleporter diffère de la v5 : les sauvegardes v5 ne sont que partiellement reprises (listes importées, configuration réseau à refaire à la main).",{"title":263,"body":264},"Sauvegarder la configuration Unbound","Si vous utilisez Unbound, ajoutez ses fichiers à votre sauvegarde : tar -czf \u002Froot\u002Funbound-config-$(date +%Y%m%d).tar.gz \u002Fetc\u002Funbound\u002F. La configuration Unbound ne change pas entre les versions et peut être restaurée directement.",{"type":137,"body":266},"Hébergez vos sauvegardes hors du VPS : copiez-les vers un bucket S3, un serveur distant ou votre poste local. Si votre VPS devient inaccessible, vous pourrez reconfigurer Pi-hole sur un nouveau serveur en quelques minutes en important simplement le fichier Teleporter.","Un DNS filtrant qui vous suit partout","Le VPS Cloud ServOrbit, avec son IP publique stable, accueille votre propre installation Pi-hole + WireGuard, prête à verrouiller : bloquez pubs et traceurs sur tous vos appareils, même en déplacement, sans jamais exposer un résolveur ouvert.","Déployer sur VPS Cloud","\u002Fvps-cloud",[272,291,309],{"id":273,"slug":274,"slugs":275,"title":279,"excerpt":280,"readTime":281,"views":282,"isPinned":19,"noindex":19,"publishedAt":283,"updatedAt":284,"category":285,"categories":286,"featuredImage":30,"bgImage":31,"posterImage":288,"relatedSolution":289},71,"heberger-nextcloud",{"fr":274,"en":276,"ar":277,"es":278},"hosting-nextcloud-on-your-own-vps","استضافة-nextcloud-على-خادمك-الـvps-الخاص","alojar-nextcloud-en-su-propio-vps","Héberger Nextcloud sur VPS : guide NC 35, PHP 8.3 et MariaDB 11","Hébergez Nextcloud sur VPS : Docker Compose, Redis, sauvegarde MariaDB, envois de plus de 40 Go derrière Cloudflare et alternative à Office 2021.",20,1,"2026-04-10T00:00:00+00:00","2026-11-08T16:32:50+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[287],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-nextcloud-poster.svg",{"categorySlug":25,"appSlug":290},"nextcloud",{"id":292,"slug":293,"slugs":294,"title":298,"excerpt":299,"readTime":300,"views":282,"isPinned":19,"noindex":19,"publishedAt":301,"updatedAt":302,"category":303,"categories":304,"featuredImage":30,"bgImage":31,"posterImage":306,"relatedSolution":307},72,"heberger-ghost",{"fr":293,"en":295,"ar":296,"es":297},"hosting-ghost-on-your-own-vps","استضافة-ghost-على-خادمك-الـvps-الخاص","alojar-ghost-en-un-vps","Héberger Ghost sur VPS : guide complet 2026","Déployez Ghost v6 sur votre VPS avec Caddy, MySQL, Ghost CLI et Stripe Tax : installation, reverse proxy TLS, mise à jour et dépannage des erreurs fréquentes.",10,"2026-04-09T00:00:00+00:00","2026-11-04T16:30:25+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[305],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-ghost-poster.svg",{"categorySlug":25,"appSlug":308},"ghost",{"id":310,"slug":311,"slugs":312,"title":316,"excerpt":317,"readTime":23,"views":318,"isPinned":19,"noindex":19,"publishedAt":319,"updatedAt":320,"category":321,"categories":322,"featuredImage":30,"bgImage":31,"posterImage":324,"relatedSolution":325},73,"heberger-wordpress",{"fr":311,"en":313,"ar":314,"es":315},"host-wordpress-on-your-own-vps","استضافة-wordpress-على-خادم-vps-الخاص-بك","alojar-wordpress-en-un-vps","Héberger WordPress sur votre propre VPS","Hébergez WordPress sur votre VPS pour des performances et un contrôle maximaux : Docker, MariaDB, cache, reverse proxy et SSL.",0,"2026-04-08T00:00:00+00:00","2026-11-09T20:55:18+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[323],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-wordpress-poster.svg",{"categorySlug":25,"appSlug":326},"wordpress",true,1794270728765]