Email Spam Tester Executar um teste · Para agentes · API · Blog

Como o teste funciona

Envie uma mensagem para um endereço descartável e 42 testes serão executados nela. Esta página reúne todos eles: o que cada um analisa, quanto custa à sua pontuação quando falha e de qual seção do padrão vem.

Nada aqui é nossa opinião apresentada como regra. Quando um teste aplica algo que um padrão determina, a frase desse padrão é citada abaixo dele. Quando ele aplica algo que Google ou Yahoo exige, a página correspondente é vinculada. Quando se trata do nosso próprio julgamento, isso é indicado.

Atualizado:

VerificaçãoGrupoNossa pontuaçãoPontuação clássica
Cadeia ARCAutenticação−20
Assinatura DKIMAutenticação−18−1
Alinhamento de DKIMAutenticação−10−1
Resultado do DMARCAutenticação−140
Sender IDAutenticação−5−0.5
SPFAutenticação−18−1
Alinhamento de SPFAutenticação−5−0.5
Nome de host de envio resolveInfraestrutura e reputação−5−3
Listas de bloqueioInfraestrutura e reputação−25−3
Nome HELOInfraestrutura e reputação−50
Registro MXInfraestrutura e reputação−5−3
DNS reversoInfraestrutura e reputação−12−1.5
Criptografia de transporteInfraestrutura e reputação−50
Avaliador de IAMecanismos de spam
Veredito combinadoMecanismos de spam−250
Postmark SpamCheckMecanismos de spam
RspamdMecanismos de spam
SpamAssassinMecanismos de spam0−3
Texto alternativo de imagemConteúdo−4−0.5
Disponibilidade dos linksConteúdo−5−1
Script e iframeConteúdo−10−1
Equilíbrio entre texto e HTMLConteúdo−3−0.3
Partes de texto e HTMLConteúdo−50
Tamanho do HTMLConteúdo−3−0.3
Peso das imagensConteúdo−3−0.3
Destinos dos links visíveisConteúdo−30
Reputação dos linksConteúdo−400
Verificação de anexosConteúdo−600
PreheaderConteúdo−20
Linha de assuntoConteúdo−30
Links encurtadosConteúdo−5−0.5
Política DMARC publicadaRegras para remetentes em massa−60
List-UnsubscribeRegras para remetentes em massa−10−1
Cancelamento com um cliqueRegras para remetentes em massa−80
TLS para e-mails em massaRegras para remetentes em massa−50
BIMIRecomendações00
Idade e tamanho da chave DKIMRecomendações00
Entrega de relatórios DMARCRecomendações00
DNSSECRecomendações00
MTA-STSRecomendações00
Comprimento do caminho de retornoRecomendações00
Relatórios de TLSRecomendações00

Autenticação

Se o servidor de recebimento consegue provar que a mensagem veio de onde afirma ter vindo. Esta é a metade da capacidade de entrega que depende exclusivamente de DNS e a metade que Gmail e Yahoo tornaram obrigatória para remetentes em massa em 2024.

Cadeia ARC auth.arc

O ARC preserva o resultado da autenticação ao passar por um encaminhador. Sem ele, uma lista de discussão que adiciona um rodapé invalida sua assinatura DKIM, e a cópia encaminhada falha no DMARC no destino final.

Se falhar: Nada a fazer como remetente. Isso é importante se você opera uma lista ou um encaminhador, e explica por que algumas de suas mensagens falham no DMARC depois que alguém as encaminha.

Custa até 2 pontos de 100 na nossa pontuação.

RFC 7960 §1 — Introduction

DMARC with restrictive policies causes problems for many Mailing Lists.

RFC 8617 §2.1 — Evidence

In ARC's situation, the "evidence" is a message's authentication assessment at any point along the delivery path between origination and final delivery.

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Assinatura DKIM auth.dkim

DKIM assina partes da mensagem com uma chave privada e publica a chave pública no DNS. Verificamos todas as assinaturas que a mensagem contém e informamos o domínio de assinatura, o seletor e o tamanho da chave.

