5 pontos por GN⁺ 2025-05-06 | 5 comentários | Compartilhar no WhatsApp
  • Em 2024, a web e os softwares ficaram mais cansativos por causa de anúncios, rastreamento, widgets de analytics, banners de cookies e comunicação externa incessante, e o Pi-hole é uma forma de reduzir isso no nível da rede
  • O Pi-hole funciona como um DNS sinkhole na rede de casa ou do escritório, bloqueando rastreadores, CDNs de anúncios e solicitações indesejadas de domínio em todos os dispositivos
  • Em um ambiente de uso real, 66,6% de todo o tráfego foi bloqueado, e isso não teria causado impacto funcional nas tarefas do dia a dia
  • A configuração exige um Raspberry Pi e um cartão microSD, periféricos para a configuração inicial, a instalação do Pi-hole e a configuração de rede para fazer o roteador enviar as solicitações DNS ao Pi-hole
  • É difícil bloquear toda a publicidade só com o Pi-hole, então em serviços como o YouTube é útil combiná-lo com um bloqueador de anúncios no navegador, como o uBlock Origin

Por que usar o Pi-hole

  • A coleta indesejada de dados e o rastreamento durante a navegação e o uso de software aumentaram muito, e os usuários querem evitar situações em que computador, navegador e outros sinais sejam usados para criação de perfil sem consentimento
  • A experiência online típica de 2024 está cheia de anúncios, scripts maliciosos, widgets de analytics, widgets de chatbot, banners de consentimento de cookies que cobrem a página e softwares que se comunicam com serviços externos a cada clique
  • A tecnologia de anúncios evoluiu para explorar excessivamente os visitantes, e uma resposta proposta para isso é colocar um Pi-hole na rede doméstica
  • O Pi-hole já é um projeto conhecido há bastante tempo, e é uma ferramenta abordada há anos por nomes como Jeff Atwood, Troy Hunt, Scott Hanselman e Scott Helme

Como ele funciona na rede

  • O Pi-hole normalmente roda em um Raspberry Pi, mas tecnicamente também pode rodar fora de um Pi
  • Ele funciona como um proxy/sinkhole de DNS dentro da rede
    • Quando o usuário acessa https://example.com, a solicitação passa primeiro pelo Pi-hole
    • Depois, o fluxo segue consultando um servidor DNS autoritativo sobre as informações do domínio
  • O objetivo é bloquear solicitações de domínios que você não quer acessar na rede
    • rastreadores
    • CDNs de anúncios
    • domínios para os quais você não quer enviar dados dentro de casa ou da empresa
  • Em uma rede real, 66,6% de todo o tráfego foi bloqueado, sem impacto funcional nas atividades do usuário

O que é necessário para instalar

  • Configurar o Pi-hole não exige um grande investimento, e o maior custo é o tempo gasto com configuração e validação mais do que o hardware
  • A configuração básica é a seguinte
    • Raspberry Pi
    • kit inicial CanaKit por cerca de US$ 155 nos EUA
      • também inclui o cartão microSD necessário para a configuração
    • monitor, mouse e teclado para conectar ao Raspberry Pi durante a configuração inicial
    • tempo para seguir o guia básico de instalação do Pi-hole
    • tempo para configurar o roteador para que as solicitações DNS da rede passem pelo Pi-hole
  • A equipe do Pi-hole tornou o processo de instalação o mais simples possível

Operando listas de domínios bloqueados

  • Depois de instalar o hardware e o software, é preciso configurar o roteador para que o destino das solicitações DNS aponte para o dispositivo com Pi-hole
  • O passo seguinte é decidir quais domínios bloquear
    • você pode observar diretamente as solicitações que passam pela rede e decidir
    • você pode usar listas de bloqueio da comunidade
  • O Firebog é recomendado como ponto de partida e oferece muitas listas de domínios pesquisadas e reunidas pela comunidade
  • Não é necessário aplicar todas as listas indiscriminadamente
    • alguns recursos podem quebrar ou deixar de funcionar
    • no log de consultas em tempo real do Pi-hole, é possível verificar qual cliente está tentando acessar qual domínio
    • conforme a necessidade, é possível bloquear ou permitir domínios dinamicamente
  • Também é possível bloquear domínios que correspondam a certas condições com expressões regulares
    • há o exemplo de bloquear os TLDs .cn, .ru e .hk por causa da grande quantidade de tráfego malicioso observada com origem na Rússia, China e Hong Kong
(^|\\.)(cn|ru|hk)$
  • Ao aplicar essa regra, desde que a solicitação DNS passe pelo Pi-hole, a comunicação destinada a servidores desses TLDs não sairá da rede
  • TLDs de países não são o único vetor de ataque de malware, mas bloqueá-los é tratado como um pequeno passo para melhorar a postura geral de segurança da rede

