Code source wiki de AdGuard Home
Modifié par john le 2026/09/18 21:13
Afficher les derniers auteurs
| author | version | line-number | content |
|---|---|---|---|
| 1 | Serveur DNS du réseau local : blocage des publicités et des domaines malveillants, et réécriture du domaine public vers l'IP locale du serveur principal (contournement du hairpin NAT de la box). | ||
| 2 | |||
| 3 | Pour que ce soit effectif, les postes du réseau doivent utiliser le Raspberry Pi comme serveur DNS, par le DHCP de la box ou en réglage manuel. | ||
| 4 | |||
| 5 | == Stack == | ||
| 6 | |||
| 7 | {{code language="yaml"}} | ||
| 8 | services: | ||
| 9 | adguardhome: | ||
| 10 | image: adguard/adguardhome | ||
| 11 | container_name: adguardhome | ||
| 12 | network_mode: host | ||
| 13 | volumes: | ||
| 14 | - ./adguard/work:/opt/adguardhome/work | ||
| 15 | - ./adguard/conf:/opt/adguardhome/conf | ||
| 16 | restart: unless-stopped | ||
| 17 | {{/code}} | ||
| 18 | |||
| 19 | * ##network_mode: host## : AdGuard Home écoute directement sur le port 53 du Pi et voit la vraie IP de chaque client. | ||
| 20 | * Les chemins sont relatifs au dossier de la stack géré par Portainer. Pour retrouver où sont réellement les données sur le Pi : | ||
| 21 | |||
| 22 | {{code language="bash"}} | ||
| 23 | docker inspect adguardhome --format '{{range .Mounts}}{{.Source}} {{end}}' | ||
| 24 | {{/code}} | ||
| 25 | |||
| 26 | == Configuration == | ||
| 27 | |||
| 28 | Fichier : ##/opt/adguardhome/conf/AdGuardHome.yaml## dans le conteneur. Tout se règle aussi depuis l'interface web. | ||
| 29 | |||
| 30 | === Résolution === | ||
| 31 | |||
| 32 | |=Réglage|=Valeur | ||
| 33 | |DNS amont|Quad9 en DNS-over-HTTPS (##https:~/~/dns10.quad9.net/dns-query##) | ||
| 34 | |DNS d'amorçage|Quad9 (##9.9.9.10##, ##149.112.112.10## et équivalents IPv6) | ||
| 35 | |Mode|Répartition de charge | ||
| 36 | |DNSSEC|Validé par AdGuard Home | ||
| 37 | |Cache|Activé, 4 Mo | ||
| 38 | |Limite de requêtes|20 par seconde et par client | ||
| 39 | |Requêtes ANY|Refusées | ||
| 40 | |||
| 41 | === Filtrage === | ||
| 42 | |||
| 43 | |=Réglage|=Valeur | ||
| 44 | |Listes de blocage|Mises à jour toutes les 24 h | ||
| 45 | |Navigation sécurisée|Activée | ||
| 46 | |Contrôle parental|Désactivé | ||
| 47 | |Recherche sécurisée|Désactivée | ||
| 48 | |||
| 49 | === Réécritures DNS === | ||
| 50 | |||
| 51 | Filtres > Réécritures DNS : | ||
| 52 | |||
| 53 | |=Domaine|=Réponse | ||
| 54 | |##*.<DOMAINE>##|##<IP_SERVEUR>## | ||
| 55 | |||
| 56 | {{info}} | ||
| 57 | Le joker ##*.<DOMAINE>## ne couvre pas le domaine nu. Si un service est publié directement sur ##<DOMAINE>##, ajouter une seconde réécriture pour lui. | ||
| 58 | {{/info}} | ||
| 59 | |||
| 60 | == Vérifier == | ||
| 61 | |||
| 62 | Depuis un poste du réseau, la réponse doit être l'IP locale du serveur, pas l'IP publique : | ||
| 63 | |||
| 64 | {{code language="bash"}} | ||
| 65 | dig +short <SOUS_DOMAINE>.<DOMAINE> @<IP_RASPBERRY> | ||
| 66 | {{/code}} |