Como Bloquear Anúncios com Pi Hole

Uma fotografia de uma pessoa usando um laptop.

Um Pi-Hole é um bloqueador de anúncios em toda a rede que intercepta anúncios em qualquer dispositivo na sua rede. Ele visa uma lista de milhares de domínios que servem anúncios e direciona seu conteúdo para um buraco negro, removendo-os da vista. Ele pode funcionar em qualquer dispositivo que esteja conectado à sua rede, sem software adicional. Ele até funciona em aplicativos de dispositivos móveis, reduzindo o uso de largura de banda e melhorando o desempenho. Este tutorial mostra como executar o Pi Hole na sua máquina Linux.

Índice

  • O que é Pi-Hole?
  • Instalando o Pi-Hole
  • Atualizando o Pi-Hole
  • Configurando um Servidor DHCP Personalizado
  • Criando uma Lista de Bloqueio Personalizada no Pi-Hole
  • Perguntas Frequentes

Bom saber: descubra a diferença entre AdBlock e Adblock Plus e qual você deve usar.

O que é Pi-Hole?

Pi-Hole se autodenomina “um buraco negro para anúncios da Internet.” Ele funciona executando todas as solicitações de servidor de saída contra uma lista de bloqueio interna. Para que isso aconteça, você precisará definir o Pi-Hole como seu servidor DNS. Isso permite que ele gerencie solicitações de resolução de endereço e visualize os endereços IP das informações solicitadas. Como resultado, ele tem o poder de silenciar seletivamente certas solicitações de saída com base em seus endereços IP.

Uma captura de tela do cabeçalho do site do Pi-Hole.

Se o Pi-Hole vê uma solicitação de conexão que corresponde à sua lista de bloqueio, ele bloqueia essa solicitação de alcançar o servidor de anúncios ou destino. Mais de 10.000 domínios estão na lista de bloqueio, e ele impede que as solicitações cheguem aos seus servidores. Nenhum anúncio é baixado, portanto, a largura de banda é economizada e a velocidade de conexão é melhorada.

O Pi-Hole não apenas bloqueia anúncios, mas também pode proteger sua rede contra todos os tipos de vetores de ataque baseados na Web. O sistema também inclui um portal robusto baseado na web para monitorar e auditar a operação do Pi-Hole.

Melhor ainda, tudo isso é gratuito e de código aberto. A única parte que não é de código aberto é o nome e o logotipo, que estão registrados como marcas.

Instalando o Pi-Hole

Embora o Pi-Hole possa ser executado em praticamente qualquer dispositivo compatível com Linux, os desenvolvedores do programa suportam oficialmente estas distribuições:

  • Raspbian: Buster / Bullseye
  • Ubuntu: 20.04 / 22.04 / 22.10
  • Fedora: 36 / 37
  • Debian: 10 / 11
  • CentOS Stream: 8 / 9

Siga os passos abaixo para instalar o Pi-Hole em uma máquina desktop Ubuntu 22.10.

  1. Abra um Terminal e execute o comando abaixo para instalar o software:
curl -sSL https://install.pi-hole.net |bash

Um terminal mostrando o processo de instalação do Pi-Hole.

Nota: como você está canalizando um comando curl para o bash, isso deve deixá-lo um pouco nervoso, pois pode ser perigoso. Se você quiser garantir que o software não é malicioso, revise o código-fonte do Pi-Hole. Você também pode instalar o software manualmente a partir do repositório do Github do Pi-Hole.

  1. Após a instalação, defina o Pi-Hole como seu servidor DNS na página de configuração do seu roteador.

Uma captura de tela da página de configuração DNS de um roteador.

Defina o endereço IP do Pi-Hole (algo como 192.168.68.53) como o único servidor DNS na sua rede. Certifique-se de zerar os outros servidores DNS.

Com o novo servidor DNS configurado, você terminou de configurar o Pi-Hole. Ele começará a bloquear anúncios em todos os lugares para qualquer dispositivo na sua rede. Para ajustar a configuração do Pi-Hole, visite http://pi.hole na sua rede.

Uma captura de tela da tela padrão do Pi-Hole.

Dica: há casos em que uma máquina não usará imediatamente um Pi-Hole na sua rede. Aprenda como corrigir isso no Linux limpando o cache DNS da sua máquina.

Atualizando o Pi-Hole

  1. O primeiro passo para atualizar o Pi-Hole é acessar o console da máquina. Faça isso usando o teclado físico da máquina ou fazendo login usando SSH:
  1. Uma vez dentro, execute o seguinte comando:
pihole -up