Se falhar: Ative o DKIM em sua plataforma de envio e publique a chave fornecida por ela. Use 2048 bits: 1024 ainda é verificado, mas uma chave tão curta pode ser quebrada e não é mais segura.

Custa até 18 pontos de 100 na nossa pontuação e até 1 de 10 na pontuação clássica.

RFC 6376 §3.5 — The DKIM-Signature Header Field

The signature of the email is stored in the DKIM-Signature header field.

RFC 6376 §6.1 — Extract Signatures from the Message

Verifiers MUST NOT attribute ultimate meaning to the order of multiple DKIM-Signature header fields.

RFC 8301 §3.1 — Signing and Verification Algorithms

rsa-sha1 MUST NOT be used for signing or verifying.

RFC 8463 §6 — Transition Considerations

For backward compatibility, signers can add multiple signatures that use old and new signing algorithms.

Google — Set up DKIM

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Alinhamento de DKIM auth.dkim_alignment

Uma assinatura válida não é suficiente para o DMARC. O domínio de assinatura precisa corresponder ao domínio no cabeçalho From, exatamente ou pelo domínio organizacional, dependendo da política que você publicou.

Se falhar: Assine com seu próprio domínio, em vez do domínio da sua plataforma. A maioria das plataformas oferece suporte a isso e o chama de domínio de envio personalizado ou autenticado.

Custa até 10 pontos de 100 na nossa pontuação e até 1 de 10 na pontuação clássica.

RFC 9989 §4.4.1 — DKIM-Authenticated Identifiers

A single email can contain multiple DKIM signatures, and it is considered to produce a DMARC "pass" result if any DKIM-Authenticated Identifier aligns with the Author Domain.

Google — Set up DMARC

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Resultado do DMARC auth.dmarc

O DMARC vincula SPF e DKIM ao domínio que seu leitor vê e informa aos destinatários o que fazer quando nenhum dos dois está alinhado. Informamos a política publicada e se esta mensagem a satisfez.

Se falhar: Publique um registro DMARC. Comece com p=none, leia os relatórios por algumas semanas e depois passe para quarantine quando souber quais outros serviços enviam mensagens em seu nome.

Custa até 14 pontos de 100 na nossa pontuação.

RFC 9989 §5.3.5 — Determine DMARC "Pass" or "Fail"

If no Authenticated Identifiers exist for the domain, or none of the Authenticated Identifiers align with the Author Domain, the message is considered to fail the DMARC mechanism check.

RFC 9989 §4.7 — DMARC Policy Record Format

DMARC Policy Records follow the extensible "tag-value" syntax for DNS-based key records defined in DKIM [RFC6376].

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Yahoo — Sender requirements and recommendations

Sender ID auth.sender_id

A mesma verificação que o SPF, executada no domínio do cabeçalho From, em vez do envelope. Ela responde a uma pergunta diferente: se o domínio que seu leitor vê autoriza o servidor que enviou a mensagem. Uma mensagem pode ser aprovada no SPF em seu envelope enquanto o domínio visível não endossa ninguém.

Se falhar: Publique SPF para o domínio no seu cabeçalho From, não apenas para o domínio de devolução que sua plataforma forneceu.

Custa até 5 pontos de 100 na nossa pontuação e até 0.5 de 10 na pontuação clássica.

RFC 4406 §4 — Record Selection

After the above steps, there should be one record remaining and evaluation can proceed.

SPF auth.spf

SPF é um registro DNS que lista quais servidores podem enviar mensagens pelo seu domínio. O servidor receptor pega o endereço no envelope, consulta o registro desse domínio e verifica se o IP que está se conectando consta nele. Informamos o resultado e o número de consultas DNS de que o registro precisou, porque a avaliação para em dez e qualquer valor acima disso é um erro permanente, em vez de uma aprovação.

