Erreur32 ha revisionato questo gist 3 months ago. Vai alla revisione
1 file changed, 11 insertions, 5 deletions
adguard_config.md
| @@ -109,11 +109,17 @@ Dans l’UI : | |||
| 109 | 109 | **Paramètres → Paramètres DNS → Serveurs DNS amont** | |
| 110 | 110 | ||
| 111 | 111 | ### Upstream DoH recommandés (simples et efficaces) | |
| 112 | - | Utilise 2 upstream max (plus = moins prévisible) : | |
| 113 | - | - Cloudflare DoH : | |
| 114 | - | - `https://cloudflare-dns.com/dns-query` | |
| 115 | - | - Quad9 DoH : | |
| 116 | - | - `https://dns.quad9.net/dns-query` | |
| 112 | + | Utilise 2 upstream max (plus que 2 = moins prévisible) : | |
| 113 | + | exemple avec ces bon dns | |
| 114 | + | - Cloudflare DoH : `https://cloudflare-dns.com/dns-query` | |
| 115 | + | - Quad9 DoH : `https://dns.quad9.net/dns-query` | |
| 116 | + | ||
| 117 | + | #### Upstream | |
| 118 | + | ``` | |
| 119 | + | https://cloudflare-dns.com/dns-query | |
| 120 | + | https://dns.quad9.net/dns-query | |
| 121 | + | ``` | |
| 122 | + | ||
| 117 | 123 | ||
| 118 | 124 | ### Bootstrap DNS | |
| 119 | 125 | Le bootstrap sert à résoudre les noms des endpoints DoH au démarrage : | |
Erreur32 ha revisionato questo gist 3 months ago. Vai alla revisione
1 file changed, 8 insertions, 4 deletions
adguard_config.md
| @@ -117,13 +117,17 @@ Utilise 2 upstream max (plus = moins prévisible) : | |||
| 117 | 117 | ||
| 118 | 118 | ### Bootstrap DNS | |
| 119 | 119 | Le bootstrap sert à résoudre les noms des endpoints DoH au démarrage : | |
| 120 | - | - `1.1.1.1` | |
| 121 | - | - `9.9.9.9` | |
| 120 | + | ``` | |
| 121 | + | 1.1.1.1 | |
| 122 | + | 9.9.9.9 | |
| 123 | + | ``` | |
| 122 | 124 | ||
| 123 | 125 | ### Fallback DNS | |
| 124 | 126 | Secours si les upstream ne répondent pas : | |
| 125 | - | - `1.1.1.1` | |
| 126 | - | - `9.9.9.9` | |
| 127 | + | ``` | |
| 128 | + | 1.1.1.1 | |
| 129 | + | 9.9.9.9 | |
| 130 | + | ``` | |
| 127 | 131 | ||
| 128 | 132 | ### Mode upstream (important) | |
| 129 | 133 | Selon ta version, tu peux voir plusieurs modes : | |
Erreur32 ha revisionato questo gist 3 months ago. Vai alla revisione
1 file changed, 3 insertions, 1 deletion
adguard_config.md
| @@ -245,18 +245,20 @@ docker logs --tail=200 adguardhome | |||
| 245 | 245 | ss -lntup | grep -E ':(53)\b' | |
| 246 | 246 | ss -lnup | grep -E ':(53)\b' | |
| 247 | 247 | ``` | |
| 248 | + | ||
| 248 | 249 | ### Vérifier la config (YAML) : upstream / mode / rewrites | |
| 249 | 250 | ``` | |
| 250 | 251 | grep -nE 'upstream_dns:|bootstrap_dns:|fallback_dns:|upstream_mode:|rewrites:|rewrites_enabled:' /home/docker/adguard/conf/AdGuardHome.yaml | |
| 251 | 252 | nl -ba /home/docker/adguard/conf/AdGuardHome.yaml | sed -n '15,80p' | |
| 252 | 253 | ``` | |
| 254 | + | ||
| 253 | 255 | ### Tester la résolution DNS via AdGuard | |
| 254 | 256 | ``` | |
| 255 | 257 | dig @192.168.32.150 google.fr +short | |
| 256 | 258 | dig @192.168.32.150 registry-1.docker.io +short | |
| 257 | 259 | ``` | |
| 258 | 260 | ### Tester le DoH (indirectement) | |
| 259 | - | ``` | |
| 261 | + | ||
| 260 | 262 | Check si upstream sont bien des URLs DoH dans le YAML : | |
| 261 | 263 | ``` | |
| 262 | 264 | grep -n "https://.*dns-query" /home/docker/adguard/conf/AdGuardHome.yaml | |
Erreur32 ha revisionato questo gist 3 months ago. Vai alla revisione
1 file changed, 40 insertions, 1 deletion
adguard_config.md
| @@ -8,7 +8,7 @@ Objectifs : | |||
| 8 | 8 | - Utiliser des DNS amont modernes (**DoH** = DNS over HTTPS) | |
| 9 | 9 | - Garder une config simple à maintenir | |
| 10 | 10 | - (Optionnel) Split-DNS pour accéder à des services locaux avec le même domaine | |
| 11 | - | ||
| 11 | + | - Check Command | |
| 12 | 12 | --- | |
| 13 | 13 | ||
| 14 | 14 | ## 1) Concepts rapides | |
| @@ -232,6 +232,45 @@ Après modification : | |||
| 232 | 232 | docker restart adguardhome | |
| 233 | 233 | ``` | |
| 234 | 234 | ||
| 235 | + | ||
| 236 | + | ## Checks commande shell | |
| 237 | + | ||
| 238 | + | ### Santé du conteneur | |
| 239 | + | ``` | |
| 240 | + | docker ps --filter name=adguardhome | |
| 241 | + | docker logs --tail=200 adguardhome | |
| 242 | + | ``` | |
| 243 | + | ### Vérifier que le DNS écoute bien (53 TCP/UDP) | |
| 244 | + | ``` | |
| 245 | + | ss -lntup | grep -E ':(53)\b' | |
| 246 | + | ss -lnup | grep -E ':(53)\b' | |
| 247 | + | ``` | |
| 248 | + | ### Vérifier la config (YAML) : upstream / mode / rewrites | |
| 249 | + | ``` | |
| 250 | + | grep -nE 'upstream_dns:|bootstrap_dns:|fallback_dns:|upstream_mode:|rewrites:|rewrites_enabled:' /home/docker/adguard/conf/AdGuardHome.yaml | |
| 251 | + | nl -ba /home/docker/adguard/conf/AdGuardHome.yaml | sed -n '15,80p' | |
| 252 | + | ``` | |
| 253 | + | ### Tester la résolution DNS via AdGuard | |
| 254 | + | ``` | |
| 255 | + | dig @192.168.32.150 google.fr +short | |
| 256 | + | dig @192.168.32.150 registry-1.docker.io +short | |
| 257 | + | ``` | |
| 258 | + | ### Tester le DoH (indirectement) | |
| 259 | + | ``` | |
| 260 | + | Check si upstream sont bien des URLs DoH dans le YAML : | |
| 261 | + | ``` | |
| 262 | + | grep -n "https://.*dns-query" /home/docker/adguard/conf/AdGuardHome.yaml | |
| 263 | + | ``` | |
| 264 | + | ### Voir les rewrites actifs (split-DNS) | |
| 265 | + | ``` | |
| 266 | + | grep -n "domain:" /home/docker/adguard/conf/AdGuardHome.yaml | |
| 267 | + | ``` | |
| 268 | + | ### Vérifier que la machine utilise bien AdGuard (optionnel) | |
| 269 | + | ``` | |
| 270 | + | cat /etc/resolv.conf | |
| 271 | + | getent hosts google.fr | |
| 272 | + | ``` | |
| 273 | + | ||
| 235 | 274 | --- | |
| 236 | 275 | ||
| 237 | 276 | ## 10) Checklist “config propre” | |
Erreur32 ha revisionato questo gist 3 months ago. Vai alla revisione
Nessuna modifica
Erreur32 ha revisionato questo gist 3 months ago. Vai alla revisione
1 file changed, 247 insertions
adguard_config.md(file creato)
| @@ -0,0 +1,247 @@ | |||
| 1 | + | # Guide simple : configurer AdGuard Home (DNS + blocage pubs) | |
| 2 | + | ||
| 3 | + | + Config Docker + DoH | |
| 4 | + | ||
| 5 | + | Ce guide explique comment installer et configurer **AdGuard Home** pour un réseau domestique ou un petit serveur, avec une configuration **solide, rapide et fiable**. | |
| 6 | + | Objectifs : | |
| 7 | + | - Bloquer pubs/trackers via DNS | |
| 8 | + | - Utiliser des DNS amont modernes (**DoH** = DNS over HTTPS) | |
| 9 | + | - Garder une config simple à maintenir | |
| 10 | + | - (Optionnel) Split-DNS pour accéder à des services locaux avec le même domaine | |
| 11 | + | ||
| 12 | + | --- | |
| 13 | + | ||
| 14 | + | ## 1) Concepts rapides | |
| 15 | + | ||
| 16 | + | ### AdGuard Home, c’est quoi ? | |
| 17 | + | - Un serveur DNS local : tes appareils l’utilisent comme DNS. | |
| 18 | + | - AdGuard filtre les domaines (listes, règles) et met en cache les réponses. | |
| 19 | + | - Si un domaine n’est pas bloqué, AdGuard le résout via des **DNS amont** (“upstream”). | |
| 20 | + | ||
| 21 | + | ### DoH (DNS over HTTPS), c’est quoi ? | |
| 22 | + | - DNS classique : requêtes en clair sur UDP/TCP 53. | |
| 23 | + | - **DoH** : requêtes DNS envoyées **dans HTTPS** (port 443), chiffré. | |
| 24 | + | - Avantages : confidentialité sur le réseau, moins de blocages sur certains réseaux, config cohérente. | |
| 25 | + | ||
| 26 | + | --- | |
| 27 | + | ||
| 28 | + | ## 2) Installation Docker (recommandé) | |
| 29 | + | ||
| 30 | + | Crée un dossier de travail : | |
| 31 | + | ```bash | |
| 32 | + | mkdir -p /opt/adguardhome/{work,conf} | |
| 33 | + | cd /opt/adguardhome | |
| 34 | + | ``` | |
| 35 | + | ||
| 36 | + | ### Option A — Mode `host` (souvent le plus simple pour un DNS) | |
| 37 | + | `docker-compose.yml` : | |
| 38 | + | ```yaml | |
| 39 | + | services: | |
| 40 | + | adguardhome: | |
| 41 | + | image: adguard/adguardhome:latest | |
| 42 | + | container_name: adguardhome | |
| 43 | + | network_mode: host | |
| 44 | + | volumes: | |
| 45 | + | - ./work:/opt/adguardhome/work | |
| 46 | + | - ./conf:/opt/adguardhome/conf | |
| 47 | + | restart: unless-stopped | |
| 48 | + | ``` | |
| 49 | + | ||
| 50 | + | Démarrer : | |
| 51 | + | ```bash | |
| 52 | + | docker compose up -d | |
| 53 | + | ``` | |
| 54 | + | ||
| 55 | + | Accès à l’assistant (setup) : | |
| 56 | + | - `http://IP_DU_SERVEUR:3000` | |
| 57 | + | ||
| 58 | + | > En mode `host`, AdGuard écoute directement sur la machine (DNS sur 53, etc.). | |
| 59 | + | ||
| 60 | + | ### Option B — Mode “bridge” (si tu préfères mapper les ports) | |
| 61 | + | `docker-compose.yml` : | |
| 62 | + | ```yaml | |
| 63 | + | services: | |
| 64 | + | adguardhome: | |
| 65 | + | image: adguard/adguardhome:latest | |
| 66 | + | container_name: adguardhome | |
| 67 | + | ports: | |
| 68 | + | - "3000:3000/tcp" # setup | |
| 69 | + | - "53:53/tcp" | |
| 70 | + | - "53:53/udp" | |
| 71 | + | - "80:80/tcp" | |
| 72 | + | - "443:443/tcp" | |
| 73 | + | volumes: | |
| 74 | + | - ./work:/opt/adguardhome/work | |
| 75 | + | - ./conf:/opt/adguardhome/conf | |
| 76 | + | restart: unless-stopped | |
| 77 | + | ``` | |
| 78 | + | ||
| 79 | + | --- | |
| 80 | + | ||
| 81 | + | ## 3) Vérifier que le port DNS 53 est libre | |
| 82 | + | ||
| 83 | + | Sur Linux, le port 53 peut déjà être pris (ex: systemd-resolved, dnsmasq). | |
| 84 | + | ||
| 85 | + | ```bash | |
| 86 | + | sudo ss -lntup | grep -E ':(53)\b' | |
| 87 | + | sudo ss -lnup | grep -E ':(53)\b' | |
| 88 | + | ``` | |
| 89 | + | ||
| 90 | + | S’il y a un service sur `:53`, il faut le désactiver ou changer sa config, sinon AdGuard ne pourra pas écouter. | |
| 91 | + | ||
| 92 | + | --- | |
| 93 | + | ||
| 94 | + | ## 4) Configuration dans l’assistant (premier lancement) | |
| 95 | + | ||
| 96 | + | Dans l’UI de setup : | |
| 97 | + | - **Interface web admin** : IP du serveur + port (souvent `3000` au début) | |
| 98 | + | - **Serveur DNS** : | |
| 99 | + | - Interface : “toutes les interfaces” (ou l’IP LAN si tu veux limiter) | |
| 100 | + | - Port : `53` | |
| 101 | + | ||
| 102 | + | Une fois terminé, l’UI peut passer sur `http://IP:80` ou `https://IP:443` selon ton choix. | |
| 103 | + | ||
| 104 | + | --- | |
| 105 | + | ||
| 106 | + | ## 5) Config DNS “solide et rapide” (tout-DoH) | |
| 107 | + | ||
| 108 | + | Dans l’UI : | |
| 109 | + | **Paramètres → Paramètres DNS → Serveurs DNS amont** | |
| 110 | + | ||
| 111 | + | ### Upstream DoH recommandés (simples et efficaces) | |
| 112 | + | Utilise 2 upstream max (plus = moins prévisible) : | |
| 113 | + | - Cloudflare DoH : | |
| 114 | + | - `https://cloudflare-dns.com/dns-query` | |
| 115 | + | - Quad9 DoH : | |
| 116 | + | - `https://dns.quad9.net/dns-query` | |
| 117 | + | ||
| 118 | + | ### Bootstrap DNS | |
| 119 | + | Le bootstrap sert à résoudre les noms des endpoints DoH au démarrage : | |
| 120 | + | - `1.1.1.1` | |
| 121 | + | - `9.9.9.9` | |
| 122 | + | ||
| 123 | + | ### Fallback DNS | |
| 124 | + | Secours si les upstream ne répondent pas : | |
| 125 | + | - `1.1.1.1` | |
| 126 | + | - `9.9.9.9` | |
| 127 | + | ||
| 128 | + | ### Mode upstream (important) | |
| 129 | + | Selon ta version, tu peux voir plusieurs modes : | |
| 130 | + | - **parallel** : interroge plusieurs upstream en même temps, garde le premier → très réactif | |
| 131 | + | - **fastest_addr** : choisit souvent la route la plus rapide | |
| 132 | + | - **load_balance** : répartit les requêtes entre les upstream | |
| 133 | + | ||
| 134 | + | Recommandation : | |
| 135 | + | - **parallel** (si dispo) sinon **load_balance**. | |
| 136 | + | ||
| 137 | + | --- | |
| 138 | + | ||
| 139 | + | ## 6) Mettre le DNS du réseau sur AdGuard | |
| 140 | + | ||
| 141 | + | Le plus propre : configurer le **DHCP du routeur** (ou contrôleur Unifi) pour annoncer : | |
| 142 | + | - DNS primaire : IP d’AdGuard (ex: `192.168.1.2`) | |
| 143 | + | - DNS secondaire : optionnel (un public), mais idéalement garder AdGuard seul si tu veux un filtrage garanti. | |
| 144 | + | ||
| 145 | + | Ensuite, renouvelle DHCP sur les clients (ou redémarre). | |
| 146 | + | ||
| 147 | + | Vérifier côté client : | |
| 148 | + | - Windows : | |
| 149 | + | ```bat | |
| 150 | + | ipconfig /all | |
| 151 | + | ``` | |
| 152 | + | - Linux : | |
| 153 | + | ```bash | |
| 154 | + | cat /etc/resolv.conf | |
| 155 | + | ``` | |
| 156 | + | ||
| 157 | + | --- | |
| 158 | + | ||
| 159 | + | ## 7) Split-DNS (optionnel) : même domaine dedans/dehors | |
| 160 | + | ||
| 161 | + | Utile si tu as : | |
| 162 | + | - un reverse proxy (Nginx Proxy Manager, Traefik…) | |
| 163 | + | - des domaines publics via Cloudflare/Internet | |
| 164 | + | - et tu veux qu’en LAN le domaine pointe sur une IP locale | |
| 165 | + | ||
| 166 | + | Dans AdGuard : | |
| 167 | + | **Filtres → Réécritures DNS (DNS rewrites)** | |
| 168 | + | ||
| 169 | + | Exemples : | |
| 170 | + | - `prox.exemple.com` → `192.168.1.10` (ton proxy local) | |
| 171 | + | - `app.exemple.com` → `192.168.1.10` | |
| 172 | + | ||
| 173 | + | Avantage : en LAN, tu évites le “hairpin NAT” et tu obtiens souvent plus de stabilité. | |
| 174 | + | ||
| 175 | + | --- | |
| 176 | + | ||
| 177 | + | ## 8) Dépannage rapide | |
| 178 | + | ||
| 179 | + | ### “No such host” / Docker ne peut pas pull | |
| 180 | + | Si la machine ne résout plus : | |
| 181 | + | ```bash | |
| 182 | + | getent hosts registry-1.docker.io | |
| 183 | + | cat /etc/resolv.conf | |
| 184 | + | ``` | |
| 185 | + | ||
| 186 | + | ### Tester AdGuard | |
| 187 | + | Depuis un client : | |
| 188 | + | ```bash | |
| 189 | + | dig @IP_ADGUARD google.com +short | |
| 190 | + | ``` | |
| 191 | + | ||
| 192 | + | ### Voir qui répond sur 53 | |
| 193 | + | ```bash | |
| 194 | + | sudo ss -lntup | grep -E ':(53)\b' | |
| 195 | + | sudo ss -lnup | grep -E ':(53)\b' | |
| 196 | + | ``` | |
| 197 | + | ||
| 198 | + | ### Vider le cache DNS | |
| 199 | + | - Windows : | |
| 200 | + | ```bat | |
| 201 | + | ipconfig /flushdns | |
| 202 | + | ``` | |
| 203 | + | - Linux (varie selon le système) : | |
| 204 | + | - parfois rien à faire si pas de cache local | |
| 205 | + | - ou redémarrer le service DNS local si présent | |
| 206 | + | ||
| 207 | + | --- | |
| 208 | + | ||
| 209 | + | ## 9) Exemple de bloc YAML (si tu configures via fichier) | |
| 210 | + | ||
| 211 | + | Dans `AdGuardHome.yaml`, sections typiques : | |
| 212 | + | ||
| 213 | + | ```yaml | |
| 214 | + | upstream_dns: | |
| 215 | + | - https://cloudflare-dns.com/dns-query | |
| 216 | + | - https://dns.quad9.net/dns-query | |
| 217 | + | ||
| 218 | + | bootstrap_dns: | |
| 219 | + | - 1.1.1.1 | |
| 220 | + | - 9.9.9.9 | |
| 221 | + | ||
| 222 | + | fallback_dns: | |
| 223 | + | - 1.1.1.1 | |
| 224 | + | - 9.9.9.9 | |
| 225 | + | ||
| 226 | + | upstream_mode: parallel | |
| 227 | + | fastest_timeout: 1s | |
| 228 | + | ``` | |
| 229 | + | ||
| 230 | + | Après modification : | |
| 231 | + | ```bash | |
| 232 | + | docker restart adguardhome | |
| 233 | + | ``` | |
| 234 | + | ||
| 235 | + | --- | |
| 236 | + | ||
| 237 | + | ## 10) Checklist “config propre” | |
| 238 | + | - [ ] AdGuard écoute sur `:53` (UDP+TCP) et personne d’autre ne l’ocupe | |
| 239 | + | - [ ] Les clients utilisent AdGuard en DNS (DHCP routeur) | |
| 240 | + | - [ ] Upstreams en DoH (2 max) + bootstrap + fallback | |
| 241 | + | - [ ] Mode upstream = parallel/fastest_addr/load_balance selon version | |
| 242 | + | - [ ] (Optionnel) Split-DNS pour domaines internes | |
| 243 | + | - [ ] Tests `dig` OK | |
| 244 | + | ||
| 245 | + | --- | |
| 246 | + | ||
| 247 | + | Bon DNS 🙂 | |