Een DKIM record instellen

Wat is DKIM?

DKIM staat voor Domain Keys Identified Mail. DKIM wordt op zowel het niveau van een DNS record op je domeinnaam geregistreerd alsook op je e-mailserver. DKIM 'ondertekent' digitaal iedere e-mail wat je verzendt en stuurt die digitale handtekening mee in de 'headers' van iedere verzonden e-mail. De ontvanger controleert of de digitale handtekening in de e-mail overeenkomt met het publieke DNS record. Komt de digitale handtekening overeen? Dan is het zeker dat de e-mail en de bijlagen niet gewijzigd zijn.

Flow DKIM.

DKIM werkt op basis van een private en een public key. Op je mailserver staat een private key geconfigureerd. Wanneer je mailserver een e-mail verzend, dan wordt dat bericht automatisch ondertekend met de private key. De ontvangende e-mailserver controleert deze handtekening aan de hand van de public key wat in het DNS record staat.

In zeven stappen ziet het technische DKIM teken- en validatieproces er als volgt uit:

  1. Op je e-mailserver is een DKIM public key gegenereerd.
  2. Een eindgebruiker stuurt een e-mail.
  3. Deze e-mail komt terecht op je e-mailserver. Je e-mailserver tekent met de public key de e-mail en plaatst de handtekening in de headers van het e-mailbericht en verzend de e-mail naar de ontvanger.
  4. Het bericht komt aan op de e-mailserver van de ontvanger.
  5. De ontvangende e-mailserver vraagt de DNS records op van het domein wat achter het @-teken van het 'From' adres staat.
  6. De ontvangende e-mailserver ziet in het DNS record dat er een public DKIM key opgegeven is.
  7. Met behulp van deze public key valideert de ontvangende e-mailserver de handtekening in de headers van het e-mailbericht.

Stap 1: DKIM activeren door een private en public key te genereren

Om je berichten digitaal te ondertekenen, moet op je e-mailserver een public en private DKIM RSA keypair gegenereerd worden. Hoe je dat precies moet doen, is volledig afhankelijk van het type mailserver of de mailprovider wat je gebruikt.

Wanneer je DKIM geactiveerd hebt, dan krijg je van je mailprovider de 'public' key te zien. Deze public key heb je straks nodig om in je DNS record te configureren.

Daarnaast krijg je ook een 'selector'. Deze selector is uniek per e-mailserver. De selector van Google Workspace is bijvoorbeeld google en de selector van Plesk is default. Ook deze 'selectors' heb je straks nodig om je DNS record te configureren.

Een DKIM private/public key genereren in Google Workspace

Gebruik je Google Workspace als mailserver, dan kan je een DKIM private key genereren in het admin paneel onder 'Apps > Google Workspace > Settings for Gmail > Authenticate email'. Zodra je dat gedaan hebt, krijg je je public key te zien (deze heb je straks nodig).

Een DKIM key genereren in Google Workspace.

Een DKIM private/public key genereren in Plesk

Gebruik je het Plesk controlepaneel, dan kan je een private key generen in je 'Mail Settings'. Klik op 'How to configure external DNS' om je public key te zien.

Een DKIM key genereren in Plesk.

Stap 2: de public key in je DNS opnemen

Kopieer de public key wat je verkregen hebt bij het aanmaken van je private key. Deze key plaats je in de DNS instellingen van je domeinnaam. Dit doe je door in te loggen op het DNS beheerpaneel van je DNS provider.

DKIM public key ingeven in je DNS.

Stap 3: validatie van je DNS record

Wanneer je TXT record online staat, controleer dan of het goed reageert op aanvragen. Dat kan vanaf je computer of via een online tool zoals deze van MXToolbox:

Geef hiervoor het volledige adres van je TXT record op, met de 'selector'. Zoals in onderstaand voorbeeld: google._domainkey.nexxwave.be.

Validatie van DKIM public key via MXToolbox.

Vanaf je computer kan je via dig eenvoudig de TXT record van je (sub)domein opvragen. Hiervoor geef je ook weer het volledig adres, met selector, op.

DKIM public key opvragen via dig.

Je kan ook een validatie van je DKIM record doen door vanaf al je e-mailservers een e-mail te sturen naar een (best extern) e-mailadres. In de headers van deze e-mail vind je terug of de DKIM validatie geslaagd al dan niet geslaagd is:

DKIM validatie in de headers van een e-mailbericht.

Wil je dieper in de headers duiken, dan zal je in je headers DKIM-Signature tegenkomen. Zie dit voorbeeld:

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=docs.nexxwave.be; s=nexx; t=1658239666; bh=RbX1G9lD6lVhuqtj1C/P7MzkydOmr82ZR1IFtfu+pP8=; h=Date:Subject:From:To:From; b=hHW8OWA8zh/pRKZ+smWDxmlLVQ21tdEb0rumXOhxyGig94uyGXGMIeTOjvQFcmw0H
	 VXH+m/L/pieUSroXb4xDD6DhTWkSuhes/FTDM951fmVcwu3ViaGGD0AUDXhHxcMpUP
	 bJzI+vy7AEwN0q03pCoFsR6lyfhydfq/grGORRCqb+LgAKRNpaX8tyg5728XhRmMmM
	 ybgElQ5rUUo4VaTSUF2F1wRd3R+EC9iRKv4Odg/dim/RifTxql2r0J24Z9D+mYpdHU
	 WmxbdVbZfupQC5KAsGwJhqTXZvqUyLV3IrwSDAfk9S9OLRCwHBrDx1WUHyuLREwJ0Q
	 2yd5/eZ82Mbdg==

Hier vind je:


Revisie #2
Gemaakt: 20 juli 2022 11:24:29 door Kris Lowet
Bijgewerkt: 20 juli 2022 12:37:02 door Kris Lowet