freedzhost.cloud

Homelab 4 : bloquer pubs et traceurs pour toute la maison avec AdGuard Home

Niveau DébutantTemps estimé 30 minÀ lire avant Homelab 1 : Proxmox, la base sous chaque serviceUn mot inconnu ? Lexique

Chaque appareil de votre réseau demande à un serveur DNS où trouver un nom avant de s'y connecter. Répondez vous-même à ces questions et vous décidez de ce qui passe : les domaines de pub et de pistage n'obtiennent rien, sur chaque téléphone, TV et console, sans rien installer dessus. AdGuard Home est un serveur DNS open source fait exactement pour ça.

Chaque appareilvia le DHCP de la boxAdGuard Homefiltre, réécrit, met en cachepub.traceur.examplebloqué : pas de réponsecloud.votredomaine→ proxy, adresse localetout le reste→ résolveur amont, chiffré (DoH)
Chaque appareil interroge le même DNS. Une pub ou un traceur n'obtient rien ; votre propre domaine obtient l'adresse locale du proxy, donc le trafic interne reste à la maison et reste filtré ; tout le reste sort chiffré.

Un peu d'histoire

Le blocage des publicités par DNS est devenu populaire avec Pi-hole en 2015 : au lieu de filtrer chaque page, répondre « rien ici » quand un appareil demande l'adresse d'un traceur. AdGuard Home, sorti en 2018, suit la même idée en un seul programme, avec le DNS chiffré intégré. Un seul serveur protège tous les appareils du réseau, téléphones et télévisions compris.

1. Le lancer

Sur une petite VM ou un conteneur (Homelab 1), depuis l'image officielle, version épinglée :

services:
  adguardhome:
    image: adguard/adguardhome:v0.107.79
    restart: unless-stopped
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "3000:3000/tcp"
    volumes:
      - ./work:/opt/adguardhome/work
      - ./conf:/opt/adguardhome/conf

Ouvrez http://<adresse>:3000 pour l'assistant d'installation : choisissez le port d'administration et un compte administrateur. Si la même machine fait déjà tourner votre proxy HTTPS sur le port 80, donnez un autre port web à AdGuard dans l'assistant.

2. Y brancher la maison

Dans les réglages DHCP de votre box, mettez l'adresse d'AdGuard comme serveur DNS. Chaque appareil qui renouvelle son bail commence à l'utiliser. Vérifiez dans le tableau de bord d'AdGuard que les requêtes arrivent.

3. L'amont : chiffré

Pour les noms qu'il ne bloque pas, AdGuard interroge un résolveur amont. Choisissez-en un en DNS-over-HTTPS, pour que votre fournisseur ne voie plus vos requêtes en clair, par exemple https://dns.quad9.net/dns-query.

4. La réécriture locale

Dans Filters → DNS rewrites, faites pointer votre propre domaine vers l'adresse locale du proxy (*.votredomaine.tld → l'IP LAN du proxy). Sans elle, vos appareils joignent vos propres services en passant par votre adresse publique, un détour que certaines box refusent et qui contourne le filtrage. Avec elle, le trafic interne reste à la maison, et vos services marchent même quand Internet est coupé.

Pièges

Sur Ubuntu et les autres systèmes avec systemd-resolved, le port 53 est déjà pris par son relais local et le conteneur ne démarre pas. La documentation officielle explique comment désactiver ce relais d'abord.

Votre DNS devient un point de panne unique : s'il s'arrête, toute la maison « perd Internet ». Gardez-le sur une machine toujours allumée, sauvegardez sa configuration, et sachez remettre le DNS de la box en deux clics.

N'ouvrez jamais le port 53 sur Internet : un résolveur ouvert est utilisé par d'autres pour des attaques par amplification.

Sur un portable, réglez le DNS par connexion réseau plutôt que globalement : à la maison il utilise AdGuard, ailleurs le DNS du réseau visité reprend la main et rien ne casse.

Ajoutez des listes de blocage avec parcimonie. Une liste défaillante peut bloquer une banque ou une page de connexion ; quand quelque chose ne charge plus, regardez d'abord le journal des requêtes.

Sources

Utile ? Dites-nous ce qu'il faut mesurer ensuite.