Tutoriais de VPS
Instalar o AdGuard Home em uma VPS (2026): Docker, DNS, DoH/DoT, rede doméstica e configuração de segurança
Implante o AdGuard Home v0.107.78 em uma VPS com Docker Compose, configure DNS de rede privada WireGuard, filtragem de anúncios, DoH/DoT upstream, reescritas de DNS, IPv6, backup e atualização, e entenda os problemas de segurança da porta 53, vazamento de DNS e resolvedor aberto.

Instalar o AdGuard Home em uma VPS (2026): Docker, DNS, DoH/DoT, rede doméstica e configuração de segurança
Se em casa, no escritório ou em várias VPSs há muitos dispositivos, anúncios, domínios de rastreamento e redirecionamentos maliciosos geralmente não são um problema de um único computador, mas sim de cada dispositivo repetindo as mesmas requisições. O AdGuard Home coloca a filtragem de DNS em um serviço unificado: os clientes perguntam a ele primeiro, e ele consulta o DNS upstream.
Colocar o AdGuard Home em uma VPS permite que celulares, computadores, servidores domésticos e dispositivos remotos usem o mesmo conjunto de regras de DNS por meio do WireGuard ou do Headscale. Não é necessário instalar uma extensão de navegador em cada dispositivo, e ele também pode fazer de forma unificada a filtragem de anúncios, o bloqueio de domínios maliciosos, as reescritas de DNS locais e os registros de consultas.
No entanto, o AdGuard Home não é um "DNS gratuito que basta instalar e expor publicamente". Se você abrir diretamente a porta 53 pública, é bem provável que a VPS se torne um resolvedor recursivo aberto, usado de forma abusiva para ataques de amplificação, varreduras e encaminhamento de tráfego. Este artigo adota por padrão o modelo de acesso por rede privada VPN, com o DNS escutando apenas no IP privado.
A versão estável oficial atual usada é o AdGuard Home v0.107.78, e os diretórios persistentes do Docker seguem os da imagem oficial: /opt/adguardhome/work e /opt/adguardhome/conf.
Casos em que é adequado colocar em uma VPS:
- Você já tem uma rede privada WireGuard, Tailscale ou Headscale;
- Quer que celulares, computadores e dispositivos domésticos remotos usem o mesmo DNS;
- Precisa gerenciar de forma centralizada a filtragem de anúncios, os domínios maliciosos e os domínios de serviços locais;
- O número de dispositivos não é grande e as consultas vêm principalmente de pessoas e famílias;
- Você pode aceitar manter a VPS, o DNS, os backups e as políticas de acesso.
Casos em que não se recomenda expor diretamente à internet para qualquer pessoa usar:
- Não há VPN nem restrição por IP de origem;
- Você planeja abrir 1.2.3.4:53 para toda a internet;
- Você não entende recursão de DNS, cache, encaminhamento e ataques de amplificação;
- Você precisa de auditoria corporativa, políticas de identidade ou DNS Anycast em larga escala;
- Você só quer bloquear anúncios do navegador, mas não quer manter um serviço de rede.
Se forem apenas alguns dispositivos em casa, um Raspberry Pi, um NAS ou um roteador também podem executar o AdGuard Home. A vantagem da VPS é a disponibilidade remota, a rede estável e a facilidade de combinar com WireGuard/Headscale; a desvantagem é que o DNS de todos os dispositivos depende dessa máquina, então é preciso preparar um DNS de reserva e um plano de recuperação.
| Opção | Principais recursos | Vantagens | Pontos de atenção |
|---|---|---|---|
| AdGuard Home | Filtragem de DNS, registros de consultas, reescritas, DNS criptografado | Interface intuitiva, suporta DoH/DoT e vários clientes | É preciso manter as regras e as configurações de privacidade |
| Pi-hole | Filtragem de DNS, listas e estatísticas | Comunidade madura, muito material | Alguns recursos avançados exigem componentes adicionais |
| DNS público | Consultas recursivas diretas | Zero manutenção, muitos nós globais | Não permite personalizar a filtragem por dispositivo doméstico |
| Bloqueio de anúncios no navegador | Afeta apenas as requisições do navegador | Instalação simples, regras detalhadas | Não trata requisições de apps, TVs e IoT |
O AdGuard Home é adequado para uma "política de DNS unificada". Ele não substitui automaticamente os bloqueadores de conteúdo do navegador, nem pode garantir que os anúncios do YouTube, dos serviços de streaming ou de todos os apps desapareçam. O DNS só consegue bloquear requisições identificáveis no nível do domínio.
Suponha que a VPS já tenha estabelecido uma rede privada por meio do WireGuard:
VPS 公网 IPv4
│
├── WireGuard wg0: 10.66.66.1
│ │
│ ├── 手机: 10.66.66.2 ── DNS 53 ──┐
│ ├── 笔记本: 10.66.66.3 ─────────┤
│ └── 家庭服务器: 10.66.66.4 ────┤
│ ▼
└──────────── Docker AdGuard Home ── 上游 DoH/DoT DNS
O ponto principal aqui é:
- Os clientes se conectam à VPS por meio do WireGuard criptografado;
- A porta 53 do AdGuard Home se vincula apenas a 10.66.66.1, não ao IPv4 público;
- O AdGuard Home pode usar DoH ou DoT para o DNS upstream;
- Os clientes não precisam expor o painel de administração à internet.
Se você ainda não tem WireGuard, pode consultar primeiro o tutorial de instalação do WireGuard VPN em VPS. Se tiver muitos dispositivos e precisar de tags e políticas unificadas, consulte o tutorial de instalação do Headscale em VPS.
O AdGuard Home em si é muito leve; para cenários domésticos com pouco volume de consultas, você pode começar com as seguintes configurações:
| Cenário | Configuração recomendada | Descrição |
|---|---|---|
| Pessoal e poucos dispositivos | 1 núcleo 1GB, 20GB SSD | Não configure um tempo de retenção de logs muito longo |
| Laboratório doméstico | 2 núcleos 2GB, 30GB SSD | Deixe margem para WireGuard, monitoramento e cache |
| Equipe pequena ou vários sites | 2–4 núcleos, 4GB+ | Avalie principalmente o volume de consultas, os backups e a alta disponibilidade |
Este artigo precisa apenas destas portas:
- 53/tcp e 53/udp: consultas DNS, vinculadas apenas ao IP privado da VPN;
- 3000/tcp: assistente de instalação inicial, vinculado apenas à própria VPS;
- 80/tcp: porta opcional de administração web do AdGuard, vinculada apenas ao localhost ou ao interior de um proxy reverso;
- 443/tcp, 853/tcp: abertas apenas quando o DoH/DoT é configurado explicitamente e o acesso é restrito.
Primeiro verifique se o sistema já ocupa a porta 53:
sudo ss -lntup | grep -E ':(53|3000|80|443|853)\b' || true
Muitos hosts Ubuntu executam o systemd-resolved, que normalmente escuta em 127.0.0.53:53. Desde que o AdGuard Home se vincule ao endereço privado do WireGuard 10.66.66.1, normalmente não haverá conflito; não desative o systemd-resolved às cegas só porque viu um tutorial de DNS.
Se você realmente quiser que o AdGuard Home escute em 0.0.0.0:53, primeiro precisa entender o resolvedor local, as portas do Docker e as regras de firewall; caso contrário, pode fazer a própria VPS não conseguir resolver nomes de domínio ou até expor um serviço recursivo público.
Primeiro confirme que o Docker e o Compose estão disponíveis:
docker version
docker compose version
Se você não tiver o Docker, pode consultar o guia prático de implantação com Docker. Crie o diretório de dados do AdGuard Home:
sudo mkdir -p /opt/adguardhome/work
sudo mkdir -p /opt/adguardhome/conf
sudo chown -R "$USER":"$USER" /opt/adguardhome
sudo chmod 750 /opt/adguardhome
Confirme que o endereço privado do WireGuard realmente existe:
ip -4 addr show wg0
O exemplo abaixo usa 10.66.66.1. Se o endereço da sua interface for diferente, substitua todos os 10.66.66.1 do Compose pelo endereço real. Não copie um IP que não existe no host, ou o Docker falhará ao vincular as portas.
Crie /opt/adguardhome/compose.yaml:
services:
adguardhome:
image: adguard/adguardhome:v0.107.78
container_name: adguardhome
restart: unless-stopped
ports:
# 只在 WireGuard 私网 IP 提供 DNS,不绑定公网 IP
- "10.66.66.1:53:53/tcp"
- "10.66.66.1:53:53/udp"
# 首次安装和管理页面只通过 SSH 隧道访问
- "127.0.0.1:3000:3000/tcp"
- "127.0.0.1:8080:80/tcp"
volumes:
- /opt/adguardhome/work:/opt/adguardhome/work
- /opt/adguardhome/conf:/opt/adguardhome/conf
O exemplo oficial do Docker também lista portas opcionais como DHCP, 443, 853 e 5443. Este artigo não mapeia essas portas, porque o DNS comum dentro da VPN já é criptografado pelo WireGuard, e o DoH/DoT público não é um requisito padrão.
Verifique o arquivo Compose:
cd /opt/adguardhome
docker compose config --quiet
Inicie o contêiner:
docker compose up -d
docker compose ps
docker compose logs --tail=150 adguardhome
Verifique localmente a página de instalação inicial:
curl -I http://127.0.0.1:3000
Se aparecer bind: cannot assign requested address, verifique primeiro se o wg0 está ativo e se o endereço é realmente 10.66.66.1. Se aparecer erro de porta já em uso, verifique novamente a saída do ss; não mude diretamente para uma porta pública para resolver.
Crie um túnel no seu próprio computador:
ssh -L 3000:127.0.0.1:3000 your_user@your_vps_ip
Abra no navegador:
http://127.0.0.1:3000
O assistente de inicialização pedirá para definir a conta de administrador, a porta de administração web e a porta de escuta do DNS. Recomendações:
- Use uma senha longa e independente para o administrador, sem reutilizá-la da VPS, do e-mail ou da VPN;
- Mantenha a porta de administração web em 80 dentro do contêiner e acesse-a no host por 127.0.0.1:8080 ou por um túnel SSH;
- Escolha todas as interfaces do contêiner para a escuta do DNS e deixe o mapeamento de portas do host restringi-la a 10.66.66.1;
- Não ative o serviço DHCP que você não precisa, a menos que saiba claramente que a VPS está em uma rede de camada 2 que precisa distribuir endereços;
- Anote o endereço de administração web que você configurou e não confunda a página de administração com a porta DNS.
Após concluir o assistente, a página de administração fica na porta local 8080 do host:
ssh -L 8080:127.0.0.1:8080 your_user@your_vps_ip
Depois acesse http://127.0.0.1:8080. Se preferir usar o primeiro túnel da 3000, também pode acessar pela porta real mostrada pelo assistente.
Configure os servidores upstream em Settings → DNS settings. Você pode escolher DoH ou DoT, por exemplo:
https://dns.cloudflare.com/dns-query
https://dns.google/dns-query
tls://1dot1dot1dot1.cloudflare-dns.com
Depois preencha o Bootstrap DNS, por exemplo:
1.1.1.1
9.9.9.9
O Bootstrap DNS só é responsável por resolver os nomes de domínio upstream em IPs; isso não significa que todos os clientes vão ignorar o AdGuard Home. Após configurar, use Test upstreams para testar a latência e a disponibilidade.
Algumas recomendações práticas:
- Escolha primeiro 2 upstreams estáveis; não acumule uma dúzia de endereços;
- Confirme você mesmo a política de privacidade, o período de retenção de logs e a região do serviço upstream;
- Quando precisar de estabilidade, mantenha um upstream de reserva de outro provedor;
- Não altere DNSSEC, cache e concorrência todos de uma vez, para facilitar a localização de problemas;
- Se o DoH/DoT upstream falhar, verifique primeiro a hora da VPS, a verificação de certificados e o Bootstrap DNS.
O DNS do cliente para o AdGuard Home também pode usar DoH/DoT, mas se o cliente já estiver dentro do túnel WireGuard, as requisições DNS comuns já são criptografadas pela VPN, o que é mais simples de configurar e normalmente tem menor latência.
Em Filters → DNS blocklists, ative as listas padrão e depois adicione regras gradualmente conforme os falsos positivos reais. Não é melhor ter mais listas de filtros:
- Várias listas se sobrepõem muito, aumentando o uso de memória e o tempo de atualização;
- Listas muito agressivas podem quebrar logins, pagamentos e captchas;
- Remova a tempo as URLs de listas que deixarem de funcionar;
- Após as atualizações, verifique a taxa de acertos e os falsos positivos; não otimize olhando apenas o "número de bloqueios".
Se um site não permitir login, procure primeiro o domínio bloqueado no Query log e depois adicione uma única regra de permissão. Não desative todos os filtros só para recuperar uma página.
Operações comuns com regras:
- Permitir um domínio: adicione @@||example.com^;
- Bloquear um domínio: adicione ||ads.example.com^;
- Aplicar apenas a um cliente: use regras ou configurações associadas ao cliente;
- Verificação temporária: pause a filtragem por um curto período, confirme e depois retome.
A sintaxe das regras e as listas de terceiros mudam; leia a descrição da fonte antes de adicionar. Não copie um "pacote de regras universal" de origem desconhecida diretamente para todos os dispositivos.
Na configuração do cliente, aponte o DNS para o endereço WireGuard da VPS:
[Interface]
Address = 10.66.66.2/24
DNS = 10.66.66.1
A configuração do WireGuard no servidor precisa permitir que os clientes acessem 10.66.66.1/32 ou a sub-rede privada correspondente. Primeiro confirme que a VPN funciona e depois teste o DNS:
ping 10.66.66.1
nslookup example.com 10.66.66.1
dig @10.66.66.1 example.com
Se o ping funcionar mas o dig não, verifique o mapeamento de portas do Docker, o firewall e o estado de escuta do AdGuard Home.
Você pode configurar o endereço privado do AdGuard Home como DNS unificado, mas confirme que o MagicDNS, a prioridade de DNS e as regras de exit node do cliente não o substituem. Para problemas de configuração de DNS, ACL e roteamento do Headscale, consulte o tutorial de instalação do Headscale em VPS.
Se o roteador doméstico conseguir se conectar à VPS por meio do WireGuard, você pode apontar o DNS entregue pelo DHCP para o endereço VPN do lado doméstico. Os roteadores variam muito no suporte a "forçar todo o DNS dos clientes para um endereço específico"; primeiro use um dispositivo de teste para confirmar o endereço do servidor no nslookup.
O próprio roteador pode continuar entregando DNS IPv6 aos clientes, fazendo com que algumas consultas ignorem o AdGuard Home. Ao ativar o IPv6, você deve verificar ao mesmo tempo RA, DHCPv6 e a lista de DNS real do cliente.
Em Filters ou Clients, defina nomes e grupos para os dispositivos, por exemplo:
- Celulares dos membros da família;
- TVs e consoles de jogos;
- Servidores domésticos;
- Dispositivos de trabalho;
- Convidados temporários.
Os nomes de cliente facilitam a solução de falsos positivos mais do que olhar apenas os IPs, mas os registros de consultas podem conter domínios visitados, horários e informações do dispositivo. Recomendações:
- Reduza a retenção dos registros de consultas e das estatísticas;
- Não exponha os registros a quem não precisa deles;
- Antes de fazer backup da configuração, avalie se os registros contêm dados privados;
- Ao compartilhar com membros da família, explique de antemão o escopo do registro;
- Não use os registros de consultas para inferir todo o comportamento de uma pessoa.
As reescritas de DNS permitem que os serviços da rede privada usem nomes de domínio estáveis, por exemplo:
grafana.home.example.com → 10.66.66.10
nas.home.example.com → 10.66.66.20
Assim, os clientes podem usar o mesmo conjunto de nomes de domínio tanto em casa quanto pela VPN. Atenção: as reescritas de DNS apenas alteram o resultado da resolução e não fornecem automaticamente certificados HTTPS. Domínios internos ainda precisam de certificados confiáveis, configuração da aplicação ou uma cadeia de confiança no cliente.
Se o domínio estiver hospedado na Cloudflare, não altere sem cuidado os registros de gerenciamento para endereços públicos só para a resolução de rede privada. Você pode usar um subdomínio interno separado ou restringir as regras de reescrita a clientes específicos.
Primeiro diferencie dois tipos de criptografia:
- DoH/DoT do AdGuard Home para o DNS upstream: protege as consultas entre a VPS e o resolvedor upstream;
- DoH/DoT do cliente para o AdGuard Home: permite que o navegador ou o celular acessem seu DNS por um protocolo criptografado.
O primeiro normalmente vale a pena ativar. O segundo só deve ser considerado quando os clientes não podem usar VPN, a rede sequestra a porta 53 ou você realmente precisa de DNS HTTPS/TLS.
Se quiser oferecer DoH/DoT aos clientes:
- Solicite um domínio dedicado e um certificado válido;
- Ofereça acesso apenas a dispositivos controlados; não faça um serviço recursivo público;
- Use NPM, Caddy, Cloudflare Access ou VPN para restringir a origem;
- Defina políticas de conexões, tráfego e logs para /dns-query e a porta 853;
- Teste certificados, SNI, IPv6 e o comportamento real em redes móveis;
- Feche as entradas públicas das APIs de administração e páginas web que você não precisa.
Para cenários domésticos pessoais, WireGuard + DNS comum já é suficiente. Não abra 53, 443, 853, 3000 e 5443 todos de uma vez só para "suportar DoH".
No cliente, verifique separadamente o DNS do sistema, o DNS da VPN e a configuração de DNS seguro do navegador. Você pode testar pela linha de comando assim:
dig @10.66.66.1 example.com
resolvectl status
Você deve ver o cliente enviando as requisições para 10.66.66.1, e não diretamente para o roteador, o DNS da operadora ou o DoH integrado do navegador.
Se o navegador tiver o próprio Secure DNS ativado, ele pode ignorar o DNS do sistema. Ou você desativa o DoH independente do navegador para que todas as requisições passem pelo AdGuard Home, ou configura explicitamente o navegador para usar seu próprio DoH e aceita que a política dele difere do DNS do sistema.
O conteúdo principal do AdGuard Home fica em dois diretórios:
- /opt/adguardhome/conf: configuração, usuários, escuta e ajustes de filtragem;
- /opt/adguardhome/work: dados de execução, cache de filtros, estatísticas e registros de consultas.
Pause o contêiner antes do backup para reduzir inconsistências durante a gravação:
cd /opt/adguardhome
docker compose stop
sudo tar -czf adguardhome-$(date +%F).tar.gz work conf compose.yaml
docker compose start
Copie o arquivo compactado para outra máquina ou armazenamento de objetos e restrinja as permissões:
chmod 600 adguardhome-*.tar.gz
Se você não precisar restaurar os registros de consultas, pode fazer backup apenas do conf e do arquivo Compose. Antes de restaurar, pare o contêiner, confirme a propriedade dos diretórios e a compatibilidade de versões, e depois descompacte e sobrescreva.
Antes de atualizar, anote a versão atual e faça backup:
cd /opt/adguardhome
docker inspect adguardhome --format '{{.Config.Image}}'
docker compose config > compose.before-upgrade.yaml
Depois altere a versão da imagem:
image: adguard/adguardhome:v0.107.78
Baixe e reconstrua:
docker compose pull
docker compose up -d
docker compose logs --tail=150 adguardhome
Após atualizar, teste:
- Se os clientes VPN conseguem resolver nomes de domínio;
- Se as regras de filtragem são atualizadas normalmente;
- Se as reescritas de DNS locais ainda funcionam;
- Se o DoH/DoT upstream apresenta erros;
- Se os registros de consultas e o login do administrador funcionam normalmente.
Se ocorrer uma regressão, pare primeiro o contêiner, restaure o backup e depois volte a imagem para a versão fixada anterior. Não reverta apenas a imagem ignorando mudanças no formato da configuração.
O Compose se vincula a 10.66.66.1, mas o host atualmente não tem esse endereço. Verifique:
ip -4 addr show wg0
docker compose ps
Confirme que o WireGuard inicia primeiro ou substitua o endereço no Compose pelo IP privado real. Não mude para 0.0.0.0 como primeira reação; isso pode expor diretamente o DNS público.
Verifique o processo:
sudo ss -lntup | grep ':53'
sudo lsof -nP -iTCP:53 -iUDP:53
Os ocupantes comuns incluem systemd-resolved, dnsmasq, BIND, Unbound e outro contêiner. Primeiro decida qual serviço é responsável pelo DNS e depois trate o endereço de escuta; não execute dois resolvedores que escutam por padrão em todos os endereços.
Teste por camadas:
ping 10.66.66.1
nc -vz 10.66.66.1 53
dig @10.66.66.1 example.com
docker exec adguardhome cat /opt/adguardhome/conf/AdGuardHome.yaml | sed -n '1,100p'
Se o ping não funcionar, verifique primeiro o roteamento do WireGuard; se o ping funcionar mas a 53 não, verifique o mapeamento do Docker e o firewall; se a 53 responder mas os nomes de domínio falharem, verifique o DNS upstream e os registros de filtragem.
SERVFAIL não significa "o domínio foi bloqueado". Verifique principalmente:
- O nome de domínio do DoH/DoT upstream não pode ser resolvido pelo Bootstrap DNS;
- A hora do sistema da VPS está errada, causando falha na verificação TLS;
- A acessibilidade do upstream IPv6 está anormal;
- DNSSEC ou o serviço upstream tem uma falha temporária;
- O filtro bloqueou por engano um domínio de dependência.
Primeiro teste os upstreams em DNS settings do AdGuard Home e depois verifique separadamente com um domínio comum e com um domínio que você sabe que está filtrado.
Abra o Query log e filtre as requisições bloqueadas por cliente e horário. Adicione apenas as regras de allowlist necessárias e, após verificar, anote o motivo. Não adicione um domínio de nível superior inteiro à lista de permissões, a menos que confirme que ele só é usado para serviços confiáveis.
Verifique o disco da VPS, as URLs de filtros, a hora do sistema e a rede de saída:
df -h
docker compose logs --tail=200 adguardhome
Reduza os períodos de retenção dos registros de consultas, das estatísticas e das regras, e exclua as listas que não funcionam. Não use registros que crescem sem limite para julgar se o serviço está saudável.
Verifique RA do roteador, DHCPv6 e a lista de DNS do cliente:
resolvectl status
ip -6 route
Se o cliente receber um DNS IPv6 público enquanto a VPN só configura DNS IPv4, ele pode preferir IPv6 e ignorar a filtragem. Ou você completa a configuração IPv6 de VPN/DNS, ou desativa explicitamente no roteador a entrega incorreta de DNS IPv6.
- Não exponha o DNS recursivo 53 à internet, a menos que você já tenha controle rigoroso de origem e monitoramento de abusos;
- Vincule a 53 apenas ao WireGuard, Tailscale ou outros endereços privados;
- As portas de administração como 3000 e 8080 escutam apenas no loopback ou na VPN;
- Não ative DHCP, DoT, DoH nem portas de diagnóstico que você não precisa;
- A senha de administrador é independente, suficientemente longa e não é escrita em repositórios públicos;
- Defina tempos de retenção razoáveis para os registros de consultas e as estatísticas;
- Use apenas fontes confiáveis para as listas de filtros e verifique periodicamente os falsos positivos;
- Restrinja as permissões dos diretórios de configuração e dos arquivos de backup;
- Fixe a versão antes de atualizar e teste a recuperação;
- Configure verificações de integridade e um caminho de resolução de reserva para o serviço DNS;
- Não trate o AdGuard Home como firewall, antivírus ou sistema completo de controle parental;
- Gerencie apenas dispositivos e redes que você tem o direito de gerenciar.
Desde que a porta DNS esteja vinculada ao IP privado da VPN, o host ainda pode usar o systemd-resolved ou outro resolvedor local. Não altere diretamente o /etc/resolv.conf do host para um endereço do AdGuard Home que ainda não foi iniciado.
Não. Ele cuida das consultas DNS e da filtragem, não da criptografia da camada de transporte, do roteamento, da autenticação nem do controle de acesso. Os clientes remotos ainda precisam de WireGuard, Tailscale, Headscale ou outro canal seguro.
Não necessariamente. O principal valor do DoH/DoT é proteger o transporte do cliente até o resolvedor; o TLS, o HTTP ou a reutilização de conexões adicionais podem alterar a latência. O DNS comum dentro de uma VPN já tem um túnel criptografado, então decida com base nos resultados reais dos testes de velocidade.
Muitos anúncios e conteúdos de negócio usam o mesmo domínio, ou são servidos por requisições integradas ao app, criptografadas e codificadas de forma fixa. A camada DNS não consegue distinguir caminhos diferentes sob o mesmo domínio, nem substituir a filtragem da camada de aplicação.
Para cenários pessoais e domésticos, você pode começar com uma VPS de 1 núcleo e 1GB, uma rede privada WireGuard e o AdGuard Home v0.107.78. Primeiro conecte apenas um celular de teste, confirme o comportamento da VPN, do DNS, dos filtros, do DoH upstream e do IPv6, e depois migre os outros dispositivos.
Não tome o "número de bloqueios" como único objetivo. Uma solução AdGuard Home realmente estável é: DNS aberto apenas para redes controladas, quantidade moderada de regras, registros de consultas controláveis, um caminho de resolução de reserva e os passos de configuração e recuperação anotados.