Todos os guias iniciais Primeiros passos

Desafio DNS-01: como funciona e como completar

DNS-01 e o tipo de desafio ACME que suporta certificados wildcard (*.example.com). Ele comprova a propriedade do domínio adicionando um registro TXT ao seu DNS — sem necessidade de servidor web ou acesso a porta 80.

Como funciona

  1. O Let’s Encrypt fornece um token para cada domínio
  2. O GetHTTPS calcula um digest SHA-256 da autorização de chave e o codifica em base64url
  3. Você cria um registro TXT em _acme-challenge.seudominio.com com esse valor
  4. O Let’s Encrypt consulta o DNS público em busca do registro TXT
  5. Se o valor corresponder, o desafio e aprovado e o certificado e emitido

Com o GetHTTPS, os passos 1-2 sao automaticos — você só precisa copiar e colar o nome do registro e o valor no seu provedor DNS.

Configuração passo a passo

Passo 1: Obter os detalhes do registro TXT no GetHTTPS

O GetHTTPS mostra:

  • Nome do registro: _acme-challenge.seudominio.com
  • Valor do registro: uma string codificada em base64url (~43 caracteres)

Passo 2: Adicionar o registro TXT no seu provedor DNS

CampoValor
TipoTXT
Nome_acme-challenge (alguns provedores adicionam o domínio automaticamente)
ValorA string mostrada pelo GetHTTPS — copie e cole exatamente
TTL60 segundos (ou o menor que seu provedor permitir)

Instruções por provedor:

Cloudflare

  1. Dashboard → seu domínio → DNSRecordsAdd record
  2. Type: TXT, Name: _acme-challenge, Content: cole o valor
  3. TTL: Auto
  4. Clique em Save

AWS Route 53

  1. Hosted zones → seu domínio → Create record
  2. Record name: _acme-challenge
  3. Record type: TXT
  4. Value: "cole-o-valor-aqui" (inclua as aspas duplas — o Route 53 exige)
  5. TTL: 300
  6. Clique em Create records

GoDaddy

  1. DNS ManagementAdd
  2. Type: TXT, Name: _acme-challenge, Value: cole o valor
  3. TTL: 1 Hour (menor disponível)
  4. Clique em Save

Namecheap

  1. Domain ListManageAdvanced DNSAdd new record
  2. Type: TXT, Host: _acme-challenge, Value: cole o valor
  3. TTL: Automatic
  4. Clique em Save all changes

Google Cloud DNS

gcloud dns record-sets create _acme-challenge.seudominio.com. \
  --zone=sua-zona --type=TXT --ttl=60 --rrdatas="o-valor"

DigitalOcean

  1. NetworkingDomains → seu domínio → Add record
  2. Type: TXT, Hostname: _acme-challenge, Value: cole o valor
  3. TTL: 30

Passo 3: Aguardar a propagação do DNS

As alteracoes de DNS levam de 1 a 15 minutos dependendo do seu provedor e das configurações de TTL. A pre-verificação do GetHTTPS confirma que o registro TXT esta visivel na internet pública antes de enviar ao Let’s Encrypt.

Verificar propagação manualmente:

dig TXT _acme-challenge.seudominio.com +short
# Deve retornar seu valor (entre aspas)

Ou use um verificador de propagação online para ver se o registro esta visivel globalmente.

Passo 4: Verificar no GetHTTPS

Clique em Verify. O GetHTTPS envia o desafio ao Let’s Encrypt. Se o registro TXT estiver correto, o certificado e emitido.

Passo 5: Limpeza

Após a emissão do certificado, delete o registro TXT _acme-challenge do seu DNS. Ele não é mais necessário e deixar registros antigos pode causar confusao durante a renovação.

Certificados wildcard com DNS-01

Para obter um certificado para *.seudominio.com, você deve usar DNS-01. O HTTP-01 não pode validar wildcards porque um wildcard cobre infinitos hostnames — não ha um único servidor para colocar um arquivo.

Wildcard + domínio raiz: Se você quer tanto *.example.com quanto example.com, o GetHTTPS pode exigir duas válidações. Algumas configurações precisam de dois registros TXT em _acme-challenge.example.com simultaneamente — um para o wildcard, outro para o apex. Mantenha ambos os registros até a válidação ser aprovada.

Guia completo de certificado wildcard →

DNS-01 vs HTTP-01

DNS-01HTTP-01
O que você fazAdiciona um registro TXT no DNSColoca um arquivo no seu servidor
Acesso necessárioConfigurações DNS do domínioSistema de arquivos do servidor web
Requisito de portaNenhumPorta 80 deve estar aberta
Suporte a wildcard✅ Necessário para wildcards
Funciona sem servidor
Velocidade1-15 min (propagação DNS)Instantaneo (se o arquivo estiver acessível)
Funciona atras de CDN✅ Sempre⚠️ Pode precisar bypass do CDN
Melhor paraWildcards, sem servidor, configurações com CDNMaioria dos certs de domínio único

