Versão 0.36.0
Atualizar o produto pelo próprio painel, backup que restaura a configuração inteira, o Desfazer que passou a desfazer, ofício judicial com procedência e relatório, e o menu de listas de ameaça redesenhado.
Atualização do sistema lançada dia 26/08/2026.
Em resumo
Versão grande, com função nova (atualizar pelo painel, ofício judicial, acesso de suporte por identidade, rascunho de zona) e a correção de operações que respondiam pronto sem terem feito o que diziam. Exige atenção: a atualização para ela é pelo terminal, o menu de Segurança encolhe de nove listas para três, e o /api/health passou a responder erro quando o serviço está degradado.
Quando chega: ela não é empurrada para o seu servidor. Quem decide o momento é você, e o salto para esta versão é feito pelo terminal (o botão de atualizar do painel só vale da 0.36.1 em diante).
O que muda para você
- Você passa a poder atualizar o produto pelo próprio painel, com verificação prévia e simulação (a partir da 0.36.1; o salto para esta versão é pelo terminal).
- O Desfazer da atualização passa a desfazer de verdade, em vez de responder que deu certo sem ter feito.
- O backup passa a guardar e restaurar a configuração inteira: são 25 seções, antes eram 17.
- O suporte da Made4IT entra pela identidade dele, sem senha combinada por telefone, e você liga e desliga esse acesso.
- Ofício judicial passa a ter procedência, relatório e desativação automática quando vence.
- Você pode editar uma zona em rascunho e ver o que muda antes de aplicar.
- O menu de Segurança encolhe de nove listas para três, e nenhum bloqueio seu é perdido.
- Quem monitora o servidor por fora precisa apontar o monitoramento para
/api/health/dns.
Esta versão tem um tema só, e ele aparece em quase todos os itens abaixo: operações que
respondiam "pronto" sem ter feito o que diziam. O Desfazer da atualização, que falhava em todas
as tentativas e avisava que tinha dado certo. O backup, que guardava um terço da configuração e
devolvia menos ainda. O /api/health, que respondia "estou bem" com os três serviços de DNS
mortos. Quatorze telas que mostravam falha de leitura como o número zero.
São defeitos que não geram chamado, porque ninguém tem motivo para ir conferir uma operação que deu certo. Foram procurados um a um e corrigidos.
Antes de atualizar
Três coisas para conferir antes de atualizar
1. O menu de Segurança vai encolher de nove listas para três. É mudança de desenho, está explicada na seção Alterações, nesta página, e nenhum bloqueio seu é perdido.
2. A atualização para esta versão é feita pelo terminal, com o update.sh que vem dentro do
pacote novo. O que está instalado hoje na sua máquina é o da 0.35.1, e ele recusa instalação
compilada, que é a forma de todo cliente: responde "Instalação COMPILADA detectada" e não faz
nada.
tar xzf made4dns-v0.36.0-compiled.tar.gz -C /root/novo
bash /root/novo/update.sh /caminho/made4dns-v0.36.0-compiled.tar.gz3. Se você monitora o servidor por fora do produto e o seu monitoramento consulta
/api/health, leia o item sobre o /api/health na seção Correções antes de aplicar. Esse
endereço passou a responder erro quando o serviço está degradado, e um monitoramento que só olha o
código HTTP pode tirar o nó de rotação por causa do painel.
O que a atualização faz sozinha, sem você pedir
O banco é migrado no primeiro início, de forma aditiva: entram colunas, um índice e duas tabelas novas. Nenhuma linha existente é reescrita.
O monitoramento do anycast é apontado sozinho para o endereço novo. As listas de ameaça são recarregadas, e os números da tela de Segurança podem levar alguns minutos para encher.
A resolução de DNS não para. O painel fica indisponível por alguns segundos; o autoritativo, o O serviço recursivo do Made4DNS — o que resolve as consultas dos assinantes e mantém o cache. e o O componente de borda do Made4DNS: atende as consultas e aplica as regras de entrada. seguem respondendo. Medido subindo da 0.35.1: 12 segundos de aplicação, painel fora por 5,5 segundos e zero consultas de DNS perdidas em 2.370 sondas.
✨ Adições
-
Adicionada a atualização do produto pelo próprio painel, do cadastro da chave até o resultado. A tela de Atualizações foi refeita de ponta a ponta: cadastro da chave de atualização, lista das versões disponíveis, verificação prévia com simulação (o que vai acontecer, antes de acontecer), aplicação, e um modo de manutenção que avisa que o painel está indisponível e se desliga sozinho quando termina.
Dois cartões que estavam quebrados saíram: "Verificar atualizações" apontava para um endereço que não resolve em DNS e dava erro para qualquer cliente, e "O que mudou nas últimas versões" era uma lista escrita à mão, parada quinze versões atrás. As chaves do produto passaram a morar todas na tela Licença.
O botão de aplicar só funciona de verdade a partir da 0.36.1
Nesta versão o botão ainda conclui o upgrade pela metade e deixa o serviço parado. Está corrigido na 0.36.1, mas quem dirige uma atualização é o código da versão de onde você está saindo. Por isso o salto para a 0.36.0 e o salto da 0.36.0 para a 0.36.1 são feitos pelo terminal. Da 0.36.1 em diante o botão vale.