Um terminal mostrando o processo de atualização do Pi-Hole.

  1. Reinicie sua máquina para aplicar as novas configurações e binários:
sudo reboot

Configurando um Servidor DHCP Personalizado

Além de atuar como o servidor DNS da sua rede, o Pi-Hole também pode atribuir endereços IP às suas máquinas usando DHCP. Isso pode ser útil em casos onde você deseja controlar quantos novos dispositivos podem usar sua rede.

  1. Desative o servidor DHCP do seu roteador. Como é semelhante à configuração do DNS, este passo variará dependendo do roteador que você possui.

Uma captura de tela mostrando o servidor DHCP do roteador desativado.

  1. Vá para a página de configuração web do seu Pi Hole.

Uma captura de tela do painel do Pi-Hole.

  1. Clique na categoria “Configurações” na barra lateral esquerda da página.

Uma captura de tela do painel com um destaque na categoria

  1. Clique na aba DHCP.

Uma captura de tela da página

  1. Clique na caixa de seleção “Servidor DHCP habilitado”.

Uma captura de tela da aba

  1. Clique em “Habilitar Suporte IPv6 (SLAAC + RA)” para também alocar endereços IPv6 para suas máquinas locais.

Uma captura de tela das

  1. Selecione a caixa de texto “Para” na subcategoria “Faixa de endereços IP a serem distribuídos”.

Uma captura de tela das

  1. Substitua o conteúdo da caixa de texto “Para” pelo último endereço IP que você deseja que o DHCP distribua. No meu caso, definir este valor como “192.168.68.251” limitará o número de clientes que podem usar minha rede a 50.

Uma captura de tela das

Dica: além do Pi-Hole, você também pode bloquear anúncios no navegador Edge.

Criando uma Lista de Bloqueio Personalizada no Pi-Hole

O Pi-Hole usa uma lista de bloqueio central mantida por seus desenvolvedores. Essa abordagem significa que o programa pode rapidamente incluir um novo conjunto de domínios maliciosos assim que eles entram online. Você também pode adicionar seus próprios domínios em uma lista de bloqueio personalizada.

  1. Vá para a página de configuração web do seu Pi-Hole.

Uma captura de tela do painel.

  1. Clique na categoria “Domínios” na barra lateral esquerda da página.

Uma captura de tela do painel com um destaque na categoria

  1. Selecione a caixa de texto “Domínio” e insira o domínio que você deseja bloquear.

Uma captura de tela da página

  1. Clique no botão “Adicionar à Lista de Bloqueio”.

Uma captura de tela da página

  1. Embora isso adicione o endereço à lista de bloqueio interna da sua máquina, não incluirá subdomínios e subdiretórios presentes no endereço. Isso pode ser um problema se você quiser bloquear um site inteiro de carregar na sua rede. Para corrigir isso, clique em “Filtro RegEx” na subpágina de Domínio.

Uma captura de tela da página

  1. Clique na caixa de texto “Expressão Regular”.

Uma captura de tela da página

  1. Escreva seu domínio em um formato de expressão regular. Por exemplo, a seguinte linha de texto bloqueia todos os subdomínios e variações de “example.com.”
^.+example.+\.[a-z]+$

Uma captura de tela de um filtro regex usando o domínio de exemplo.

  1. Clique em “Adicionar à Lista de Bloqueio” para aplicar sua lista personalizada.

Uma captura de tela destacando o botão

Bom saber: expressões regulares são mais do que apenas uma maneira de criar listas de bloqueio. Aprenda a sintaxe básica do regex e suas funções avançadas usando nosso cheatsheet.

Perguntas Frequentes

É possível reconfigurar uma instalação existente do Pi Hole?

Sim. Faça isso fazendo login no console da máquina do seu Pi-Hole e executando: pihole reconfigure. Isso irá rerun o processo de configuração inicial e reinstalar todos os pacotes, scripts e dependências do Pi-Hole.

É possível verificar o Pi-Hole sem usar um navegador web?

Embora os desenvolvedores do Pi-Hole tenham projetado para funcionar com um navegador web, você também pode usar seu console para imprimir uma tela de visão geral simples. Você pode executar uma tela TUI para o Pi-Hole usando o seguinte comando: pihole -c -e.

É possível verificar se um domínio está sendo bloqueado pelo Pi-Hole?

Sim. Faça isso entrando no console da sua máquina e usando o subcomando de consulta. Por exemplo, executar pihole -q -exact -all malicious.example.com imprimirá todas as listas de bloqueio que contêm uma instância de “malicious.example.com.”

Crédito da imagem: Unsplash. Todas as alterações e capturas de tela por Ramces Red.