Construtor de registros DNS CAA
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
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
- Insira seu domínio apex ou subdomínio (CAA é consultado das folhas para cima; configurá-lo no apex geralmente cobre tudo).
- 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.
- Adicione um registro `issuewild` se você for emitir wildcards. Senão, omita — `issue` sozinho NÃO cobre wildcards.
- Adicione um registro `iodef` com endereço mailto: ou https: para as CAs te notificarem violações.
- 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
Referência de Registros DNS
Cheat sheet pesquisável de tipos de registro DNS — A, AAAA, CNAME, MX, TXT, NS, SOA, PTR, SRV, CAA, DNSSEC, SVCB / HTTPS — com exemplos.
Divisor de Registro TXT (Chunks de 255 Bytes)
Divida um registro TXT SPF, DKIM ou DMARC longo nos chunks de 255 bytes que o protocolo DNS requer — emite sintaxe BIND, arquivo zone genérico, Cloudflare ou Route 53.
Descodificador de certificados SSL (X.509)
Cole um certificado PEM e leia-o: sujeito, emissor, validade, SAN, chave, impressões digitais e extensões, descodificado no navegador.
Construtor e parser de registros DKIM
Construa ou parseie um registro DNS TXT DKIM (DomainKeys Identified Mail) — cole sua chave pública, escolha selector, tipo de chave (RSA/Ed25519), hash e flags, e obtenha o registro completo, o hostname `selector._domainkey` e uma versão fragmentada para registros acima de 255 caracteres.
Codificador / Decodificador de HTTP Basic Auth
Codifica `usuário:senha` no cabeçalho `Authorization: Basic` Base64 — ou cole um cabeçalho existente pra ver quem tá dentro.
Gerador OAuth 2.0 PKCE
Gera code_verifier + code_challenge S256/plain para OAuth 2.0 PKCE (RFC 7636). Também monta a URL de autorização e um curl pronto para a troca de token.