Se falhar: Publique um registro que identifique sua plataforma de envio e nada mais. Se o seu estiver próximo do limite de dez consultas, achate os includes que você não usa (um registro que é aprovado hoje começa a falhar no dia em que um provedor adiciona um include próprio).

Custa até 18 pontos de 100 na nossa pontuação e até 1 de 10 na pontuação clássica.

RFC 7208 §4.6.4 — DNS Lookup Limits

SPF implementations MUST limit the total number of those terms to 10 during SPF evaluation, to avoid unreasonable load on the DNS. If this limit is exceeded, the implementation MUST return "permerror".

RFC 7208 §2.6 — Results of Evaluation

Section 4 defines check_host(), a model function definition that uses the inputs defined above and the sender's policy published in the DNS to reach a conclusion about client authorization.

Google — Set up SPF

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Alinhamento de SPF auth.spf_alignment

Indica se o endereço de devolução corresponde ao endereço From que um leitor vê. O SPF autoriza o envelope, e o DMARC só considera essa autorização quando os dois estão alinhados.

Se falhar: Solicite à sua plataforma de envio um subdomínio de devolução do seu próprio domínio. Se o seu DKIM já estiver alinhado, isso não é urgente, mas deixa você sem uma alternativa quando o DKIM falha durante o trânsito.

Custa até 5 pontos de 100 na nossa pontuação e até 0.5 de 10 na pontuação clássica.

RFC 9989 §4.4.2 — SPF-Authenticated Identifiers

Only an SPF-Authenticated Identifier that has Identifier Alignment with the Author Domain is enough to validate the authorized use of the Author Domain.

RFC 9989 §5.3.5 — Determine DMARC "Pass" or "Fail"

If one or more of the Authenticated Identifiers align with the Author Domain, the message is considered to pass the DMARC mechanism check.

Google — Set up DMARC

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Infraestrutura e reputação

A máquina e o endereço de onde a mensagem foi enviada e o que o restante da internet já pensa deles.

Nome de host de envio resolve infra.a_record

Se o nome de host anunciado no HELO tem algum registro de endereço.

Se falhar: Publique um registro A para o nome que seu servidor anuncia.

Custa até 5 pontos de 100 na nossa pontuação e até 3 de 10 na pontuação clássica.

RFC 5321 §5.1 — Locating the Target Host

If an empty list of MXs is returned, the address is treated as if it was associated with an implicit MX RR, with a preference of 0, pointing to that host.

Google — Set up MX records

Listas de bloqueio infra.dnsbl

Se o IP de envio está listado por alguma das listas de bloqueio que os destinatários realmente consultam. Nossa relação é verificada usando o ponto de teste documentado de cada zona, em vez de ser montada a partir de uma pesquisa na web, porque uma zona inativa responde NXDOMAIN e isso é interpretado como "limpo".

Se falhar: Siga o processo de remoção da lista no site do operador responsável. Uma listagem em uma zona importante bloqueia o email por completo, portanto resolva isso antes de qualquer outra coisa na página.

Custa até 25 pontos de 100 na nossa pontuação e até 3 de 10 na pontuação clássica.

RFC 5782 §2.1 — IP Address DNSxL

Each IPv4 address listed in the DNSxL has a corresponding DNS entry.

RFC 5782 §5 — Test and Contact Addresses

IPv4-based DNSxLs MUST contain an entry for 127.0.0.2 for testing purposes.

Google — Postmaster Tools: reputation and delivery errors

Google — Email sender guidelines

Nome HELO infra.helo

O nome que o servidor de envio anuncia para si mesmo no início da conversa SMTP. Ele precisa ser um domínio totalmente qualificado que resolva.

Se falhar: Defina o nome de host do seu servidor de e-mail como um nome real no seu domínio, não como um ID de contêiner ou um nome interno.

Custa até 5 pontos de 100 na nossa pontuação.

RFC 5321 §4.1.1.1 — Extended HELLO (EHLO) or HELLO (HELO)

The argument clause contains the fully-qualified domain name of the SMTP client, if one is available.

