
ublockdnsclient v0.2.1
Cliente DNS de sistema multiplataforma para uBlockDNS com bloqueio de anúncios e rastreadores em todo o dispositivo e atualizações de filtro em tempo real.
uBlockDNS Client
O uBlockDNS Client é um projeto independente e não é afiliado, endossado ou relacionado ao uBlock Origin ou ao seu mantenedor.
O uBlockDNS Client traz bloqueio de anúncios e rastreadores em nível de DNS para todo o seu dispositivo. Ele usa listas de filtros mantidas pela comunidade, como EasyList e EasyPrivacy, aplicadas na camada de DNS, de modo que aplicativos, navegadores e serviços em segundo plano sejam cobertos sem a necessidade de extensões por navegador.
Site: ublockdns.com
O uBlockDNS Client é destinado a ambientes desktop e servidores onde você deseja um único ponto de instalação, proteção em todo o sistema e configuração remota por meio do painel do uBlockDNS.
Destaques
- Filtragem de DNS em todo o sistema para navegadores, aplicativos e tráfego em segundo plano
- Conexão criptografada de DNS-over-HTTPS com o serviço uBlockDNS
- Atualizações em tempo real de filtros e regras personalizadas a partir do seu painel
- Modelo de serviço local com verificação de status e comandos de gerenciamento
- Suporte multiplataforma para macOS, Linux, Windows 10+ e FreeBSD
Instalação
Crie uma conta gratuita em ublockdns.com e siga o guia de configuração no seu painel. O guia cobre todas as plataformas suportadas com comandos de copiar e colar e instruções passo a passo.
Instalação rápida para macOS e Linux:
curl -sSfL https://ublockdns.com/install.sh | sh -s -- <profile-id>
Use -L para que o curl siga os redirecionamentos do Cloudflare no script de instalação hospedado.
Durante a instalação, você pode ser solicitado a fornecer a senha de administrador do Mac ou Linux para atualizar as configurações de DNS do sistema.
Verifique a soma de verificação do script do instalador (Linux):
curl -sSfLO https://ublockdns.com/install.sh
curl -sSfLO https://github.com/ugzv/ublockdnsclient/releases/latest/download/SCRIPT_SHA256SUMS
grep " install.sh$" SCRIPT_SHA256SUMS | sha256sum -c -
sh install.sh <profile-id>
Windows 10 ou posterior (PowerShell como Administrador):
irm https://ublockdns.com/install?id=<profile-id> | iex
O painel usa esse fluxo de inicialização. Ele baixa o instalador de /install-script, o que evita problemas de redirecionamento do Cloudflare que podem quebrar downloads diretos de /install.ps1.
Os instaladores e binários do Windows publicados exigem Windows 10 ou posterior. Windows 7, Windows 8 e Windows 8.1 não são suportados.
Verifique a soma de verificação do script do instalador (PowerShell):
iwr https://ublockdns.com/install-script -OutFile install.ps1
iwr https://github.com/ugzv/ublockdnsclient/releases/latest/download/SCRIPT_SHA256SUMS -OutFile SCRIPT_SHA256SUMS
$expected = (Select-String -Path .\SCRIPT_SHA256SUMS -Pattern " install.ps1$").Line.Split()[0].ToLower()
$actual = (Get-FileHash .\install.ps1 -Algorithm SHA256).Hash.ToLower()
if ($actual -ne $expected) { throw "install.ps1 checksum mismatch" }
powershell -ExecutionPolicy Bypass -File .\install.ps1 -ProfileId <profile-id>
Um instalador gráfico do Windows (.exe) também está disponível na página de releases.
Atualização
O serviço se atualiza diariamente; as versões são verificadas em relação à chave de assinatura do uBlockDNS antes de serem aplicadas. Defina UBLOCKDNS_NO_AUTOUPDATE=1 no ambiente do serviço para optar por não participar, ou atualize manualmente com sudo ublockdns upgrade.
As atualizações automáticas são aplicadas no macOS, Windows e Linux. No FreeBSD, o rc.d não reinicia um serviço que sai, então o cliente não se atualiza lá; use sudo ublockdns upgrade. O cliente registra no log em qual modo está no início.
Versões mais antigas sem o comando upgrade: execute novamente o comando de instalação uma vez e as atualizações automáticas assumem o controle.
Desinstalação
macOS e Linux:
sudo ublockdns uninstall
Windows (PowerShell como Administrador):
& "$env:ProgramFiles\uBlockDNS\ublockdns.exe" uninstall
O & inicial é obrigatório. Sem ele, o PowerShell trata o caminho entre aspas como uma string simples e relata Unexpected token 'uninstall'.
A desinstalação interrompe o serviço e restaura suas configurações anteriores de DNS. O binário permanece no disco; exclua-o manualmente se não quiser mais mantê-lo. Execute ublockdns status depois para confirmar que o DNS do sistema não aponta mais para 127.0.0.1.
Outras plataformas
O guia de configuração do painel também cobre Chrome, Firefox, iOS, Android e roteadores. Essas plataformas usam DNS-over-HTTPS diretamente e não exigem este cliente.
Arquiteturas suportadas
linux/amd64, linux/arm64, linux/armv7, darwin/amd64, darwin/arm64, windows/amd64, windows/arm64, freebsd/amd64
Uso
ublockdns install -profile <profile-id> Instalar como serviço do sistema
ublockdns uninstall Remover o serviço e restaurar o DNS
ublockdns start Iniciar o serviço
ublockdns stop Parar o serviço
ublockdns status Mostrar estado do serviço e detalhes de prontidão
ublockdns status -json Mostrar status legível por máquina com ready_code e probe_error
ublockdns wait-ready -timeout 45s Aguardar até que o serviço e o DNS estejam ativos
ublockdns wait-ready -timeout 45s -json Emitir estado de prontidão legível por máquina para automação
ublockdns upgrade Atualizar para a versão mais recente e reiniciar o serviço
ublockdns version Exibir versão
Gerencie suas listas de filtros, regras personalizadas e registro de consultas no painel. A CLI é intencionalmente limitada: instale o serviço local, verifique se ele está saudável e deixe o painel lidar com as mudanças de política.
Como funciona
O cliente executa um proxy DNS local em 127.0.0.1:53 e encaminha todas as consultas para o serviço uBlockDNS por meio de DNS-over-HTTPS criptografado. O serviço avalia cada consulta contra as listas de filtros e regras personalizadas habilitadas para o seu perfil e retorna a resposta DNS normal ou uma resposta de bloqueio.
Quando você atualiza listas de filtros ou regras personalizadas no painel, o cliente recebe essas alterações em tempo real e limpa automaticamente o cache DNS local para que novas decisões entrem em vigor rapidamente.
Compilar a partir do código-fonte
Requer Go 1.25 ou posterior.
go build -o ublockdns .
sudo ./ublockdns install -profile <profile-id>
Feedback e problemas
Encontrou um bug ou tem uma sugestão? Abra uma issue.
Para problemas de bloqueio (anúncios que passam ou um site bloqueado incorretamente), verifique primeiro quais listas de filtros você habilitou no seu painel. O uBlockDNS usa listas mantidas pela comunidade e não controla o conteúdo delas.
Segurança
Relate vulnerabilidades de segurança de forma privada por meio do GitHub Security Advisories. Não abra issues públicas para problemas de segurança.
Para detalhes sobre o modelo de confiança, transparência de desenvolvimento e status atual de auditoria, consulte SECURITY.md.
Licença
MIT