Intermédiaire ⏱ 25 min de mise en œuvre Mis à jour le 11 août 2026

Héberger AdGuard Home : bloquer les publicités et traceurs via votre propre DNS

Bloquer la pub et les traceurs pour tous vos appareils, pas seulement le navigateur. AdGuard Home filtre au niveau du DNS. Voici comment l'héberger, sans en faire un résolveur ouvert.

Bloquer les publicités sur un navigateur ne protège qu’un appareil et laisse passer une partie des traceurs utilisés par les applications, téléviseurs connectés et objets domotiques. AdGuard Home agit plus tôt, au niveau du DNS, afin de filtrer les domaines indésirables pour tous les équipements qui l’utilisent.

Ce serveur DNS filtrant open source constitue une alternative à Pi-hole. Il propose une interface web, des listes de blocage, des statistiques, un contrôle parental et la prise en charge des protocoles DNS chiffrés DoH, DoT et DoQ. Il peut fonctionner sur le réseau local ou sur un VPS afin de fournir un DNS privé accessible en déplacement.

Comment fonctionne un DNS filtrant ?

Lorsqu’un appareil veut joindre un site, il demande au DNS de traduire son nom de domaine en adresse IP. AdGuard Home reçoit cette requête, la compare à ses listes de filtrage, puis applique l’une des deux actions suivantes :

  • le domaine est autorisé et sa résolution est transmise à un serveur DNS amont ;
  • le domaine appartient à une régie publicitaire, un traceur ou une source malveillante et la requête est bloquée.

Cette méthode couvre tous les appareils configurés pour employer AdGuard Home, sans installer une extension dans chaque navigateur. Elle réduit aussi certaines requêtes publicitaires émises directement par les applications.

Le filtrage DNS ne supprime toutefois pas toutes les publicités. Il ne peut pas bloquer un contenu publicitaire servi depuis le même domaine que le contenu principal. Certaines applications peuvent également contourner le DNS du système en utilisant leur propre résolveur.

Réseau local ou VPS : deux scénarios possibles

Sur un réseau domestique, AdGuard Home peut être installé sur une petite machine, un NAS ou un serveur allumé en permanence. Le routeur distribue ensuite son adresse IP comme serveur DNS par DHCP. Les téléphones, ordinateurs, consoles et téléviseurs du foyer bénéficient alors automatiquement du filtrage.

Cette configuration est simple et garde les requêtes DNS à domicile. Elle ne protège cependant plus un téléphone dès qu’il quitte le Wi-Fi, sauf si celui-ci rejoint le réseau familial par VPN.

Sur un VPS, AdGuard Home devient un DNS privé disponible partout. Un ordinateur portable ou un mobile en 4G peut s’y connecter avec DoH ou DoT. Ce scénario demande davantage de précautions, car le serveur possède une adresse publique et devient une cible potentielle.

Les VPS TalCloud s’inscrivent dans cet usage avec des serveurs situés en France, du stockage NVMe, une protection Anti-DDoS Netrix et un support humain. L’hébergement en France facilite également une démarche cohérente avec le RGPD, même si la configuration et la sécurité du service restent sous votre responsabilité.

Attention au résolveur DNS ouvert

Ne laissez jamais le port 53 UDP ou TCP accessible à tout Internet sur un VPS. Un résolveur DNS ouvert peut être détourné pour des abus, du trafic automatisé ou des attaques par amplification DDoS.

Choisissez impérativement l’une de ces protections :

  • autoriser le port 53 uniquement depuis vos propres adresses IP avec le pare-feu ;
  • ne publier que DoH ou DoT avec un accès contrôlé ;
  • placer AdGuard Home derrière un VPN WireGuard et réserver le DNS aux clients du VPN.

Pour un accès mobile, DoH sur le port 443 est généralement pratique. DoT utilise le port 853. Dans les deux cas, un certificat TLS valide et un nom de domaine sont nécessaires. L’interface d’administration ne doit jamais être exposée librement.

Prérequis

Préparez les éléments suivants :

  • un serveur Linux avec une adresse IP stable ;
  • Docker et le module Docker Compose (voir installer Docker sur un VPS) ;
  • un compte administrateur capable d’utiliser sudo ;
  • un nom de domaine pointant vers le VPS pour DoH ou DoT ;
  • un certificat TLS valide ;
  • un pare-feu configuré avant l’ouverture du service.

Sur un réseau local, attribuez également une adresse IP fixe à la machine AdGuard Home. Vérifiez qu’aucun autre service, notamment systemd-resolved, n’occupe déjà le port 53.

Déployer AdGuard Home avec Docker Compose

Créez un répertoire de travail :

sudo mkdir -p /opt/adguardhome/{work,conf}
cd /opt/adguardhome

Ajoutez un fichier compose.yaml :

services:
  adguardhome:
    image: adguard/adguardhome:latest
    container_name: adguardhome
    restart: unless-stopped
    ports:
      - "192.168.1.10:53:53/tcp"
      - "192.168.1.10:53:53/udp"
      - "127.0.0.1:3000:3000/tcp"
      - "127.0.0.1:8080:80/tcp"
      - "443:443/tcp"
      - "443:443/udp"
      - "853:853/tcp"
      - "853:853/udp"
    volumes:
      - ./work:/opt/adguardhome/work
      - ./conf:/opt/adguardhome/conf