Google — Email sender guidelines

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Registro MX infra.mx

Se o domínio no seu cabeçalho From pode receber e-mails. Sem isso, respostas e mensagens de devolução não têm para onde ir, e os filtros consideram um domínio de envio que não pode receber como um sinal negativo.

Se falhar: Publique um registro MX para o domínio do qual você envia, mesmo que ele apenas encaminhe para uma caixa de correio que você lê uma vez por mês.

Custa até 5 pontos de 100 na nossa pontuação e até 3 de 10 na pontuação clássica.

RFC 5321 §5.1 — Locating the Target Host

The lookup first attempts to locate an MX record associated with the name.

Google — Set up MX records

DNS reverso infra.rdns

Se o IP de envio resolve de volta para um nome de host e se esse nome de host resolve diretamente para o mesmo IP. O caminho de ida e volta é o ponto principal: é fácil configurar um PTR apontando para qualquer lugar, mas um par correspondente é uma evidência de que o endereço é seu.

Se falhar: Peça a quem controla o IP para configurar o PTR com um nome que você controla e certifique-se de que esse nome tenha um registro A apontando de volta.

Custa até 12 pontos de 100 na nossa pontuação e até 1.5 de 10 na pontuação clássica.

RFC 1912 §2.1 — Inconsistent, Missing, or Bad Data

Make sure your PTR and A records match. For every IP address, there should be a matching PTR record in the in-addr.arpa domain.

Google — Email sender guidelines

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Criptografia de transporte infra.tls

Se a mensagem chegou por TLS e com qual cifra. Todos os sistemas modernos negociam TLS; uma mensagem que chega sem criptografia indica algo sobre a configuração de envio.

Se falhar: Habilite STARTTLS no servidor de envio. Todas as plataformas amplamente usadas já fazem isso, portanto uma falha aqui geralmente significa que há um relay auto-hospedado no caminho.

Custa até 5 pontos de 100 na nossa pontuação.

RFC 3207 §2 — STARTTLS Extension

The STARTTLS extension to SMTP is laid out as follows:

Google — Send email over a secure TLS connection

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Mecanismos de spam

O que filtros de conteúdo independentes concluem sobre a mensagem. Dois mecanismos em vez de um, porque a pontuação de um único mecanismo é a opinião desse mecanismo.

Avaliador de IA spam.ai_judge

Um modelo estima como um filtro moderno de aprendizado de máquina trataria a mensagem, com base nas constatações técnicas e nas medições do conteúdo. Ele vê os fatos, não o texto do corpo.

Se falhar: Apenas detalhamento por si só. Sua estimativa alimenta o veredito combinado abaixo.

Exibido para fins de detalhamento. Nunca afeta a pontuação.

Veredito combinado spam.panel

Um número gerado pelos mecanismos que responderam, ponderado para que o mais enfático não seja simplesmente diluído pela média. SpamAssassin e Postmark contam como um único voto porque compartilham uma base de regras.

Se falhar: Analise as constatações individuais. Esta linha muda quando elas mudam.

Custa até 25 pontos de 100 na nossa pontuação.

Google — Why Gmail marks messages as spam

How this score is calculated

Postmark SpamCheck spam.postmark

Uma terceira opinião, desativada por padrão. Seu endpoint recebe a mensagem inteira, e não podemos ocultar nenhuma parte dela sem destruir o que está sendo medido, portanto ativá-lo significa aceitar que cada mensagem testada seja copiada para terceiros.

Se falhar: Nada a fazer. Quando está desativado, a verificação informa que está desativado, o que não é o mesmo que uma aprovação.

Exibido para fins de detalhamento. Nunca afeta a pontuação.

Rspamd spam.rspamd

Um segundo filtro, desenvolvido de forma independente. Ele discorda do SpamAssassin com frequência suficiente para valer a consulta, motivo pelo qual está aqui.

Se falhar: Apenas detalhamento. A opinião deste mecanismo é incorporada ao veredito combinado, em vez de receber uma pontuação própria.

