Stuur één bericht naar een tijdelijk adres en er worden 42 controles op uitgevoerd. Op deze pagina staan ze allemaal: waar elke controle naar kijkt, wat deze van je score kost als ze mislukt en uit welke paragraaf van de standaard ze afkomstig is.
Niets hier is onze mening die als regel wordt gepresenteerd. Als een controle iets afdwingt dat in een standaard staat, wordt de zin uit die standaard eronder geciteerd. Als de controle in plaats daarvan iets afdwingt dat Google of Yahoo vereist, wordt er naar hun pagina gelinkt. Als het onze eigen beoordeling is, staat dat erbij.
Authenticatie
Of de ontvangende server kan bewijzen dat het bericht afkomstig is van waar het zegt vandaan te komen. Dit is de helft van afleverbaarheid die uitsluitend om DNS draait, en de helft die Gmail en Yahoo in 2024 verplicht hebben gesteld voor bulkverzenders.
ARC-keten auth.arc
ARC bewaart het authenticatieresultaat bij doorsturen via een doorstuurserver. Zonder ARC verbreekt een mailinglijst die een voettekst toevoegt je DKIM-handtekening en mislukt DMARC voor de doorgestuurde kopie bij de uiteindelijke ontvanger.
Als de controle mislukt: Als afzender hoef je niets te doen. Dit is van belang als je een lijst of doorstuurserver beheert, en het verklaart waarom DMARC voor sommige berichten mislukt nadat iemand ze heeft doorgestuurd.
Kost maximaal 2 punten van de 100 in onze score.
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
DKIM-handtekening auth.dkim
DKIM ondertekent delen van het bericht met een privésleutel en publiceert de openbare sleutel in DNS. We verifiëren elke handtekening in het bericht en rapporteren het ondertekenende domein, de selector en de sleutellengte.
Als de controle mislukt: Schakel DKIM in op uw verzendplatform en publiceer de sleutel die het u geeft. Gebruik 2048 bits: 1024 wordt nog steeds geverifieerd, maar zo'n korte sleutel kan worden gekraakt en is niet langer veilig.
Kost maximaal 18 punten van de 100 in onze score en maximaal 1 van de 10 in de klassieke score.
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
DKIM-uitlijning auth.dkim_alignment
Een geldige handtekening is niet genoeg voor DMARC. Het ondertekenende domein moet overeenkomen met het domein in de From-header, exact of op basis van het organisatiedomein, afhankelijk van het beleid dat u hebt gepubliceerd.
Als de controle mislukt: Onderteken met uw eigen domein in plaats van met dat van uw platform. De meeste platforms ondersteunen dit en noemen het een aangepast of geauthenticeerd verzenddomein.
Kost maximaal 10 punten van de 100 in onze score en maximaal 1 van de 10 in de klassieke score.
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
DMARC-resultaat auth.dmarc
DMARC koppelt SPF en DKIM aan het domein dat uw lezer ziet en vertelt ontvangers wat ze moeten doen wanneer geen van beide is uitgelijnd. We rapporteren het gepubliceerde beleid en of dit bericht eraan voldeed.
Als de controle mislukt: Publiceer een DMARC-record. Begin met p=none, lees de rapporten enkele weken en ga daarna over op quarantine zodra u weet welke andere bronnen namens u verzenden.
Kost maximaal 14 punten van de 100 in onze score.
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
Dezelfde controle als SPF, uitgevoerd op het domein in de From-header in plaats van op de envelop. Hiermee wordt een andere vraag beantwoord: of het domein dat uw lezer ziet de server autoriseert die het bericht heeft verzonden. Een bericht kan slagen voor SPF op de envelop terwijl het zichtbare domein voor niemand instaat.
Als de controle mislukt: Publiceer SPF voor het domein in uw From-header, niet alleen voor het bouncedomein dat uw platform u heeft gegeven.
Kost maximaal 5 punten van de 100 in onze score en maximaal 0.5 van de 10 in de klassieke score.
RFC 4406 §4 — Record Selection
After the above steps, there should be one record remaining and evaluation can proceed.
SPF auth.spf
SPF is een DNS-record waarin staat welke servers namens uw domein mogen verzenden. De ontvangende server neemt het adres in de envelop, zoekt het record van dat domein op en controleert of de verbindende IP erin staat. We rapporteren het resultaat en het aantal DNS-zoekopdrachten dat voor het record nodig was, omdat de evaluatie na tien stopt en alles daarboven een permanente fout oplevert in plaats van een geslaagde controle.
Als de controle mislukt: Publiceer een record dat uw verzendplatform vermeldt en niets anders. Als uw record dicht bij de limiet van tien zoekopdrachten zit, vlak dan de includes af die u niet gebruikt (een record dat vandaag slaagt, begint te falen zodra een provider zelf een include toevoegt).
Kost maximaal 18 punten van de 100 in onze score en maximaal 1 van de 10 in de klassieke score.
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
SPF-uitlijning auth.spf_alignment
Of het bounceadres overeenkomt met het From-adres dat een lezer ziet. SPF autoriseert de envelop en DMARC telt die autorisatie alleen mee wanneer de twee zijn uitgelijnd.
Als de controle mislukt: Vraag uw verzendplatform om een bounce-subdomein van uw eigen domein. Als uw DKIM al is uitgelijnd, is dit niet dringend, maar zonder dit hebt u geen terugvaloptie wanneer DKIM tijdens de overdracht defect raakt.
Kost maximaal 5 punten van de 100 in onze score en maximaal 0.5 van de 10 in de klassieke score.
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
Infrastructuur en reputatie
De machine en het adres waarvandaan het bericht is verzonden, en wat de rest van het internet al van beide vindt.
Verzendende hostnaam wordt omgezet infra.a_record
Of de bij HELO aangekondigde hostnaam überhaupt een adresrecord heeft.
Als de controle mislukt: Publiceer een A-record voor de naam die je server aankondigt.
Kost maximaal 5 punten van de 100 in onze score en maximaal 3 van de 10 in de klassieke score.
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
Blocklists infra.dnsbl
Of het verzendende IP wordt vermeld door een van de blocklists die ontvangers daadwerkelijk raadplegen. Onze lijst wordt gecontroleerd aan de hand van het eigen gedocumenteerde testpunt van elke zone en niet samengesteld via een zoekopdracht op het web, omdat een dode zone NXDOMAIN retourneert en dat als "schoon" wordt gelezen.
Als de controle mislukt: Volg het verwijderingsproces op de site van de beheerder van de lijst. Een vermelding in een belangrijke zone houdt e-mail volledig tegen, dus behandel die vóór alles op de pagina.
Kost maximaal 25 punten van de 100 in onze score en maximaal 3 van de 10 in de klassieke score.
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
HELO-naam infra.helo
De naam waarmee de verzendende server zichzelf aan het begin van de SMTP-conversatie aankondigt. Het moet een volledig gekwalificeerd domein zijn dat kan worden omgezet.
Als de controle mislukt: Stel de hostnaam van je mailserver in op een echte naam binnen je domein, niet op een container-ID of een interne naam.
Kost maximaal 5 punten van de 100 in onze score.
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
MX-record infra.mx
Of het domein in je From-header e-mail kan ontvangen. Zonder dit kunnen antwoorden en bounces nergens naartoe, en filters beschouwen een verzendend domein dat geen e-mail kan ontvangen als een slecht teken.
Als de controle mislukt: Publiceer een MX-record voor het domein waarvandaan je verzendt, zelfs als het alleen doorstuurt naar een mailbox die je eens per maand leest.
Kost maximaal 5 punten van de 100 in onze score en maximaal 3 van de 10 in de klassieke score.
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
Omgekeerde DNS infra.rdns
Of het verzendende IP-adres terugverwijst naar een hostnaam, en of die hostnaam weer naar hetzelfde IP-adres verwijst. Het gaat om deze controle in beide richtingen: een PTR die ergens naartoe verwijst is eenvoudig, een overeenkomend paar is bewijs dat het adres van jou is.
Als de controle mislukt: Vraag de eigenaar van het IP-adres om de PTR in te stellen op een naam die je beheert, en zorg dat die naam een A-record heeft dat terugverwijst.
Kost maximaal 12 punten van de 100 in onze score en maximaal 1.5 van de 10 in de klassieke score.
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
Transportversleuteling infra.tls
Of het bericht via TLS is aangekomen, en met welk versleutelingsalgoritme. Alle moderne systemen onderhandelen hierover; een bericht dat onversleuteld aankomt zegt iets over de verzendconfiguratie.
Als de controle mislukt: Schakel STARTTLS in op de verzendende server. Elk gangbaar platform doet dit al, dus een fout hier betekent meestal dat zich een zelfbeheerde relay in het pad bevindt.
Kost maximaal 5 punten van de 100 in onze score.
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
Spamfilters
Wat onafhankelijke inhoudsfilters van het bericht vinden. Twee filters in plaats van één, omdat de score van één filter de mening van dat filter is.
AI-beoordelaar spam.ai_judge
Een model schat op basis van de technische bevindingen en de inhoudsmetingen in hoe een modern machinelearningfilter het bericht zou behandelen. Het ziet de feiten, niet de hoofdtekst.
Als de controle mislukt: Op zichzelf alleen ter informatie. De schatting wordt meegenomen in het onderstaande gecombineerde oordeel.
Wordt ter informatie getoond. Telt nooit mee voor de score.
Gecombineerd oordeel spam.panel
Eén getal van de engines die antwoordden, zo gewogen dat de luidste niet simpelweg wordt weggemiddeld. SpamAssassin en Postmark tellen als één stem omdat ze dezelfde regelbasis gebruiken.
Als de controle mislukt: Werk de afzonderlijke bevindingen af. Deze rij verandert wanneer zij veranderen.
Kost maximaal 25 punten van de 100 in onze score.
Google — Why Gmail marks messages as spam
How this score is calculated
Postmark SpamCheck spam.postmark
Een derde oordeel, standaard uitgeschakeld. Het endpoint verwerkt het volledige bericht en we kunnen niets ervan redigeren zonder datgene wat wordt gemeten onbruikbaar te maken, dus inschakelen betekent accepteren dat elk getest bericht naar een derde partij wordt gekopieerd.
Als de controle mislukt: U hoeft niets te doen. Wanneer deze controle is uitgeschakeld, meldt deze dat hij is uitgeschakeld, wat niet hetzelfde is als slagen.
Wordt ter informatie getoond. Telt nooit mee voor de score.
Rspamd spam.rspamd
Een tweede, onafhankelijk ontwikkeld filter. Het verschilt vaak genoeg van mening met SpamAssassin om het te raadplegen, en daarom staat het hier.
Als de controle mislukt: Alleen ter informatie. Het oordeel van deze engine wordt meegenomen in het gecombineerde oordeel in plaats van afzonderlijk te worden gescoord.
Wordt ter informatie getoond. Telt nooit mee voor de score.
SpamAssassin spam.spamassassin
Het klassieke filter op basis van regels, nog steeds de engine achter de meeste tools voor het testen van e-mail. Elke geactiveerde regel wordt met het bijbehorende gewicht vermeld.
Als de controle mislukt: Bekijk de geactiveerde regels in plaats van het totaal. De meeste zijn eenvoudig op te lossen zodra u kunt zien welke het zijn.
Kost maximaal 3 van de 10 in de klassieke score.
Google — Why Gmail marks messages as spam
Apache SpamAssassin — rule documentation
Inhoud
Het bericht zelf: de structuur, de links, de afbeeldingen, de zaken die een filter leest voordat het een beslissing neemt.
Alternatieve tekst voor afbeeldingen content.alt_attributes
Of afbeeldingen alt-attributen hebben. Mailclients blokkeren externe afbeeldingen standaard, dus gedurende de eerste paar seconden is de alternatieve tekst uw bericht.
Als de controle mislukt: Schrijf alternatieve tekst die de betekenis overbrengt en laat de hoofdafbeelding nooit zonder alternatieve tekst.
Kost maximaal 4 punten van de 100 in onze score en maximaal 0.5 van de 10 in de klassieke score.
Google — Email sender guidelines
Beschikbaarheid van links content.broken_links
Of de links in het bericht werken. Een dode link in een nieuwsbrief kost onmiddellijk vertrouwen, en filters merken dit ook op.
Als de controle mislukt: Herstel of verwijder ze. Controleer ook het trackingdomein: als dat is verlopen, werken alle links tegelijk niet meer.
Kost maximaal 5 punten van de 100 in onze score en maximaal 1 van de 10 in de klassieke score.
Google — Why Gmail marks messages as spam
Script en iframe content.forbidden_tags
Of de HTML tags bevat die geen enkele mailclient uitvoert. In het beste geval worden ze verwijderd en in het slechtste geval worden ze behandeld als een signaal van omzeiling.
Als de controle mislukt: Verwijder script, iframe, object en embed. Alles wat interactief is, hoort achter een link.
Kost maximaal 10 punten van de 100 in onze score en maximaal 1 van de 10 in de klassieke score.
Google — Email sender guidelines
Balans tussen tekst en HTML content.html_text_ratio
Hoeveel van het bericht uit opmaak bestaat ten opzichte van hoeveel leesbare tekst het bevat. Een pagina vol opmaak rond één zin is een patroon dat filters herkennen.
Als de controle mislukt: Schrijf een tekstdeel dat hetzelfde zegt als de HTML, in plaats van een tijdelijke aanduiding.
Kost maximaal 3 punten van de 100 in onze score en maximaal 0.3 van de 10 in de klassieke score.
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
Tekst- en HTML-delen content.html_version
Of het bericht naast de HTML ook een alternatief met tekst zonder opmaak bevat. Sommige filters wegen de afwezigheid ervan mee, en elke schermlezer heeft er een nodig.
Als de controle mislukt: Verstuur multipart/alternative met een echte tekstversie, niet met een leeg deel of een regel die zegt dat het bericht in een browser moet worden bekeken.
Kost maximaal 5 punten van de 100 in onze score.
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
HTML-grootte content.html_weight
Hoe groot het HTML-deel is. Gmail kapt een bericht af vanaf ongeveer 102 KB en verbergt de rest achter een link, waardoor ook uw afmeldingsvoettekst wordt verborgen.
Als de controle mislukt: Beperk inline CSS en herhaalde stijlblokken (de meeste sjablonen passen binnen een derde van de limiet zodra de ongebruikte regels zijn verwijderd).
Kost maximaal 3 punten van de 100 in onze score en maximaal 0.3 van de 10 in de klassieke score.
Google — Email sender guidelines
Afbeeldingsgrootte content.images_weight
De totale grootte van de afbeeldingen die het bericht ophaalt. Zware afbeeldingen maken een bericht traag op een telefoon, en e-mail met alleen afbeeldingen heeft een vorm die filters verdacht vinden.
Als de controle mislukt: Comprimeer ze en zorg dat het bericht nog steeds leesbaar is als afbeeldingen zijn uitgeschakeld.
Kost maximaal 3 punten van de 100 in onze score en maximaal 0.3 van de 10 in de klassieke score.
Google — Email sender guidelines
Bestemming van zichtbare links content.link_mismatch
Vergelijkt het domein in de linktekst met de bestemming na HTTP-omleidingen. Een tussengelegen trackingdomein bewijst geen misleiding.
Als de controle mislukt: Gebruik het bestemmingsdomein of beschrijvende tekst. Onbereikbare bestemmingen blijven ongecontroleerd.
Kost maximaal 3 punten van de 100 in onze score.
Google — Email sender guidelines
Linkreputatie content.malicious_links
Controleert URL’s aan de hand van dreigingslijsten. Een vermelding betekent niet dat elke ontvanger het bericht blokkeert.
Als de controle mislukt: Onderzoek gemarkeerde bestemmingen en vervang of verwijder onveilige links. Een historische vermelding bewijst geen huidige infectie.
Kost maximaal 40 punten van de 100 in onze score.
Google — Why Gmail marks messages as spam
Bijlagen scannen content.malware
Of bijlagen bekende malware bevatten. In omgevingen waar de scanner is uitgeschakeld, wordt gemeld dat de scan niet is uitgevoerd in plaats van dat er geen malware is gevonden.
Als de controle mislukt: Als dit wordt geactiveerd, stop dan met verzenden en zoek uit wat er staat op de machine waarop het bericht is samengesteld.
Kost maximaal 60 punten van de 100 in onze score.
Google — Why Gmail marks messages as spam
ClamAV — how detection works
Onderwerpregel content.subject
Lengte, hoofdlettergebruik en de patronen die filters beoordelen. We meten het gedecodeerde onderwerp, zodat een Cyrillische of CJK-regel als tekst wordt beoordeeld in plaats van als de codering ervan.
Als de controle mislukt: Houd deze onder ongeveer 60 tekens en laat het geschreeuw en de uitroeptekens weg.
Kost maximaal 3 punten van de 100 in onze score.
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
Verkorte links content.url_shortener
Of links via een openbare linkverkorter lopen. Linkverkorters verbergen de bestemming, en dat is precies wat filters geleerd hebben te wantrouwen.
Als de controle mislukt: Link naar uw eigen domein of gebruik het trackingdomein van uw platform op een subdomein van uzelf.
Kost maximaal 5 punten van de 100 in onze score en maximaal 0.5 van de 10 in de klassieke score.
Google — Why Gmail marks messages as spam
Regels voor bulkverzenders
De vereisten die Gmail en Yahoo publiceren voor iedereen die grote volumes verzendt. Deze gelden voor mailings en worden overgeslagen voor berichten die daar niet op lijken.
DMARC-beleid gepubliceerd compliance.dmarc_present
Of het From-domein überhaupt een DMARC-record publiceert, los van de vraag of dit bericht ervoor is geslaagd. Gmail en Yahoo vereisen dit van bulkverzenders.
Als de controle mislukt: Publiceer een record. p=none is voldoende om aan de vereiste te voldoen en levert rapporten op waarmee u kunt werken.
Kost maximaal 6 punten van de 100 in onze score.
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
Of het bericht een afmeldheader bevat waarop een mailclient kan reageren. Gmail en Yahoo vereisen deze van bulkverzenders, en de afwezigheid ervan wordt ongeacht al het andere als filtercriterium gebruikt. De regel geldt voor mailings. Een e-mail die de ontvanger vraagt een abonnement te bevestigen, of meldt dat dit is gelukt, wordt aan één persoon verzonden over iets wat diegene zojuist heeft gedaan; CAN-SPAM noemt dat een transactioneel of relatiebericht, en noch Gmail noch Yahoo vereist daarvoor een afmeldheader. Daarom leest deze controle eerst de e-mail. Voor een abonnementsbevestiging, een welkomstmail, een transactionele e-mail of een melding zonder lijstheaders worden geen punten afgetrokken, en het rapport vermeldt waarvoor de e-mail is aangezien. Een welkomstmail die is opgevuld met aanbiedingen is in feite de eerste uitgave van de mailing; zonder lijstheaders kan de controle de twee niet van elkaar onderscheiden, en worden er niet op basis van een aanname punten afgetrokken. Als de e-mail List-Unsubscribe of List-Id bevat, hebt u deze zelf als lijste-mail aangemerkt, en wordt de controle uitgevoerd zoals altijd.
Als de controle mislukt: Voeg een List-Unsubscribe-header met een HTTPS-URI toe. Elk verzendplatform kan dit.
Kost maximaal 10 punten van de 100 in onze score en maximaal 1 van de 10 in de klassieke score.
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
Afmelden met één klik compliance.one_click_unsubscribe
De strengere vorm: een HTTPS-URI, een "List-Unsubscribe-Post"-header en één geldige DKIM-handtekening die beide headers dekt. Alle drie zijn vereist, anders toont de ontvanger de knop niet. Net als de List-Unsubscribe-controle geldt dit voor mailings, niet voor een bevestiging of een welkomstmail.
Als de controle mislukt: Wat meestal ontbreekt, is de handtekening: platforms ondertekenen "List-Unsubscribe" en vergeten "List-Unsubscribe-Post". Beide headernamen moeten voorkomen in de h=-tag van dezelfde handtekening.
Kost maximaal 8 punten van de 100 in onze score.
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 voor bulkmail compliance.tls_required
Of het bericht versleuteld is aangekomen. Wordt meegenomen in de infrastructuurcontrole wanneer die al is uitgevoerd.
Als de controle mislukt: Zie de controle van transportversleuteling hierboven.
Kost maximaal 5 punten van de 100 in onze score.
Google — Send email over a secure TLS connection
Google — Sender guidelines FAQ: rules for 5,000+ messages a day
Aanbevelingen
De moeite waard om uit te voeren en telt nooit mee voor de score. Niets in deze sectie kan punten kosten, wat een productbeslissing is die door de tests wordt afgedwongen.
BIMI advisory.bimi
Of het domein een BIMI-record publiceert, waardoor in sommige clients een logo naast uw berichten wordt geplaatst. Hiervoor is eerst een afdwingend DMARC-beleid nodig, plus een geverifieerd merkcertificaat dat geld kost.
Als de controle mislukt: De moeite waard zodra DMARC op quarantine of reject staat en het volume het certificaat rechtvaardigt.
Aanbeveling. Kost niets.
BIMI — draft specification, not yet an RFC
Leeftijd en lengte van DKIM-sleutel advisory.dkim_key_rotation
De lengte van de ondertekeningssleutel en hoelang deze in gebruik is. Korte sleutels worden met elk verstrijkend jaar goedkoper om offline aan te vallen.
Als de controle mislukt: Stap over op 2048 bits en roteer volgens een schema. Publiceer de nieuwe selector, schakel de ondertekening hiernaar over en trek vervolgens de oude in.
Aanbeveling. Kost niets.
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
Levering van DMARC-rapporten advisory.dmarc_reporting
Of de adressen in je DMARC-record daadwerkelijk iets ontvangen. Als een rapportadres buiten je eigen domein valt, vereist RFC 9990 dat dat domein eerst zelf toestemming publiceert, als een TXT-record op your-domain._report._dmarc.their-domain. Zonder dit record verwijdert een ontvanger het adres: geen bounce, geen fout, geen rapport. Dit is de gebruikelijke configuratie en geen uitzonderlijke, omdat het adres normaal gesproken bij een monitoringprovider staat, of op je hoofddomein terwijl het beleid op een verzendsubdomein staat. Dezelfde regel geldt voor foutrapporten, waarbij RFC 9991 voor de ruf-tag naar dezelfde procedure verwijst. We zoeken dezelfde records op als een ontvanger en tonen je de namen die we hebben opgevraagd.
Als de controle mislukt: Vraag degene die het bestemmingsdomein beheert om op de in de bevinding getoonde naam een TXT-record met v=DMARC1 te publiceren. Monitoringproviders doen dit doorgaans voor je zodra je het domein aan hun account toevoegt, dus als het record ontbreekt, is het domein waarschijnlijk nooit aan hun kant toegevoegd. Als de rapporten in plaats daarvan naar je eigen domein gaan, is niets nodig.
Aanbeveling. Kost niets.
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
Of het domein is ondertekend. SPF, DKIM en DMARC bevinden zich allemaal in DNS, dus een aanvaller die DNS-antwoorden kan vervalsen, kan ze alle drie vervalsen.
Als de controle mislukt: Schakel het in bij uw registrar. Meestal is dit één instelling en handelt de registrar de rest af.
Aanbeveling. Kost niets.
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
Of het domein een beleid publiceert dat andere servers opdraagt niet-versleutelde bezorging aan u te weigeren. Het beschermt e-mail die naar u wordt verzonden in plaats van e-mail die u verzendt.
Als de controle mislukt: Publiceer het TXT-record en het beleidsbestand via HTTPS (een middag werk, en het voorkomt een downgrade-aanval).
Aanbeveling. Kost niets.
RFC 8461 §3 — Policy Discovery
To discover if a recipient domain implements MTA-STS, a sender need only resolve a single TXT record.
Lengte van retourpad advisory.return_path_length
Hoe lang het bounce-adres is. RFC 5321 verplicht een ontvangende server om 64 octetten vóór de @ te accepteren, en stelt in dezelfde sectie dat geen enkele implementatie een vermijdbare limiet zou moeten opleggen. Toch leggen veel implementaties er een op, en een bericht dat de limiet overschrijdt, wordt bij MAIL FROM geweigerd, nog voordat de hoofdtekst wordt verzonden. Verzendplatforms lopen hiertegenaan doordat ze de ontvanger in het retourpad coderen, zodat bounces aan de ontvanger kunnen worden gekoppeld, waardoor de lengte afhangt van aan wie u schrijft en niet van uzelf.
Als de controle mislukt: Kort het vaste deel in dat uw platform vooraan toevoegt, of stap voor bounces over op een korter domein. Als u geen van beide kunt wijzigen, lopen uw abonnees met de langste adressen risico. Het is daarom de moeite waard om het langste adres op uw lijst te meten in plaats van een gemiddelde.
Aanbeveling. Kost niets.
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
TLS-rapportage advisory.tls_rpt
Of het domein om rapporten vraagt wanneer iemand er niet in slaagt om via TLS berichten af te leveren. Hoort bij MTA-STS: zonder de rapportage bij het beleid kunt u niet vaststellen of het werkt.
Als de controle mislukt: Voeg het TXT-record toe met een adres dat de dagelijkse rapporten ontvangt.
Aanbeveling. Kost niets.
RFC 8460 §3 — Reporting Policy
A domain publishes a record to its DNS indicating that it wishes to receive reports.