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.
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
Disponibilidade dos links content.broken_links
Se os links na mensagem funcionam. Um link inativo em um boletim informativo reduz imediatamente a confiança, e os filtros também percebem.
Se falhar: Corrija-os ou remova-os. Verifique também o domínio de rastreamento: se ele expirar, todos os links deixarão de funcionar de uma só vez.
Custa até 5 pontos de 100 na nossa pontuação e até 1 de 10 na pontuação clássica.
Google — Why Gmail marks messages as spam
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
Destinos dos links visíveis content.link_mismatch
Compara o domínio exibido com o destino após redirecionamentos HTTP. Um domínio intermediário de rastreamento não comprova fraude.
Se falhar: Use o domínio de destino ou um texto descritivo. Destinos inacessíveis ficam sem verificação.
Custa até 3 pontos de 100 na nossa pontuação.
Google — Email sender guidelines
Reputação dos links content.malicious_links
Verifica URLs em listas de ameaças. Uma correspondência não significa que todos os destinatários bloquearão a mensagem.
Se falhar: Examine os destinos sinalizados e substitua ou remova links inseguros. Um registro histórico não comprova uma infecção atual.
Custa até 40 pontos de 100 na nossa pontuação.
Google — Why Gmail marks messages as spam
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
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
TLS para e-mails em massa compliance.tls_required
Se a mensagem chegou criptografada. Abrangido pela verificação de infraestrutura quando ela já tiver sido executada.
Se falhar: Consulte a verificação de criptografia de transporte acima.
Custa até 5 pontos de 100 na nossa pontuação.
Google — Send email over a secure TLS connection
Google — Sender guidelines FAQ: rules for 5,000+ messages a day
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.