Exibido para fins de detalhamento. Nunca afeta a pontuação.

SpamAssassin spam.spamassassin

O filtro clássico baseado em regras, que ainda é o mecanismo por trás da maioria das ferramentas de teste de email. Cada regra acionada é listada com seu peso.

Se falhar: Leia as regras acionadas em vez do total. A maioria é fácil de corrigir depois que você consegue ver quais são.

Custa até 3 de 10 na pontuação clássica.

Google — Why Gmail marks messages as spam

Apache SpamAssassin — rule documentation

Conteúdo

A própria mensagem: sua estrutura, seus links, suas imagens, os elementos que um filtro lê antes de decidir.

Texto alternativo de imagem content.alt_attributes

Se as imagens contêm atributos alt. Clientes de e-mail bloqueiam imagens remotas por padrão, então, nos primeiros segundos, o texto alternativo é a sua mensagem.

Se falhar: Escreva um texto alternativo que transmita o significado e nunca deixe o elemento visual principal sem um.

Custa até 4 pontos de 100 na nossa pontuação e até 0.5 de 10 na pontuação clássica.

Google — Email sender guidelines

Script e iframe content.forbidden_tags

Se o HTML contém tags que nenhum cliente de e-mail executará. Na melhor das hipóteses, elas são removidas e, na pior, são tratadas como um sinal de evasão.

Se falhar: Remova script, iframe, object e embed. Qualquer elemento interativo deve ficar atrás de um link.

Custa até 10 pontos de 100 na nossa pontuação e até 1 de 10 na pontuação clássica.

Google — Email sender guidelines

Equilíbrio entre texto e HTML content.html_text_ratio

Quanto da mensagem é marcação em comparação com quanto é texto legível. Uma página de marcação envolvendo uma única frase é um formato que os filtros reconhecem.

Se falhar: Escreva uma parte de texto que diga o mesmo que o HTML, em vez de um placeholder.

Custa até 3 pontos de 100 na nossa pontuação e até 0.3 de 10 na pontuação clássica.

RFC 2046 §5.1.4 — Alternative Subtype

Systems should recognize that the content of the various parts are interchangeable.

Google — Why Gmail marks messages as spam

Partes de texto e HTML content.html_version

Se a mensagem contém uma alternativa em texto simples junto com o HTML. Alguns filtros consideram a ausência dela, e todo leitor de tela precisa de uma.

Se falhar: Envie multipart/alternative com uma versão de texto real, não uma parte vazia ou uma linha dizendo para visualizá-la em um navegador.

Custa até 5 pontos de 100 na nossa pontuação.

RFC 2046 §5.1.4 — Alternative Subtype

The "multipart/alternative" type is syntactically identical to "multipart/mixed", but the semantics are different. In particular, each of the body parts is an "alternative" version of the same information.

Google — Email sender guidelines

Tamanho do HTML content.html_weight

O tamanho da parte HTML. O Gmail corta uma mensagem após aproximadamente 102 KB e oculta o restante atrás de um link, levando junto o rodapé de cancelamento de inscrição.

Se falhar: Reduza o CSS inline e os blocos de estilo repetidos (a maioria dos templates cabe em um terço do limite depois que as regras não utilizadas são removidas).

Custa até 3 pontos de 100 na nossa pontuação e até 0.3 de 10 na pontuação clássica.

Google — Email sender guidelines

Peso das imagens content.images_weight

O tamanho total das imagens que a mensagem carrega. Imagens pesadas tornam a mensagem lenta em um celular, e emails compostos apenas por imagens têm um formato que os filtros tratam com suspeita.

Se falhar: Compacte-as e verifique se a mensagem continua legível com as imagens desativadas.

Custa até 3 pontos de 100 na nossa pontuação e até 0.3 de 10 na pontuação clássica.

Google — Email sender guidelines

Verificação de anexos content.malware

