Direct naar de inhoud

“DKIM verification failed” oplossen, met uitleg over DKIM

Home / Helpdesk / Foutmeldingen / “DKIM verification failed” oplossen, met uitleg over DKIM

“DKIM verification failed” oplossen, met uitleg over DKIM

5 min leestijd

Bijgewerkt op

De foutmelding DKIM verification failed of een bounce met een code als 550 5.7.20 betekent dat de ontvangende mailserver geen geldige DKIM-handtekening kon vinden bij jouw uitgaande mail. Dat gebeurt vrijwel altijd als je mail verstuurt via een andere dienst, zoals Mailchimp, Microsoft 365, Google Workspace of SendGrid, en het DNS-record daarvoor bij het domein jouw-website.nl ontbreekt of niet klopt. Hieronder lees je wat DKIM doet, hoe je controleert wat er mis is en hoe je DKIM verification failed per verzendprovider oplost.

Wat is DKIM en waarom faalt het?

DKIM staat voor DomainKeys Identified Mail. Het is een mechanisme dat uitgaande e-mail cryptografisch ondertekent. De verzendende server zet een digitale handtekening in de mailheader, gegenereerd met een privé-sleutel. De ontvangende mailserver haalt de bijbehorende publieke sleutel op via een DNS-record op jouw domein en controleert of de handtekening klopt.

Komen handtekening en publieke sleutel niet overeen, of staat er helemaal geen DKIM-record gepubliceerd voor de gebruikte selector, dan is de uitkomst DKIM verification failed. De mail belandt dan in de spambox, je reputatie als afzender daalt of de mail wordt meteen geweigerd met een bounce. Sinds grote providers zoals Google en Yahoo strengere eisen stellen aan bulk-verzenders, is een geldig DKIM-record vaak verplicht voor betrouwbare aflevering.

Wordt je mail geweigerd, dan staat in de bounce vaak een uitgebreide statuscode achter 550. Voor DKIM zijn dat deze codes:

  • 5.7.20: de ontvanger vond in je mail geen geldige DKIM-handtekening.
  • 5.7.21: de ontvanger vond een geldige DKIM-handtekening die hij niet accepteert.
  • 5.7.22: de ontvanger vond een geldige DKIM-handtekening van een ander domein dan het domein in je afzenderadres. Dat zie je bijvoorbeeld als je verzendprovider met een eigen domein ondertekent.

Veelvoorkomende oorzaken zijn:

  • Geen DKIM-record gepubliceerd voor de selector die de verzendprovider gebruikt.
  • De publieke sleutel in DNS is gewijzigd, maar de verzendprovider tekent nog met de oude sleutel (of andersom).
  • Een typfout of regel-afbreking in de TXT-record-waarde, vooral bij handmatig kopiëren.
  • De mail is onderweg aangepast door een tussenliggende server, waardoor de handtekening niet meer klopt.

Check je DKIM-status

Voor je iets wijzigt, controleer eerst wat er nu gebeurt. Stuur via je verzendprovider een testmail naar een eigen adres, bijvoorbeeld bij Gmail of Outlook, en bekijk de volledige headers van dat bericht. Twee regels vertellen je het meest:

  • DKIM-Signature: achter d= staat het domein waarmee de mail is ondertekend, achter s= de selector. Staat bij d= het domein van je verzendprovider, dan is DKIM voor jouw-website.nl nog niet ingesteld.
  • Authentication-Results: hier staat de uitkomst van de controle, zoals dkim=pass of dkim=fail, vaak met de reden erachter. Bij no key for signature vond de ontvanger geen DKIM-record voor die selector. Bij body hash did not verify is de mail na het ondertekenen nog aangepast.

De selector is het deel voor ._domainkey. in de DNS-naam van het record, bijvoorbeeld selector1._domainkey.jouw-website.nl. Met die naam controleer je of het record goed in DNS staat. Welke checktools je daarvoor gebruikt en hoe je de uitkomst leest, staat bij DKIM-record valideren.

DKIM instellen bij je verzendprovider

De DKIM-sleutel maak je aan in het dashboard van de partij die je mail verstuurt. Die toont daarna het record dat in DNS moet komen, als TXT- of als CNAME-record. Het volledige stappenplan per provider staat in DKIM-record instellen voor jouw domein. In het kort:

  • DKIM bij Mailchimp: na het authenticeren van je domein krijg je twee CNAME-records.
  • DKIM bij Microsoft 365: je krijgt twee CNAME-records, voor selector1 en selector2. Staan die in DNS, dan zet je de DKIM-ondertekening aan in het Microsoft Defender-portaal.
  • DKIM bij Google Workspace: je krijgt een TXT-record met selector google. Staat dat in DNS, dan start je de authenticatie in de Google Admin-console.
  • DKIM bij SendGrid: je krijgt drie CNAME-records, waarvan twee voor DKIM.

DNS-record laten plaatsen bij Chessweb

Staan je domein en DNS bij Chessweb, dan plaatst support het record voor je. Mail het record dat je verzendprovider gaf naar support@chessweb.eu en vermeld:

  • Het domein waar het record bij hoort, bijvoorbeeld jouw-website.nl.
  • Het type record: TXT of CNAME.
  • De volledige hostname, bijvoorbeeld selector1._domainkey.jouw-website.nl.
  • De waarde, exact zoals de verzendprovider deze aanlevert. Kopieer in één keer om regel-afbreking te voorkomen.

We plaatsen het record in overleg met je. Resellers en klanten met een eigen server beheren hun DNS zelf en plaatsen het record dus zelf.

Let op: bij een TXT-record met lange publieke sleutel kunnen DNS-tools de waarde automatisch splitsen in segmenten met aanhalingstekens. Stuur de waarde precies zoals de verzendprovider hem toont, zonder hem zelf op te knippen of af te breken.

Valideren na publicatie

Het duurt even voordat een DNS-wijziging overal zichtbaar is: afhankelijk van de TTL tussen één en vierentwintig uur. Wacht minimaal een uur na bevestiging van Chessweb-support en herhaal de controle met de checktools uit stap 3 van DKIM-record instellen. Een van die tools maakt een rapport van een testmail: verstuur die testmail via je verzendprovider, zodat je de werkelijke verzendweg controleert.

Krijg je in het rapport DKIM: pass, dan is het record actief en wordt jouw mail vanaf nu correct ondertekend. Blijft de status fail of no key for signature na een dag, controleer dan of de selector in de mail-header daadwerkelijk overeenkomt met de gepubliceerde DNS-naam.

Een fout DKIM-record is vaak niet de enige oorzaak van afleverproblemen. Lees ook Mijn e-mail komt in de spambox voor meer over SPF, DKIM en je reputatie als afzender. Bij e-mail hosting van Chessweb staat SPF standaard voor je ingericht.

Hulp nodig? Onze support kijkt met je mee, neem contact op.

Zakelijke e-mail op je eigen domein

SPF is standaard ingericht, elk pakket heeft een spamfilter en je krijgt telefonische ondersteuning.