Remplacez 192.168.1.10 par l’adresse privée de votre serveur local. Sur un VPS, ne remplacez pas cette adresse par 0.0.0.0. Supprimez les deux publications du port 53 si vous utilisez exclusivement DoH, DoT ou un VPN.

Le port UDP 443 peut servir à DoQ. Le port UDP 853 n’est utile que si vous activez également DoQ sur ce port. Retirez les ports correspondant aux protocoles inutilisés afin de réduire la surface d’exposition.

Lancez le conteneur :

sudo docker compose up -d
sudo docker compose ps
sudo docker compose logs --tail=100 adguardhome

Le mode network_mode: host peut simplifier certains déploiements locaux et la détection des adresses clientes. Il supprime toutefois l’isolation des ports Docker et exige une vérification attentive des services déjà présents sur l’hôte.

Réaliser la configuration initiale

L’assistant d’installation écoute initialement sur le port 3000. Comme le fichier Compose le limite à l’interface locale, ouvrez un tunnel SSH depuis votre ordinateur :

ssh -L 3000:127.0.0.1:3000 utilisateur@adresse-du-serveur

Accédez ensuite à http://127.0.0.1:3000. Choisissez les interfaces d’écoute, définissez le port de l’administration et créez un compte avec un mot de passe long et unique.

Dans les paramètres DNS, sélectionnez des résolveurs amont de confiance. AdGuard Home accepte des serveurs classiques ainsi que des upstreams chiffrés en DoH, DoT ou DoQ. Activez la validation DNSSEC si elle est compatible avec le résolveur retenu, puis vérifiez que les requêtes apparaissent dans le journal.

Choisir les listes de filtrage

Commencez avec les listes proposées par défaut, puis ajoutez progressivement des listes anti-publicité, anti-traceurs ou anti-malware adaptées à vos usages. Accumuler des dizaines de listes redondantes augmente les risques de faux positifs sans garantir un meilleur filtrage.

Le journal des requêtes permet d’identifier précisément la règle responsable d’un blocage. Si un site, une application bancaire ou un objet connecté cesse de fonctionner, ajoutez uniquement le domaine nécessaire à la liste d’autorisation.

Vous pouvez aussi créer des règles personnalisées :

||tracking.example^
@@||service.example^

La première bloque le domaine et ses sous-domaines. La seconde crée une exception. Testez chaque règle avant de la généraliser à tous les appareils.

Activer DoH et DoT

Associez un sous-domaine dédié, par exemple dns.example.fr, à l’adresse du VPS. Installez ensuite un certificat TLS valide dans AdGuard Home ou utilisez un reverse proxy pour terminer les connexions HTTPS.

Avec le TLS intégré, fournissez à AdGuard Home le certificat et sa clé privée, puis activez DoH et DoT dans les paramètres de chiffrement. Si les certificats se trouvent sur l’hôte, montez-les en lecture seule dans le conteneur et assurez-vous que leur renouvellement est suivi d’un redémarrage ou d’un rechargement du service.

Un reverse proxy convient bien à DoH sur le port 443. DoT utilise un flux TLS DNS distinct et doit être transmis explicitement ou géré directement par AdGuard Home.

Sécuriser le service

Appliquez une politique de pare-feu minimale :

  • fermez le port 53 public sur un VPS ;
  • n’autorisez le port 53 qu’au réseau local, aux IP approuvées ou à l’interface WireGuard ;
  • exposez seulement les ports chiffrés réellement utilisés ;
  • gardez les ports 3000 et 80 sur 127.0.0.1 ;
  • protégez l’administration avec un mot de passe unique ;
  • installez rapidement les mises à jour de sécurité.

Sur un réseau local, empêchez si possible les clients de contourner AdGuard Home en bloquant les sorties DNS directes vers Internet, tout en prévoyant les exceptions nécessaires. Sur un VPS, surveillez les volumes de requêtes et les adresses clientes afin de détecter rapidement une exposition accidentelle.

Configurer les appareils

À domicile, indiquez l’adresse privée d’AdGuard Home comme DNS dans les paramètres DHCP du routeur. Renouvelez ensuite le bail DHCP des appareils. Si le routeur annonce son propre DNS sans option de personnalisation, configurez les appareils individuellement ou utilisez un autre serveur DHCP.

À distance, configurez le nom DoT dans Android ou installez un profil compatible sur les autres systèmes. Pour DoH, utilisez l’URL déclarée par AdGuard Home dans les paramètres du système, du navigateur ou d’un client DNS compatible.

WireGuard reste une solution robuste pour les appareils qui doivent accéder à la fois au DNS filtrant et aux ressources privées du réseau. Dans ce cas, distribuez l’adresse VPN d’AdGuard Home comme DNS aux clients du tunnel.

Mettre à jour et sauvegarder

Mettez régulièrement à jour l’image, puis recréez le conteneur :

cd /opt/adguardhome
sudo docker compose pull
sudo docker compose up -d
sudo docker image prune

Sauvegardez en priorité les répertoires conf et work. Le premier contient la configuration, les utilisateurs, les règles et les paramètres du service. Le second conserve les données de fonctionnement.

Avant une mise à niveau importante, arrêtez brièvement le conteneur et réalisez une copie cohérente des volumes. Testez aussi la restauration sur un autre répertoire ou un serveur temporaire. Un DNS filtrant devient vite un composant central du réseau : une sauvegarde vérifiée évite de devoir reconstruire les listes, exceptions et réglages d’accès en urgence.