Se os anexos contêm malware conhecido. Em implantações nas quais o verificador está desativado, este item informa que a verificação não foi executada, em vez de informar que não há ameaças.

Se falhar: Se isso for acionado, pare de enviar e descubra o que há na máquina que gerou a mensagem.

Custa até 60 pontos de 100 na nossa pontuação.

Google — Why Gmail marks messages as spam

ClamAV — how detection works

Preheader content.preheader

A linha de pré-visualização que um cliente exibe ao lado do assunto. Sem ela, o cliente exibe o que vier primeiro no corpo, que geralmente é um link para visualizar no navegador.

Se falhar: Adicione um bloco de preheader oculto como o primeiro elemento do corpo.

Custa até 2 pontos de 100 na nossa pontuação.

Google — Email sender guidelines

Linha de assunto content.subject

O comprimento, o uso de maiúsculas e os padrões que os filtros pontuam. Medimos o assunto decodificado, portanto, uma linha em cirílico ou CJK é avaliada como texto, e não como sua codificação.

Se falhar: Mantenha-o com menos de aproximadamente 60 caracteres e remova as maiúsculas excessivas e os pontos de exclamação.

Custa até 3 pontos de 100 na nossa pontuação.

RFC 5322 §2.2 — Header Fields

Header fields are lines beginning with a field name, followed by a colon (":"), followed by a field body, and terminated by CRLF.

RFC 2047 §2 — Syntax of encoded-words

An 'encoded-word' is defined by the following ABNF grammar.

Google — Why Gmail marks messages as spam

Links encurtados content.url_shortener

Se os links passam por um encurtador público. Encurtadores ocultam o destino, que é exatamente o que os filtros são treinados para considerar suspeito.

Se falhar: Use links do seu próprio domínio ou use o domínio de rastreamento da sua plataforma em um subdomínio seu.

Custa até 5 pontos de 100 na nossa pontuação e até 0.5 de 10 na pontuação clássica.

Google — Why Gmail marks messages as spam

Regras para remetentes em massa

Os requisitos que Gmail e Yahoo publicam para qualquer pessoa que envie em grande volume. Eles se aplicam a disparos de email e são ignorados para mensagens que não parecem ser um disparo.

Política DMARC publicada compliance.dmarc_present

Se o domínio From publica algum registro DMARC, independentemente de esta mensagem ter passado na verificação. Gmail e Yahoo exigem um de remetentes em massa.

Se falhar: Publique um registro. p=none é suficiente para atender ao requisito e fornece relatórios com os quais você pode trabalhar.

Custa até 6 pontos de 100 na nossa pontuação.

RFC 9989 §4.7 — DMARC Policy Record Format

If this tag is not present in an otherwise syntactically valid DMARC Policy Record, then the record is treated as if it included "p=none".

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Yahoo — Sender requirements and recommendations

List-Unsubscribe compliance.list_unsubscribe

Se a mensagem contém um cabeçalho de cancelamento de inscrição que um cliente de e-mail pode usar. Gmail e Yahoo o exigem de remetentes em massa, e sua ausência é filtrada independentemente de todo o resto. A regra se aplica a campanhas. Uma mensagem que pede ao destinatário que confirme uma inscrição, ou informa que ela foi concluída, é enviada a uma pessoa sobre algo que ela acabou de fazer; a CAN-SPAM chama isso de mensagem transacional ou de relacionamento, e nem Gmail nem Yahoo exigem nela um cabeçalho de cancelamento de inscrição. Portanto, esta verificação lê primeiro a mensagem. Uma confirmação de inscrição, uma mensagem de boas-vindas, uma mensagem transacional ou uma notificação sem cabeçalhos de lista não é penalizada, e o relatório informa como a mensagem foi classificada. Uma mensagem de boas-vindas recheada de ofertas é, na prática, a primeira edição da campanha; sem cabeçalhos de lista, a verificação não consegue distinguir uma da outra e não aplica penalidade com base em suposição. Se a mensagem contém List-Unsubscribe ou List-Id, você mesmo a declarou como mensagem de lista, e a verificação é executada como sempre foi.