-
Adicionado à prévia o aviso de quando o Desfazer não vai reverter aquele caso, em vez de oferecer um caminho de volta que não existe.
-
Adicionado o aviso de versão nova ao entrar no painel. Quem tem permissão de atualizar vê, no acesso, que existe versão nova disponível. Dispensar o aviso vale para aquela versão: a próxima volta a avisar, para que uma correção de segurança não fique escondida atrás de uma dispensa antiga.

-
Adicionado o ofício judicial, com procedência e relatório. Uma aba nova responde a pergunta "por que este domínio está bloqueado?": número do ofício, órgão que determinou, data de vencimento e a lista de domínios que ele cobre. Sai relatório por ofício em CSV e TXT, para responder ao tribunal.
O ofício vencido desativa o bloqueio sozinho, sem apagar o registro, que continua servindo de prova. A tela aceita a planilha como ela vem do órgão, e não só uma lista limpa de domínios. O ofício replica entre os servidores do Dois ou mais servidores Made4DNS sincronizados entre si, com um deles como origem da configuração. e entra no backup, junto com o estado do bloqueio. Veja bloquear domínios.



-
Adicionado o acesso de suporte da Made4IT por identidade. Acaba a senha combinada por telefone. O suporte entra pela tela de login com a identidade corporativa da Made4IT, num papel dedicado, e todo acesso fica registrado na auditoria, distinguível do acesso do cliente linha a linha.
E quem manda é você: há uma aba Acesso de suporte com um interruptor geral, que corta também quem já está dentro, botão de encerrar sessão em curso, e a possibilidade de desativar o usuário pela tela de Usuários.




- Adicionados os códigos de recuperação para o segundo fator. Quem cadastra o Verificação em duas etapas no login do painel. Recomendada para contas de administrador. recebe 10 códigos de uso único. Quem perde o celular entra com um deles na própria tela de login, sem depender de ninguém com acesso ao banco de dados, e a tela informa quantos ainda restam. Quem já tinha segundo fator ativo ganha os códigos sem precisar recadastrar nada.



- Adicionado o histórico de alterações em cada tela de configuração. As telas ganharam um botão de histórico que registra quem mudou a tela e quando. Por trás disso, o registro de auditoria deixou de depender de uma chamada escrita à mão em cada rota: agora é automático, e um teste reprova rota nova que não registre. Veja o Registro de auditoria.
- Adicionada a área de rascunho das zonas (Zone Staging). Editar uma zona em rascunho, ver o que mudou e só então aplicar em produção, com trava de conflito. O comparativo mostra também o que mudou em produção desde que o rascunho foi tirado, que é onde o erro normalmente acontece.