Escolha DNS-01 quando: você precisa de wildcard, a porta 80 esta bloqueada, seu servidor não é publicamente acessível ou você esta atras de um CDN.

Escolha HTTP-01 quando: você tem um servidor web, a porta 80 esta aberta e não precisa de wildcard. E mais rápido (sem espera de propagação).

Solução de problemas

Registro TXT não encontrado pelo GetHTTPS

  • Aguarde mais — alguns provedores levam de 5 a 15 minutos. TTL baixo ajuda, mas não elimina o tempo de propagação.
  • Verifique o nome do registro: Alguns provedores adicionam o domínio automaticamente. Se você digitar _acme-challenge.example.com e o provedor adicionar .example.com, o registro real se torna _acme-challenge.example.com.example.com (errado). Digite apenas _acme-challenge e deixe o provedor adicionar o restante.
  • Verifique manualmente:
    dig TXT _acme-challenge.seudominio.com +short
    Se retornar vazio, o registro ainda não propagou.

Valor errado / diferenca de maiusculas e minusculas

  • O valor e sensivel a maiusculas e minusculas. Copie e cole diretamente do GetHTTPS — não redigite.
  • Não adicione aspas a menos que seu provedor DNS exija (Route 53 exige, a maioria não).

Conflito de múltiplos registros TXT

  • Remova registros TXT _acme-challenge antigos de tentativas anteriores antes de adicionar novos.
  • Exceção: válidação de wildcard + apex pode precisar de dois registros no mesmo nome simultaneamente.

Provedor DNS não suporta registros TXT

Raro, mas alguns serviços DNS basicos não possuem suporte a TXT. Mude para um provedor DNS completo (o plano gratuito do Cloudflare suporta todos os tipos de registro).

Quando usar DNS-01

CenarioDNS-01?
Certificado wildcard (*.example.com)✅ Obrigatório
Porta 80 bloqueada✅ Melhor opcao
Servidor em rede interna✅ Unica opcao
Atras de proxy Cloudflare/CDN✅ Evita problemas de proxy
Domínio sem servidor (estacionamento, redirecionamento)✅ Unica opcao
Certificado simples de domínio único com acesso ao servidor⚠️ HTTP-01 e mais rápido

Perguntas frequentes

Posso automatizar desafios DNS-01?

Sim, com ferramentas CLI. O acme.sh tem integracoes de API embutidas para mais de 150 provedores DNS — pode adicionar e remover registros TXT automaticamente. O Certbot suporta plugins DNS para os principais provedores. O GetHTTPS requer alteracoes DNS manuais (baseado em navegador, sem chamadas de API).

E seguro fornecer minha chave de API DNS a um cliente ACME?

A chave de API tem acesso de escrita a sua zona DNS, entao trate-a com a mesma segurança que as credenciais do seu servidor. Use tokens de API com escopo limitado quando possível (ex.: tokens por zona do Cloudflare). Para maxima segurança, use o GetHTTPS com alteracoes DNS manuais — sem chaves de API envolvidas.

Por quanto tempo preciso manter o registro TXT?

Apenas durante a válidação — normalmente alguns minutos. Após a emissão do certificado, delete o registro. Você criara um novo com um novo valor quando renovar.

E se meu provedor DNS for lento para propagar?

Defina o TTL o mais baixo que seu provedor permitir (idealmente 60 segundos). Se a propagação levar mais de 15 minutos, verifique se ha erros de digitacao no nome/valor do registro, ou tente um provedor DNS diferente. O Cloudflare propaga registros TXT em segundos.

O DNS-01 funciona com proxy Cloudflare (nuvem laranja)?

Sim. A válidação DNS-01 consulta o registro TXT via DNS, não HTTP — portanto, o status do proxy Cloudflare (nuvem laranja vs cinza) não importa. Essa é uma vantagem chave sobre o HTTP-01, que pode ser bloqueado pelo proxy.

Artigos relacionados

Primeiros passos 2026-05-08
Como obter um certificado SSL gratuito (guia passo a passo)
Obtenha um certificado SSL gratuito do Let's Encrypt em 5 minutos — sem software para instalar, sem conta para criar. Guia completo cobrindo 4 métodos, ambos os tipos de desafio, instalação em 6 plataformas e solução de problemas.
Primeiros passos 2026-05-08
Desafio HTTP-01: como funciona e como completar
HTTP-01 e a forma mais simples de comprovar a propriedade do domínio para um certificado SSL. Coloque um arquivo no seu servidor, o Let's Encrypt verifica e seu certificado e emitido.
Primeiros passos 2026-05-07
Como obter um certificado SSL wildcard gratuito
Obtenha um certificado SSL wildcard gratuito (*.example.com) do Let's Encrypt usando GetHTTPS. Requer apenas desafio DNS-01. Abrange configuração de DNS no Cloudflare, Route 53, GoDaddy e Namecheap.
Obtenha um certificado SSL gratuito no seu navegador
Sem instalacao, sem conta. Sua chave privada nunca sai do seu dispositivo.
Obter seu certificado