Registro DMARC: exemplo e resposta curta
Um registro DMARC que serve para quase qualquer domínio desde o primeiro dia é v=DMARC1; p=none; rua=mailto:[email protected], publicado como registro TXT no host _dmarc.exemplo.com.br. Esse registro pede aos servidores de e-mail destinatários que entreguem tudo normalmente, mas que enviem a você, todos os dias, um relatório sobre quem envia e-mails com o seu domínio no endereço do remetente (From). Quando esses relatórios mostram que todo o seu e-mail legítimo passa, você endurece a política DMARC passo a passo: primeiro quarantine, depois reject.
Este guia traz registros DMARC prontos para copiar em cada etapa, uma tabela com todas as tags definidas na especificação DMARC (RFC 7489), um plano seguro para passar de p=none a p=reject, uma explicação dos relatórios agregados e os erros de registro que mais quebram o DMARC. Para o básico, veja a nossa visão geral do DMARC e a FAQ o que é um registro DMARC; este artigo trata de exemplos de registros e da implantação.
Pontos principais
- Um registro DMARC é um único registro TXT em _dmarc.seudominio. Ele deve começar com v=DMARC1 e conter uma política p=.
- A política DMARC tem três valores: none (apenas monitorar), quarantine (tratar o e-mail que falha como suspeito) e reject (recusar o e-mail que falha).
- Uma mensagem passa no DMARC quando o SPF ou o DKIM passa e o domínio verificado está alinhado com o domínio do endereço From visível.
- Comece sempre com p=none e um endereço rua, leia os relatórios, corrija cada remetente legítimo e só então passe para quarantine e reject.
- Apenas um registro DMARC por domínio. Dois registros no mesmo host significam que nenhum é aplicado.
DMARC: o que é e como é um registro DMARC?
O DMARC é uma política publicada no seu DNS que diz aos destinatários o que fazer com os e-mails que usam o seu domínio sem se autenticar corretamente, e para onde enviar relatórios. O registro DMARC é uma linha curta de pares tag=valor separados por ponto e vírgula, guardada como registro TXT no subdomínio _dmarc do domínio de envio. Se o seu endereço de remetente é [email protected], o registro fica em _dmarc.exemplo.com.br. O formato é sempre o mesmo: primeiro a tag de versão, depois a política e, em seguida, as tags opcionais em qualquer ordem.
Registro DMARC no DNS: o que colocar em cada campo
| Campo DNS | O que inserir | Exemplo |
|---|---|---|
| Tipo | TXT | TXT |
| Host / Nome | _dmarc (alguns painéis DNS pedem o nome completo) | _dmarc ou _dmarc.exemplo.com.br |
| Valor / Conteúdo | O próprio registro DMARC | v=DMARC1; p=none; rua=mailto:[email protected] |
| TTL | O valor padrão do seu provedor de DNS é suficiente | 3600 |
O DMARC não substitui o SPF nem o DKIM: ele se apoia neles. Se você ainda não os configurou, comece pela nossa explicação sobre o que é SPF de e-mail e volte ao DMARC quando os dois estiverem prontos.
Exemplos de registro DMARC para cada situação
Os exemplos de registro DMARC abaixo usam exemplo.com.br e endereços de relatório inventados. Substitua-os pelo seu domínio e por uma caixa de entrada que você realmente lê (ou pelo endereço de uma ferramenta de análise de relatórios).
1. Apenas monitoramento (p=none): o registro inicial
v=DMARC1; p=none; rua=mailto:[email protected]
Nada muda na entrega. Os destinatários aplicam a filtragem habitual e enviam relatórios agregados. Use este registro nas primeiras semanas, enquanto descobre todos os serviços que enviam e-mails em nome do seu domínio.
2. Colocar em quarentena parte do e-mail que falha (p=quarantine com pct)
v=DMARC1; p=quarantine; pct=25; rua=mailto:[email protected]
Um quarto das mensagens que falham no DMARC é tratado como suspeito (na prática, geralmente vai para a pasta de spam). Segundo a RFC 7489, os 75% restantes são tratados como se a política fosse none. É um primeiro passo prudente rumo à aplicação.
3. Quarentena completa
v=DMARC1; p=quarantine; rua=mailto:[email protected]
Sem a tag pct, a política se aplica a 100% do e-mail que falha, porque 100 é o valor padrão.
4. Aplicação total (p=reject)
v=DMARC1; p=reject; rua=mailto:[email protected]
Os destinatários são orientados a recusar qualquer mensagem que falhe no DMARC. É o registro que impede outras pessoas de enviar e-mails que dizem vir exatamente do seu domínio. Mantenha a tag rua: você continua querendo ver o que está sendo bloqueado.
5. Política diferente para subdomínios (sp)
v=DMARC1; p=reject; sp=quarantine; rua=mailto:[email protected]
O domínio principal está em reject, enquanto o e-mail de subdomínios como loja.exemplo.com.br que não têm registro DMARC próprio vai para quarentena. Sem a tag sp, os subdomínios herdam o valor de p.
6. Alinhamento estrito (adkim=s, aspf=s)
v=DMARC1; p=reject; adkim=s; aspf=s; rua=mailto:[email protected]
O alinhamento estrito exige correspondência exata do domínio: uma assinatura DKIM de mail.exemplo.com.br deixa de valer para um endereço From em exemplo.com.br. Use-o só se tiver certeza de que todos os remetentes assinam e tratam devoluções com o domínio From exato.
7. Domínio que nunca envia e-mails
v=DMARC1; p=reject; sp=reject
Para um domínio estacionado ou defensivo, rejeite tudo. Combine-o com um registro SPF que não autoriza ninguém (v=spf1 -all). Um endereço rua é opcional aqui, mas mostra quem tenta abusar do domínio.
8. Vários endereços de relatório e relatórios de falha (ruf, fo)
v=DMARC1; p=none; rua=mailto:[email protected],mailto:[email protected]; ruf=mailto:[email protected]; fo=1
Os relatórios agregados vão para duas caixas (separadas por vírgula). Os relatórios de falha vão para uma terceira, e fo=1 pede um relatório de falha quando o SPF ou o DKIM falha, e não apenas quando os dois falham.
Tags DMARC explicadas: v, p, sp, rua, ruf, pct, adkim, aspf
A RFC 7489 define um pequeno conjunto de tags DMARC. Só v e p são obrigatórias; todas as outras têm um valor padrão que vale quando a tag está ausente.
| Tag | Obrigatória? | Valores possíveis | Padrão | Para que serve |
|---|---|---|---|---|
| v | Sim, e em primeiro lugar | DMARC1 | Nenhum | Identifica o registro TXT como registro DMARC. Qualquer outra primeira tag o torna inválido. |
| p | Sim | none, quarantine, reject | Nenhum | A política DMARC do domínio: o que os destinatários devem fazer com o e-mail que falha. |
| sp | Não | none, quarantine, reject | Igual a p | Política para subdomínios que não publicam o próprio registro DMARC. |
| rua | Não, mas muito recomendada | Um ou mais endereços mailto: | Nenhum | Para onde enviar os relatórios agregados (resumos), normalmente uma vez por dia. |
| ruf | Não | Um ou mais endereços mailto: | Nenhum | Para onde enviar os relatórios de falha (forenses) sobre mensagens individuais. |
| pct | Não | 0 a 100 | 100 | Porcentagem do e-mail que falha à qual a política se aplica. Útil como rampa temporária. |
| adkim | Não | r (relaxado), s (estrito) | r | Modo de alinhamento DKIM: o domínio de assinatura DKIM precisa coincidir exatamente com o domínio From? |
| aspf | Não | r (relaxado), s (estrito) | r | Modo de alinhamento SPF: o domínio de retorno (Return-Path) precisa coincidir exatamente com o domínio From? |
| fo | Não | 0, 1, d, s | 0 | Quando gerar relatórios de falha: 0 = SPF e DKIM falham, 1 = um dos dois falha, d = DKIM falha, s = SPF falha. |
| ri | Não | Segundos | 86400 | Intervalo solicitado entre relatórios agregados (um dia por padrão). |
| rf | Não | afrf | afrf | Formato dos relatórios de falha. Pode ser omitida. |
O que faz cada política DMARC: none, quarantine ou reject?
A política DMARC diz aos destinatários como tratar o e-mail do seu domínio que falha no DMARC. Ela só afeta o e-mail que falha: as mensagens que passam são entregues de acordo com a filtragem normal do destinatário.
| Política | O que acontece com o e-mail que falha | Quando usar |
|---|---|---|
| p=none | Nada muda; o destinatário apenas envia relatórios | Nas primeiras semanas, enquanto você mapeia os remetentes |
| p=quarantine | Tratado como suspeito, geralmente vai para o spam | Quando os relatórios mostram que o seu e-mail legítimo passa |
| p=reject | Recusado durante a sessão SMTP | O objetivo final, quando a quarentena já funciona sem problemas |
Uma política quarantine ou reject é o que realmente bloqueia quem coloca o seu domínio no endereço From dos próprios e-mails. Nosso artigo sobre como prevenir a falsificação de e-mails descreve esses ataques e as outras defesas que acompanham o DMARC.
O DMARC só funciona quando SPF e DKIM estão configurados em cada serviço que envia em nome do seu domínio. Veja como funciona a autenticação de e-mail com o Mailpro™ e acerte essas bases primeiro.
Como funciona o alinhamento DMARC?
O DMARC passa quando pelo menos uma de duas verificações dá certo e está alinhada com o domínio From: o SPF passa e o domínio de retorno (Return-Path) coincide com o domínio From, ou o DKIM passa e o domínio de assinatura (o valor d= da assinatura) coincide com o domínio From. Passar no SPF ou no DKIM com o domínio de outra empresa não basta.
Veja como o alinhamento funciona para uma mensagem cujo endereço From visível é [email protected]:
- DKIM assinado com d=exemplo.com.br: alinhado nos modos relaxado e estrito.
- DKIM assinado com d=mail.exemplo.com.br: alinhado no modo relaxado (mesmo domínio organizacional), não alinhado no modo estrito.
- DKIM assinado com d=plataforma-de-envio.net: o DKIM pode passar, mas não está alinhado, então não conta para o DMARC.
- Return-Path em retorno.exemplo.com.br e SPF passando: alinhado no modo relaxado, não no modo estrito.
Esse é o motivo mais comum para um domínio falhar no DMARC mesmo com os cabeçalhos dizendo «SPF e DKIM pass»: eles passam para o domínio do serviço de envio, não para o seu. A solução é configurar, em cada serviço, a assinatura DKIM com o seu próprio domínio, e é também por isso que as notificações de uma loja vão parar no spam; o nosso guia sobre confirmações de pedido no spam mostra essa configuração para uma loja virtual.
Como adicionar um registro DMARC ao seu DNS
Para adicionar um registro DMARC, crie um registro TXT no host _dmarc do seu domínio, no painel DNS de quem hospeda o seu DNS (registrador, empresa de hospedagem ou provedor de DNS).
- Verifique se ainda não existe um registro DMARC. Consulte os registros TXT de _dmarc.seudominio. Se já houver um, edite-o em vez de adicionar um segundo.
- Crie uma caixa ou um alias para os relatórios, por exemplo relatorios-dmarc@seudominio. Os relatórios chegam como anexos XML compactados, então um endereço dedicado evita lotar a caixa de entrada de alguém.
- Adicione o registro TXT: host _dmarc, valor v=DMARC1; p=none; rua=mailto:relatorios-dmarc@seudominio.
- Salve e aguarde a propagação do DNS, normalmente de alguns minutos a algumas horas, conforme o TTL.
- Consulte o registro de novo para confirmar que ele está publicado e retorna um único valor começando por v=DMARC1.
Se você envia pelo Mailpro, a nossa FAQ passo a passo sobre como configurar o DMARC com o Mailpro cobre a parte da conta.
Como passar de p=none para p=reject, passo a passo
Passar de p=none para p=reject com segurança significa provar, com relatórios, que cada fonte legítima do seu e-mail passa no DMARC antes de pedir aos destinatários que bloqueiem o que falha. Os prazos abaixo são um exemplo de implantação cautelosa para um domínio com vários serviços de envio; um domínio pequeno, com um único remetente, pode avançar mais rápido, e uma grande organização, mais devagar.
- Semanas 1 a 4: publique p=none com rua. Deixe os relatórios se acumularem durante pelo menos um ciclo completo de atividade, para que apareçam as faturas mensais, as newsletters e os e-mails de sistema raros.
- Liste todos os remetentes. Agrupe as linhas dos relatórios por origem e associe cada uma a um serviço: o seu provedor de e-mail, a plataforma de newsletters, a loja virtual, o CRM, o helpdesk, o sistema de faturamento, impressoras e scanners que enviam e-mails.
- Corrija cada remetente legítimo. Inclua-o no SPF se ele usar o seu Return-Path e configure a assinatura DKIM com o seu próprio domínio. Aguarde novos relatórios para confirmar que ele agora passa com alinhamento.
- Passe para p=quarantine; pct=25. Acompanhe os relatórios e a caixa do suporte por uma ou duas semanas. Depois suba pct para 50 e então para 100 (ou remova pct, já que 100 é o padrão).
- Passe para p=reject; pct=25 e suba da mesma forma. Com pct abaixo de 100 em uma política reject, a RFC 7489 determina que o restante do e-mail que falha vá para quarentena.
- Fique em p=reject e continue lendo os relatórios. Toda nova ferramenta que envie em nome do seu domínio precisa de SPF e DKIM antes de entrar no ar, senão o e-mail dela será recusado.
Alguns provedores de caixa de entrada já esperam um registro DMARC de quem envia em grande volume. Nosso artigo sobre as regras do Gmail e do Yahoo explica onde o DMARC entra nessas regras.
Como ler os relatórios agregados DMARC
Os relatórios agregados DMARC são arquivos XML, geralmente compactados em zip ou gzip, que um destinatário envia ao seu endereço rua para resumir todo o e-mail que viu do seu domínio em um período, normalmente um dia. Cada relatório lista os endereços IP de envio com o número de mensagens e os resultados de SPF, DKIM e DMARC. Você pode abri-los em um editor de texto, mas uma ferramenta que os processa e transforma em gráficos é muito mais rápida quando o volume cresce.
| Campo do relatório | O que ele informa |
|---|---|
| report_metadata (org_name, date_range) | Qual destinatário enviou o relatório e qual período ele cobre |
| policy_published | O registro DMARC que o destinatário encontrou para o seu domínio (um jeito rápido de achar um erro de digitação) |
| source_ip | O servidor que enviou as mensagens |
| count | Quantas mensagens vieram desse IP com esse resultado |
| disposition | O que o destinatário fez: none, quarantine ou reject |
| policy_evaluated: dkim, spf | Se o DKIM e o SPF passaram com alinhamento, que é o que o DMARC usa |
| header_from | O domínio do endereço From visível |
| auth_results | Os resultados brutos de SPF e DKIM, incluindo o domínio verificado |
Ao analisar um relatório, classifique cada linha em um destes quatro casos:
- Serviço conhecido, DMARC pass: nada a fazer.
- Serviço conhecido, DKIM pass mas sem alinhamento: o serviço assina com o próprio domínio. Configure o DKIM com o seu domínio nesse serviço.
- Serviço conhecido, SPF fail: o serviço não está no seu registro SPF, ou usa o próprio Return-Path (nesse caso, conte com um DKIM alinhado).
- IP desconhecido, tudo falha: ou um sistema interno esquecido (encontre-o), ou alguém enviando e-mails em nome do seu domínio, exatamente o que quarantine e reject vão impedir.
E-mails encaminhados ou que passam por uma lista de discussão também podem aparecer como falha, porque o encaminhamento costuma quebrar o SPF e o software de listas pode alterar a mensagem e quebrar o DKIM. Uma parcela pequena e estável de falhas vindas de servidores de encaminhamento é normal e não é motivo para ficar em p=none.
Erros comuns no registro DMARC e como corrigi-los
A maioria dos problemas de DMARC vem de poucos erros de registro e de implantação:
- Dois registros DMARC no mesmo host. Segundo a RFC 7489, os destinatários passam a ignorar o DMARC do domínio. Junte-os em um único registro.
- v=DMARC1 fora da primeira posição ou escrito errado (DMARC 1, dmarc1 com espaço, aspas no início). O registro não é reconhecido.
- Registro no host errado. Alguns painéis DNS acrescentam o domínio automaticamente, então digitar _dmarc.exemplo.com.br cria _dmarc.exemplo.com.br.exemplo.com.br. Nesses painéis, digite só _dmarc.
- rua sem mailto:, ou endereços separados por ponto e vírgula em vez de vírgula. Os relatórios nunca chegam.
- Endereço de relatório em outro domínio sem autorização. Se exemplo.com.br envia os relatórios para um endereço de relatorios.exemplo.net, o domínio que recebe precisa publicar um registro TXT em exemplo.com.br._report._dmarc.relatorios.exemplo.net com o valor v=DMARC1; caso contrário, os destinatários não enviam os relatórios.
- Pular direto para p=reject. Qualquer remetente esquecido, como o sistema de faturamento ou o formulário de contato do site, terá o e-mail recusado.
- Alinhamento estrito como padrão. adkim=s e aspf=s quebram serviços que assinam ou tratam devoluções a partir de um subdomínio. O alinhamento relaxado é o padrão por um bom motivo.
- Ficar em p=none para sempre. Só monitorar não impede ninguém de usar o seu domínio. Planeje a passagem para a aplicação desde o início.
- Esquecer os subdomínios. Sem sp, os subdomínios herdam p, o que normalmente é o desejado, mas confira se todo subdomínio que envia e-mail aparece nos relatórios antes de chegar a reject.
Quando o seu domínio está em quarantine ou reject, você cumpre um dos pré-requisitos para exibir o seu logotipo ao lado dos seus e-mails; o nosso guia sobre BIMI explica o resto. Para uma definição curta que você pode compartilhar com a equipe, veja a definição de DMARC no glossário.
Perguntas frequentes sobre o registro DMARC
Qual é um bom exemplo de registro DMARC para começar?
Comece com v=DMARC1; p=none; rua=mailto:relatorios-dmarc@seudominio, publicado como registro TXT em _dmarc.seudominio. Ele não muda nada na entrega e ativa os relatórios de que você precisa antes de aplicar uma política.
O que significa «política DMARC não habilitada»?
«Política DMARC não habilitada» significa que o seu domínio não tem registro DMARC, ou tem um em p=none, então os destinatários não são orientados a agir sobre o e-mail que falha. Para habilitar a política DMARC, publique um registro e passe para quarantine ou reject; a nossa FAQ sobre o aviso política DMARC não habilitada explica a mensagem em detalhe.
p=none é suficiente?
p=none basta para receber relatórios e ter um registro DMARC publicado, mas não protege o seu domínio. Só quarantine ou reject pedem aos destinatários que bloqueiem o e-mail que falha no DMARC.
Os subdomínios precisam de um registro DMARC próprio?
Não. Se um subdomínio não tem registro DMARC, os destinatários usam o registro do domínio organizacional e aplicam o valor sp, ou p quando não há sp. Publique um registro _dmarc separado em um subdomínio apenas quando ele precisar de uma política diferente.
Quanto tempo leva para receber os relatórios DMARC?
Os relatórios agregados costumam ser enviados uma vez por dia, porque o intervalo padrão do DMARC é de 86.400 segundos. Conte com os primeiros um ou dois dias depois de publicar o registro, vindos dos destinatários que viram e-mails do seu domínio.
O Mailpro e a autenticação de e-mail
Chegue a p=reject com SPF e DKIM bem alinhados
Um registro DMARC só protege você quando cada mensagem enviada passa nele. O Mailpro é hospedado na Suíça, nasceu em conformidade com o RGPD e cobra por envios, não por contatos; nosso guia de autenticação mostra como configurar SPF, DKIM e DMARC para o seu domínio de envio.