Se falhar: Adicione um cabeçalho List-Unsubscribe com um URI HTTPS. Toda plataforma de envio pode fazer isso.

Custa até 10 pontos de 100 na nossa pontuação e até 1 de 10 na pontuação clássica.

RFC 2369 §3.2 — List-Unsubscribe

The List-Unsubscribe field describes the command (preferably using mail) to directly unsubscribe the user (removing them from the list).

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Yahoo — Sender requirements and recommendations

Cancelamento com um clique compliance.one_click_unsubscribe

A forma mais rigorosa: um URI HTTPS, um cabeçalho "List-Unsubscribe-Post" e uma única assinatura DKIM válida cobrindo ambos os cabeçalhos. Os três são necessários, ou o destinatário não exibe o botão. Assim como a verificação de List-Unsubscribe, isso se aplica a campanhas, não a uma confirmação ou a uma mensagem de boas-vindas.

Se falhar: O erro mais comum é a assinatura: as plataformas assinam "List-Unsubscribe" e esquecem "List-Unsubscribe-Post". Os nomes dos dois cabeçalhos precisam aparecer na tag h= da mesma assinatura.

Custa até 8 pontos de 100 na nossa pontuação.

RFC 8058 §4 — Additional Requirements

The List-Unsubscribe and List-Unsubscribe-Post headers MUST be covered by the signature and included in the "h=" tag of a valid DKIM-Signature header field.

RFC 8058 §3.1 — Mail Senders

The List-Unsubscribe header field MUST contain one HTTPS URI.

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Yahoo — Sender requirements and recommendations

Recomendações

Vale a pena seguir e nunca afetam a pontuação. Nada nesta seção pode custar pontos, o que é uma decisão de produto aplicada pelos testes.

BIMI advisory.bimi

Se o domínio publica um registro BIMI, que coloca um logotipo ao lado das suas mensagens em alguns clientes. Primeiro, ele precisa de uma política DMARC aplicada e de um certificado de marca verificada que custa dinheiro.

Se falhar: Vale a pena fazer quando DMARC estiver em quarentena ou rejeição e o volume justificar o certificado.

Recomendação. Não custa nada.

BIMI — draft specification, not yet an RFC

Idade e tamanho da chave DKIM advisory.dkim_key_rotation

O tamanho da chave de assinatura e há quanto tempo ela está em uso. Chaves curtas ficam mais baratas de atacar offline a cada ano que passa.

Se falhar: Passe para 2048 bits e faça a rotação de acordo com um cronograma. Publique o novo seletor, passe a assinar com ele e depois desative o antigo.

Recomendação. Não custa nada.

RFC 8301 §3.2 — Key Sizes

Since short RSA keys more easily succumb to off-line attacks, Signers MUST use RSA keys of at least 1024 bits for all keys. Signers SHOULD use RSA keys of at least 2048 bits.

Google — Set up DKIM

Entrega de relatórios DMARC advisory.dmarc_reporting

Se os endereços no seu registro DMARC realmente receberão alguma coisa. Se um endereço de relatório estiver fora do seu próprio domínio, a RFC 9990 exige que esse domínio publique primeiro sua própria permissão, como um registro TXT em your-domain._report._dmarc.their-domain. Sem isso, um destinatário descarta o endereço: sem devolução, sem erro, sem relatório. Essa é a configuração comum, e não uma configuração incomum, porque o endereço normalmente pertence a um fornecedor de monitoramento ou está no seu domínio principal enquanto a política fica em um subdomínio de envio. A mesma regra abrange relatórios de falha, com a RFC 9991 indicando o mesmo procedimento para a tag ruf. Consultamos os mesmos registros que um destinatário consultaria e mostramos os nomes que consultamos.

