AZ Tools

Construtor de registros DNS CAA

Rede

Um registro CAA (RFC 8659, antigo 6844) é um registro DNS tipo TXT que informa às autoridades certificadoras públicas quais CAs podem emitir certificados para seu domínio. Toda CA do CA/Browser Forum Baseline Requirements deve verificar CAA antes de emitir — se houver registro e a CA não estiver listada, recusa. É uma defesa pequena mas poderosa contra emissões rebeldes ou mal configuradas, e é grátis. Três tags são definidos: `issue` autoriza uma CA para certificados regulares, `issuewild` autoriza uma CA para wildcards (padrão igual a `issue` se ausente), e `iodef` fornece contato (mailto:/https:) para relatórios. Cada registro carrega um byte de flags; ativar o bit crítico (128) faz as CAs recusarem se não entenderem algum parâmetro associado. Esta ferramenta constrói os registros e os exporta em dois formatos: sintaxe BIND completa (cole no arquivo de zona), e linhas separadas tag/valor (para painéis que as pedem separadamente). A lista de CAs comuns permite adicionar Let's Encrypt, DigiCert, Sectigo, Google, Amazon e outras com um clique. O valor especial `;` significa 'negar todas as CAs' — uma política forte quando você não precisa emitir.

Registros

Tag
Valor
Tag
Valor
Tag
Valor

Adicionar CA comum (como registro issue)

Formato BIND

example.com. IN CAA 0 issue "letsencrypt.org"
example.com. IN CAA 0 issuewild "letsencrypt.org"
example.com. IN CAA 0 iodef "mailto:security@example.com"

Linhas tag / valor

Para painéis DNS que pedem flags, tag e valor separadamente. Formato: flags tag valor

  0  issue      "letsencrypt.org"
  0  issuewild  "letsencrypt.org"
  0  iodef      "mailto:security@example.com"
Sobre registros CAA

CAA significa Certificate Authority Authorization (RFC 8659). É um registro DNS que diz às CAs públicas se podem emitir certificados para seu domínio. As CAs devem consultar CAA em cada emissão e recusar quando não estão listadas. A ferramenta emite dois formatos: sintaxe BIND completa com escape adequado para colar em arquivos de zona, e tabela flags / tag / valor para painéis (Cloudflare, Route53, etc.). O valor especial `;` em registro issue ou issuewild significa 'negar todas as CAs' — um bom padrão se você não usa TLS no momento. CAA é hierárquico: um registro no apex cobre todos os subdomínios a menos que exista um conjunto CAA mais específico abaixo. Registros levam até 8 horas para propagar totalmente devido ao cache das CAs.

Como usar

  1. Insira seu domínio apex ou subdomínio (CAA é consultado das folhas para cima; configurá-lo no apex geralmente cobre tudo).
  2. Clique em um dos botões de CA comum para adicionar um registro `issue` inicial. Edite tag, valor ou flag crítico conforme necessário.
  3. Adicione um registro `issuewild` se você for emitir wildcards. Senão, omita — `issue` sozinho NÃO cobre wildcards.
  4. Adicione um registro `iodef` com endereço mailto: ou https: para as CAs te notificarem violações.
  5. Cole a saída BIND no seu arquivo de zona (ou use o formato de linhas se seu painel DNS pede tag e valor separados).

Perguntas frequentes

Onde hospedo o registro CAA?
No mesmo domínio que você quer proteger. A busca CAA sobe do nome solicitado até o apex — um cert para `api.example.com` consulta `api.example.com`, depois `example.com`, depois raiz. O comum é colocar um conjunto CAA no apex e deixar que cubra todos os subdomínios. CAA por subdomínio só importa se quiser política diferente lá.
`issue letsencrypt.org` bloqueia wildcards de outras CAs?
Sim — se você tem registros `issue` e nenhum `issuewild`, os `issue` também restringem wildcards. Mas se há qualquer `issuewild`, ele prevalece para wildcards. O padrão mais seguro é listar ambos explicitamente quando quer ambos, ou apenas `issue` se nunca precisar de wildcards. `;` em `issuewild` permitindo certs regulares é a política comum 'nenhum wildcard de ninguém'.
O que faz a flag crítica?
O bit 7 (valor 128) é a flag issuer-critical. Ativa em uma tag desconhecida, as CAs devem recusar a emissão. Hoje só `issue`, `issuewild` e `iodef` são definidos, então crítica afeta sobretudo compatibilidade futura. Deixe desativada (flags = 0) em configurações típicas; use 128 só se especifica deliberadamente uma tag que todas as CAs devem entender.
Quão rápido as CAs honram um novo CAA?
Pelos Baseline Requirements, as CAs verificam CAA no momento de emissão, com TTL máximo de cache de 8 horas do valor anterior. Um novo registro pode levar até 8 horas para fazer efeito em todas as CAs. Para evitar que negativos cacheados bloqueiem emissão, dê aos seus registros TTL de 5-60 minutos durante setup inicial e aumente depois.
DNSSEC afeta CAA?
Se sua zona é assinada com DNSSEC, as CAs devem verificar as assinaturas e tratar respostas não assinadas como ausentes. Um DNSSEC mal configurado pode quebrar a verificação CAA e travar renovações. Valide a zona com uma ferramenta como dnsviz.net antes de depender da aplicação CAA.

Ferramentas relacionadas