Evitando bypass de DNS

  • Alguns dispositivos podem tentar contornar o DNS configurado pelo usuário para exibir anúncios ou coletar dados de analytics
  • A forma de lidar com isso varia conforme o hardware de roteador em uso
  • Em um ambiente com o ecossistema UniFi e um UDM Pro, há um exemplo de acessar o UDM via SSH e executar regras de iptables
iptables -t nat -A PREROUTING ! -s YOUR_PI_HOLE_IP -p tcp --dport 53 -j DNAT --to YOUR_PI_HOLE_IP
iptables -t nat -A PREROUTING ! -s YOUR_PI_HOLE_IP -p udp --dport 53 -j DNAT --to YOUR_PI_HOLE_IP


# Make sure that we skip 192.168.1.1 since that seems to break UniFi Protect
iptables -t nat -A POSTROUTING -m iprange --src-range 192.168.1.2-192.168.254.254 -j MASQUERADE
  • Esse script redireciona todo o tráfego DNS na porta 53 para o Pi-hole e aplica mascaramento de endereços de rede com regras de NAT
  • O primeiro comando faz DNAT do destino dos pacotes DNS TCP para o IP do Pi-hole
    • -t nat: define uma regra na tabela NAT
    • -A PREROUTING: adiciona a regra à cadeia que processa pacotes de entrada antes do roteamento
    • ! -s YOUR_PI_HOLE_IP: exclui pacotes originados pelo próprio Pi-hole
    • -p tcp: aplica a pacotes TCP
    • --dport 53: corresponde a pacotes destinados à porta DNS 53
    • -j DNAT: encaminha para uma ação DNAT, que altera o IP de destino
    • --to YOUR_PI_HOLE_IP: redireciona os pacotes para o IP do Pi-hole
  • O segundo comando aplica o mesmo tratamento aos pacotes UDP
  • O terceiro comando é uma regra MASQUERADE que troca o IP de origem do intervalo interno especificado pelo IP do roteador
    • o intervalo de exemplo vai de 192.168.1.2 a 192.168.254.254 e pode ser ajustado para cada rede
    • 192.168.1.1 é excluído para evitar quebrar o UniFi Protect
  • Como resultado, todas as solicitações DNS TCP e UDP dos dispositivos da rede, exceto as originadas pelo próprio Pi-hole, são redirecionadas ao Pi-hole

Usando junto com bloqueadores de anúncios no navegador

  • Mesmo com o Pi-hole entre os dispositivos da rede e a internet, ainda vale a pena usar um bloqueador de anúncios confiável como o uBlock Origin
  • Em serviços como o YouTube, quando se quer manter o uso normal sem anúncios, o bloqueio apenas no nível de domínio dificilmente resolve tudo
  • O Pi-hole funciona como uma camada adicional para bloquear conteúdos e solicitações indesejadas além do bloqueador de anúncios do navegador
  • Bloqueadores de anúncios no navegador também conseguem barrar certos elementos específicos de interface, como anúncios inseridos manualmente ou conteúdo patrocinado carregado a partir do domínio principal do site

Avaliação após o uso

  • Depois de instalar o Pi-hole na rede, o efeito foi tão grande que ficou difícil voltar atrás
  • A mesma configuração foi aplicada também às redes dos pais e dos sogros
  • A conclusão é que ele continuará sendo recomendado por fazer uma grande diferença na qualidade de vida online

5 comentários

 
techiemann 2025-05-08

Mesmo que você não use necessariamente o Pi-hole, em muitos casos também é uma boa simplesmente usar um DNS que já bloqueie anúncios.

 
winterjung 2025-05-07

http://youtube.com/watch?v=OvfnqFXRybk Também achei legal essa forma de instalar e usar o AdGuard.

 
ndrgrd 2025-05-07

Já usei os três, Adguard Home, PiHole e NextDNS, e no fim achei o Adguard Home o melhor.
Com requisições paralelas e um cache generoso, as consultas DNS são processadas em menos de 10 ms.

 
preserde 2025-05-07

É um serviço razoável do ponto de vista de bloqueio de anúncios. Mas, como o próprio texto menciona, quando você bloqueia anúncios há bastante serviço que para de funcionar de forma meio sutil, então nessas horas você precisa desativar o bloqueio de anúncios e tal... Se fosse só eu, tudo bem, mas quando minha esposa usa e algo não funciona e ela fica irritada, isso também vira uma dor de cabeça, então estou usando só no meu computador pessoal. snif snif

 
baeba 2025-05-07

Oh.. obrigado..