Se falhar: Peça a quem administra o domínio de destino que publique um registro TXT contendo v=DMARC1 no nome mostrado na constatação. Os fornecedores de monitoramento geralmente fazem isso para você assim que o domínio é adicionado à conta deles, portanto, se o registro estiver ausente, o domínio provavelmente nunca foi adicionado por eles. Se, em vez disso, os relatórios forem enviados ao seu próprio domínio, nada será necessário.

Recomendação. Não custa nada.

RFC 9990 §4 — Verifying External Destinations

When a Mail Receiver discovers a DMARC Policy Record in the DNS, and the Organizational Domain at which that record was discovered is not identical to the Organizational Domain of the host part of the authority component of a [RFC3986] specified in the "rua" tag, the following verification steps MUST be taken:

RFC 9990 §4 — Verifying External Destinations

Where the above algorithm fails to confirm that the external reporting was authorized by the Report Consumer, the URI MUST be ignored by the Mail Receiver generating the report.

RFC 9991 §5 — Verifying External Destinations

In case of external destinations, a Mail Receiver who generates failure reports MUST use the Verifying External Destinations procedure described in Section 4 of [RFC9990], substituting the "ruf" tag where the "rua" tag appears in that procedure.

Google — Set up DMARC

DNSSEC advisory.dnssec

Se o domínio está assinado. SPF, DKIM e DMARC ficam todos no DNS, portanto um invasor capaz de forjar respostas de DNS pode forjar os três.

Se falhar: Ative-o no seu registrador. Geralmente é uma única opção, e o registrador cuida do restante.

Recomendação. Não custa nada.

RFC 4033 §2 — Definitions of Important DNSSEC Terms

Authentication Chain: An alternating sequence of DNS public key (DNSKEY) RRsets and Delegation Signer (DS) RRsets

MTA-STS advisory.mta_sts

Se o domínio publica uma política instruindo outros servidores a recusarem entregas não criptografadas para você. Ela protege os e-mails enviados a você, e não os e-mails que você envia.

Se falhar: Publique o registro TXT e o arquivo de política por HTTPS (uma tarde de trabalho, e isso elimina um ataque de downgrade).

Recomendação. Não custa nada.

RFC 8461 §3 — Policy Discovery

To discover if a recipient domain implements MTA-STS, a sender need only resolve a single TXT record.

Comprimento do caminho de retorno advisory.return_path_length

Qual é o comprimento do endereço de devolução. A RFC 5321 obriga um servidor receptor a aceitar 64 octetos antes do @ e diz, na mesma seção, que nenhuma implementação deve impor um limite que possa evitar. Mesmo assim, muitas impõem um, e uma mensagem que ultrapassa o limite é recusada em MAIL FROM, antes mesmo de o corpo ser enviado. As plataformas de envio se deparam com isso ao codificar o destinatário no caminho de retorno para que as devoluções possam ser associadas, o que faz o comprimento depender de para quem você está escrevendo, e não de você.

Se falhar: Encurte a parte fixa que sua plataforma adiciona como prefixo ou mude o domínio de devolução para um mais curto. Se você não puder alterar nenhum dos dois, os endereços em risco serão os de seus assinantes mais longos, portanto vale a pena medir o pior caso da sua lista em vez de uma média.

Recomendação. Não custa nada.

RFC 5321 §4.5.3.1.1 — Local-part

The maximum total length of a user name or other local-part is 64 octets.

RFC 5321 §4.5.3.1 — Size Limits and Minimums

Every implementation MUST be able to receive objects of at least these sizes.

Haraka — the address parser that enforces the 64-octet local-part, and the flag that relaxes it

Relatórios de TLS advisory.tls_rpt

Se o domínio solicita relatórios quando alguém não consegue entregar mensagens a ele por TLS. Funciona em conjunto com MTA-STS: a política sem os relatórios impede que você saiba se ela está funcionando.

Se falhar: Adicione o registro TXT com um endereço que receba os relatórios diários.

Recomendação. Não custa nada.

RFC 8460 §3 — Reporting Policy

A domain publishes a record to its DNS indicating that it wishes to receive reports.