🚀 Melhorias
-
Melhoradas quatorze telas, que pararam de mostrar falha de leitura como o número zero. Elas diziam "0 regras", "Webhooks cadastrados (0)", "TOTAL DE CONSULTAS 0", ou ficavam em "Carregando..." para sempre quando o dado não vinha. Agora existe um estado próprio para "não consegui carregar", com botão de tentar de novo.
Zero e falha de leitura levam a decisões opostas na madrugada de um incidente, e essa era a diferença que a tela não fazia.
-
Melhorada a mensagem de erro de rede, que agora chega ao operador em português. "Request failed with status code 500" aparecia em 47 das 86 telas do produto. A mensagem real do servidor passou a chegar até a tela.
-
Feita a varredura das 86 telas, uma a uma, em português, em espanhol e com o servidor derrubado de propósito. O vocabulário do menu passou a valer também dentro das telas: "Ajuste fino" não abre mais uma página chamada "Tuning", e a tela de permissões fala a mesma língua do menu.
-
Melhorada a notificação de A assinatura criptográfica das respostas DNS, que permite detectar adulteração no caminho. inválido, que passou a listar os domínios afetados, que é o único jeito de agir sobre ela. A mensagem começa pelos domínios, porque o sino corta o texto em duas linhas.
-
Revista a tela do segundo fator no login: avanço automático entre as caixas, backspace que volta, e colar o código inteiro de uma vez.
-
Tornada configurável a retenção do histórico de integridade do Iniciativa global de boas práticas de operação de DNS. O produto verifica a conformidade., com as duas janelas visíveis na tela. Antes ele crescia sem limite.
🔄 Alterações
Esta é a mudança mais visível da versão para quem abre a tela de Segurança, e ela tem uma lógica só por trás: os dois menus de listas passaram a ter papéis diferentes.
-
O menu de Segurança OBSERVA. As listas dele dizem quais assinantes estão consultando domínio ruim, e não derrubam consulta nenhuma. Por isso podem vir ligadas por padrão: não há risco de um falso positivo tirar assinante do ar.
-
O menu de Response Policy Zone: o mecanismo que bloqueia domínios pelo nome, antes de resolver. BLOQUEIA. Quem quer bloquear liga a lista ali, de propósito.
-
Alterado o foco das listas: o produto passa a levar só lista de malware. O Made4DNS é produto de provedor e não se propõe a bloquear anúncio. Há também uma razão técnica: num menu de observação, lista de rastreador faz praticamente todo assinante acender, porque bater em rastreador é consulta normal.
O que você vai ver na tela de Segurança, medido numa instalação 0.35.1 com as listas ligadas, antes e depois de atualizar:
| Antes (0.35.1), 9 listas | Depois (0.36.0), 3 listas |
|---|---|
| Made4BLOCK, CINS Army | seguem, sem mudança |
| Feodo Tracker, ThreatFox, URLhaus, Spamhaus DROP | saem da observação; quem bloqueia com elas continua bloqueando |
| HaGeZi Pro, Phishing Army Extended, Spamhaus EDROP | removidas do produto |
| HaGeZi TIF entra: malware, phishing e golpe, sem anúncio nem rastreador |
Ninguém perde bloqueio, e isso foi conferido
Zona de Response Policy Zone: o mecanismo que bloqueia domínios pelo nome, antes de resolver. que já existia continua no lugar, ligada, com as entradas que tinha, e segue aparecendo na lista de zonas de RPZ para ser administrada. O que muda é que três dessas listas deixam de ser oferecidas como atalho de um clique na aba de listas de ameaça.
As três que saíram de vez carregavam zero entradas no produto, medido em 25/08/2026, cada uma por um motivo diferente:
- Spamhaus EDROP: a Spamhaus fundiu esta lista na DROP principal em 10/04/2024. O arquivo continua publicado, mas só com cabeçalho, zero blocos. Quem usa a Spamhaus DROP, que segue disponível no menu de RPZ, já tinha essa proteção inteira.
- HaGeZi Pro: o endereço publicado pelo projeto saiu do ar. O diretório que servia o formato usado pelo produto não existe mais.
- Phishing Army Extended: a licença da lista (Creative Commons Attribution-NonCommercial) não permite uso comercial, e o Made4DNS é um produto vendido.
Ou seja: se você tinha alguma das três ligada, a proteção que você via anunciada não estava acontecendo. Foi por isso que elas saíram, em vez de continuarem oferecidas.
Não é preciso fazer nada. A configuração salva continua válida e o produto ignora as chaves antigas.
-
Removidas três sugestões do menu de RPZ: "HaGeZi Normal" e "OISD Basic", porque os dois endereços deixaram de responder e o atalho criava uma zona que nunca carregava; e "StevenBlack Hosts", por ser lista de anúncio. Listas próprias adicionadas à mão não foram afetadas.
-
Alterada a lista com formato que o produto não sabe ler: passou a aparecer como erro na tela, em vez de "Ativa, 0 entradas" sem defeito aparente. Foi exatamente assim que os casos acima passaram despercebidos por tanto tempo.
🔒 Segurança
Os itens abaixo são de uma família só: segredo que o produto guardava e devolvia em claro para quem soubesse onde pedir. Nenhum deles é alcançável sem acesso ao painel, e todos foram encontrados por auditoria interna do time, não por incidente.
-
Corrigida a senha do O protocolo de roteamento entre provedores. É requisito para usar anycast., que deixou de aparecer na prévia da configuração. A tela que mostra o
bird.confantes de aplicar exibia a senha de autenticação das sessões de roteamento em claro, e qualquer usuário autenticado conseguia pedir essa prévia, inclusive perfis sem permissão sobre o anycast. -
Corrigida a leitura de um ponto de restauração de configuração, que deixou de entregar segredo. Quem conseguia abrir um snapshot lia junto os valores que deveriam estar mascarados.
-
Corrigidos os cabeçalhos e o endereço dos webhooks, que pararam de voltar em claro. Cabeçalho de autorização de integração voltava legível na leitura, e o endereço do webhook aparecia inteiro, quando é justamente no caminho do endereço (não no domínio) que o token costuma estar. Agora o caminho sai mascarado.
Junto: o botão Testar de uma integração passou a ser registrado na auditoria. Ele era um jeito silencioso de mandar o cabeçalho do cliente para um endereço de fora sem deixar rastro. Veja Integrações.
-
Corrigido o segredo compartilhado do webhook, que parou de ser apagado ao editar o registro. A listagem escondia o valor, e salvar a tela sem redigitá-lo gravava vazio, derrubando a assinatura das notificações.
-
Corrigida a resposta de licença sem autenticação, que parou de expor nome e CNPJ do cliente. Era possível descobrir de quem é o servidor sem nenhuma credencial.
-
Corrigido o segredo do segundo fator, que parou de sair no backup de dados. Ele saía em claro. Continua indo no backup de recuperação de desastre, que é onde o hash da senha já morava.
Efeito prático: restaurar a partir de um backup de dados devolve o usuário sem o segundo fator, que precisa ser recadastrado em Perfil. É exatamente o que já acontecia com a senha.
-
Corrigido o segredo anotado no histórico de alterações, que não chega mais ao banco, inclusive quando estava dentro de uma estrutura aninhada, que era o caso que escapava da máscara.
🐛 Correções
-
Corrigido o Desfazer da atualização, que nunca desfez nada e agora desfaz. O botão de reverter falhava em 100% das tentativas, e a tela respondia que tinha dado certo. Eram duas correções anteriores, cada uma correta sozinha, que se anulavam: o painel passou a disparar a reversão por um caminho sem terminal, e o script de atualização passou a exigir um terminal para confirmar.
Medido nesta versão, revertendo de volta para a 0.35.1: 27 segundos, painel fora por 16,8 segundos, zero consultas de DNS perdidas em 3.565 sondas, e o banco voltando idêntico ao de antes, conferido por hash das linhas.
O que o Desfazer NÃO devolve
Os scripts
update.sheinstall.shque ficam na raiz da instalação continuam na versão nova, numa máquina que voltou para a versão anterior. Na prática isso é inofensivo, porque são os scripts corrigidos. Mas se você compara versão de arquivo para auditar, é aqui que vai dar diferença. -
Corrigido o backup, que voltou a restaurar a configuração. Num produto com meia centena de tabelas, o arquivo de backup carregava 17 seções e a restauração reaplicava 14: papéis de usuário, listas de acesso e boa parte da configuração simplesmente não voltavam. Auditoria e notificações eram exportadas e descartadas na volta, ou seja, ocupavam espaço no arquivo sem servir para nada.
Medido nesta versão numa instalação de laboratório, o arquivo passou a ter 25 seções, com papéis, listas de acesso nomeadas e seus vínculos, regras de firewall, limites de consulta, ofícios judiciais e o estado do bloqueio dentro.
Junto: a tela de Backup passou a dizer, em texto, o que volta e o que não volta; o agendamento avisa na própria tela que backup agendado não recupera um servidor perdido; e, depois de aplicar, a tela mostra o que aconteceu de fato em vez de um "pronto" genérico.
-
Corrigida a restauração de configuração, que passou a validar antes de escrever. Um ponto de restauração ruim era escrito no disco e só aparecia depois, como serviço que não sobe. Um campo vazio no arquivo também deixou de derrubar a restauração inteira.
-
Corrigido o
/api/health, que passou a refletir o estado de verdade. O endereço respondia "tudo bem" nos três estados possíveis. Medido em servidor real: com os três serviços de DNS parados, ele continuava respondendo sucesso. Como o monitoramento do anycast consultava esse mesmo endereço, um nó com o DNS inteiro morto nunca se retirava de rotação por conta própria.Agora "ok" responde sucesso, e "degradado" ou "fora do ar" respondem erro.
Se você monta o monitoramento por fora do produto
Monitorar e rotear viraram perguntas separadas. Quem decide retirar o nó de rotação passa a ser um endereço próprio,
/api/health/dns, que olha só a resolução de DNS e ignora o estado do painel e da licença.Instalação existente é migrada sozinha no primeiro início depois da atualização. Mas se você montou o monitoramento à mão, fora do produto, aponte-o para
/api/health/dns. Deixá-lo em/api/healthfaria o nó sair de rotação por causa do painel, e não por causa do DNS. -
Corrigida a saída silenciosa de um nó do anycast, que agora avisa na tela em vez de o operador descobrir pelo tráfego que sumiu. Veja Anycast.
-
Corrigido o prefixo IPv6 do anycast, que passou a ser anunciado. A tela aceitava o prefixo, salvava, e o O protocolo de roteamento entre provedores. É requisito para usar anycast. nunca o anunciava, sem nenhuma mensagem. O estado mostrado na tela também passou a ser o estado real do serviço de roteamento, e não o que havia sido pedido.
-
Corrigida a edição de sessão O protocolo de roteamento entre provedores. É requisito para usar anycast., que parou de apagar a senha. Salvar a tela sem redigitar a senha derrubava a sessão de roteamento.
-
Corrigido o assistente de anycast, que parou de seguir em frente com o O componente de borda do Made4DNS: atende as consultas e aplica as regras de entrada. fora do ar. Ele ignorava o resultado do reinício e ignorava se o endereço tinha sido de fato fixado, e o operador terminava o assistente com um endereço anunciado por BGP e nada escutando nele.
-
Corrigidas seis telas que mostravam histórico de alterações vazio. Zonas, editor de zona, Response Policy Zone: o mecanismo que bloqueia domínios pelo nome, antes de resolver., limite de consultas e as duas telas de configuração filtravam o histórico por um nome, e o servidor gravava outro. Eram 13 divergências em 6 telas. A tela abria, respondia com sucesso e mostrava vazio, o que se lê como "ninguém nunca mexeu aqui".
-
Corrigido o contador de ameaças, que mostrava mil vezes menos do que o real. Aparecia "658,006" onde o motor tinha 658.006 entradas, e em português isso se lê seiscentos e cinquenta e oito. Com o servidor fora do ar, os seis cartões da mesma tela mostravam "NaN".
-
Corrigido o contador de zonas, que parou de esconder o total quando havia filtro aplicado, e o painel parou de apresentar número velho como se fosse atual.
-
Corrigida a gravação de registro com o NOTIFY quebrado, que parou de responder sucesso seco, e a aplicação de regras de firewall aos servidores parceiros parou de dizer que aplicou em zero parceiros. Quando uma lista de acesso vinda de um parceiro não era expandida, o cluster também dizia "aplicada" e nunca mais tentava de novo.
-
Corrigida a licença sem CNPJ ou sem identificador de máquina, que passou a avisar na tela de licença e no sino, em vez de virar recusa sem explicação mais tarde.
-
Corrigido o disparo da atualização que falhava e virava "Upgrade disparado". O processo nascia dentro da tarefa de fundo, então a falha já tinha virado sucesso na resposta e deixava um trabalho fantasma preso em "em execução".
-
Corrigida a auditoria de exportar e apagar dado pessoal, que deixaram de cair no mesmo registro. Em LGPD são operações opostas, e quem investiga um incidente precisa filtrar "o que saiu daqui" numa consulta só.
