Este passo é opcional em sentido estrito — o Unbound sozinho já é um resolvedor privado — e quase todo mundo o quer mesmo assim. O AdGuard Home te dá listas de bloqueio, políticas por cliente, um log de consultas legível enquanto você está depurando e, mais utilmente, escutas nativas de DNS sobre TLS e DNS sobre HTTPS, para que celulares e navegadores possam falar com o seu resolvedor a partir de redes onde uma VPN não é prática.
O arranjo é uma cadeia, e acertar as portas é todo o truque: o AdGuard Home é dono da 53 e fica de frente para os clientes, o Unbound fica em 127.0.0.1:5335 e fica de frente para a internet. Mais nada na máquina escuta na 53.
curl -fsSL https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v
# Web interface: http://<vps>:3000 — reach it over the SSH tunnel below,
# never by opening 3000 to the internet.
ssh -N -L 3000:127.0.0.1:3000 root@<vps>
Faça o assistente de primeira execução por esse túnel. Configure a escuta de administração para 127.0.0.1 ou para o endereço do túnel, nunca para 0.0.0.0, e dê a ela uma senha longa — essa interface pode reescrever cada nome que a sua rede resolve, o que a torna tão sensível quanto o próprio resolvedor.
Depois defina exatamente um upstream: em Settings → DNS settings, limpe a lista padrão e digite a sua instância do Unbound. Uma linha, nada mais. Se um resolvedor público ficar naquela caixa, tudo o que foi feito no passo 01 é desfeito.
127.0.0.1:5335
Deixe "Solicitações paralelas" desativado — com um único upstream isso só duplica o tráfego, sem fazer mais nada — e desative "Usar resolvedores DNS reversos privados", a menos que você realmente rode uma zona interna. Defina os servidores de bootstrap como algo em que você confia; eles são usados só para resolver os hostnames dos servidores upstream, e, com um upstream de IP puro, eles nunca chegam a ser consultados.
Listas de bloqueio: comece enxuto. O instinto é ativar tudo na página de listas e curtir o contador. Resista a isso. Cada lista é um conjunto de julgamentos de valor feitos por outra pessoa sobre o que os seus dispositivos podem ou não acessar, e as falhas são silenciosas e confusas — uma página carregando pela metade, um botão que não faz nada, um aplicativo de banco que se recusa a abrir. Comece com o filtro padrão da AdGuard DNS, ou com um único agregado bem mantido, como o OISD, conviva com ele por duas semanas, e só então adicione mais. Mantenha uma lista de permissão e use-a sem culpa.
O log de consultas é a parte incômoda
Você acabou de construir uma máquina cujo propósito é impedir que outra pessoa mantenha uma lista de cada nome que seus dispositivos resolvem — e a primeira coisa que o AdGuard Home faz é manter exatamente essa lista, ativada por padrão, por noventa dias. Isso é genuinamente útil enquanto você está ajustando as listas de bloqueio, e é o arquivo mais sensível do servidor. Decida deliberadamente: 24 horas são suficientes para responder "o que esse dispositivo acabou de pedir?", zero é a configuração honesta depois que o ajuste estiver feito, e noventa dias é uma decisão que ninguém deveria tomar simplesmente deixando o padrão como está. Settings → General → Query log, e defina a retenção de estatísticas já que você está lá.
Aponte o firewall para o novo arranjo — o AdGuard Home agora é dono da porta 53 na interface do túnel, e o Unbound só é alcançável em loopback. Nada muda na interface pública: ela continua sem nenhum DNS nela.