Kennisbank › Mail Authenticatie › DMARC (Domain-based Message Authentication, Reporting and Conformance) implementeren
mail authenticatie starter 29 August 2026

DMARC (Domain-based Message Authentication, Reporting and Conformance) implementeren

DMARC (Domain-based Message Authentication, Reporting and Conformance) implementeren Dit artikel legt uit wat DMARC is, hoe het werkt, en hoe je een

SPF controleert of de verzendende server toestemming heeft om e-mails te versturen namens een domein. DKIM gebruikt digitale handtekeningen om te bevestigen dat de inhoud van een e-mail niet is aangepast tijdens verzending. DMARC combineert deze twee door de "alignment" te controleren tussen het zichtbare From-adres en de technisch geverifieerde afzender.

Stappen

1. Controleer je huidige SPF- en DKIM-configuratie

Voordat je DMARC implementeert, moet je zeker weten dat SPF en DKIM correct werken. Controleer je SPF-record:

dig TXT jouwdomein.nl | grep "v=spf1"

Een geldig SPF-record ziet er zo uit: v=spf1 mx ip4:192.0.2.1 include:_spf.google.com ~all

Controleer je DKIM-record (de selectornaam is afhankelijk van je mailserverconfiguratie): dig TXT selector1._domainkey.jouwdomein.nl

2. Begin met een DMARC-record met policy "none"

Start altijd met policy `none` om te monitoren welk e-mailverkeer er via jouw domein loopt. Dit voorkomt dat legitieme e-mails worden afgewezen tijdens de testfase. Publiceer het volgende record in je DNS-zone:

_dmarc.jouwdomein.nl.  IN  TXT  "v=DMARC1; p=none; rua=mailto:dmarc@jouwdomein.nl; ruf=mailto:dmarc@jouwdomein.nl; fo=1; adkim=r; aspf=r; pct=100"

Uitleg van de tags:

  • `v=DMARC1` — de DMARC-versie
  • `p=none` — geen actie ondernemen bij falende e-mails (monitoringmodus)
  • `rua=mailto:dmarc@jouwdomein.nl` — ontvangst van aggregate reports
  • `ruf=mailto:dmarc@jouwdomein.nl` — ontvangst van forensic reports
  • `fo=1` — genereer forensic reports bij SPF- of DKIM-falen
  • `adkim=r` — relaxed DKIM alignment (domein mag subdomein zijn)
  • `aspf=r` — relaxed SPF alignment
  • `pct=100` — pas de policy toe op 100% van de e-mails
3. Controleer of je DMARC-record correct is gepubliceerd

Wacht tot de DNS-wijziging is doorgevoerd (meestal 5-30 minuten, afhankelijk van je TTL) en controleer dan:

dig TXT _dmarc.jouwdomein.nl

Het resultaat moet het TXT-record bevatten dat je hebt gepubliceerd.

4. Analyseer de DMARC-rapporten

Laat het DMARC-record minimaal 2-4 weken met policy `none` staan. Gedurende deze periode ontvang je aggregate reports op het `rua`-adres. Deze rapporten bevatten XML-data met informatie over:

  • Hoeveel e-mails er zijn verzonden namens jouw domein
  • Welke IP-adressen deze e-mails hebben verzonden
  • Of deze e-mails SPF- en DKIM-checks doorstonden
  • Welke alignment-resultaten er waren
Je kunt deze rapporten handmatig analyseren of tools gebruiken zoals `opendmarc` (OpenDMARC) op je server:

sudo apt install opendmarc

5. Verfijn je SPF- en DKIM-configuratie op basis van de rapporten

Analyseer de rapporten en identificeer:

  • Legitieme mailservers die niet in je SPF-record staan — voeg ze toe
  • Servers die DKIM niet correct gebruiken — configureer ze opnieuw
  • Onbekende IP-adressen die e-mails verzenden namens je domein — blokkeer ze
Werk je SPF-record bij met de juiste IP-adressen: v=spf1 mx ip4:192.0.2.1 ip4:192.0.2.2 include:_spf.google.com ~all

6. Verhoog de policy naar "quarantine"

Wanneer je zeker weet dat al je legitieme e-mailverkeer SPF- en DKIM-checks doorstaat, verhoog je de policy naar `quarantine`. Dit plaatst verdachte e-mails in de spammap in plaats van ze direct te weigeren:

_dmarc.jouwdomein.nl.  IN  TXT  "v=DMARC1; p=quarantine; rua=mailto:dmarc@jouwdomein.nl; ruf=mailto:dmarc@jouwdomein.nl; fo=1; adkim=r; aspf=r; pct=100"

7. Schakel over naar policy "reject"

Na een verdere testperiode van 2-4 weken met policy `quarantine`, zonder dat er legitieme e-mails in de spam belanden, kun je overgaan naar de strengste policy: `reject`. Dit weigert e-mails die niet door de authenticatie komen:

_dmarc.jouwdomein.nl.  IN  TXT  "v=DMARC1; p=reject; rua=mailto:dmarc@jouwdomein.nl; ruf=mailto:dmarc@jouwdomein.nl; fo=1; adkim=r; aspf=r; pct=100"

8. Stel een DMARC-verwerker in voor automatische analyse

Voor geautomatiseerde verwerking van DMARC-rapporten kun je OpenDMARC configureren op je mailserver. Installeer en configureer het:

sudo apt install opendmarc
   sudo systemctl enable opendmarc
   sudo systemctl start opendmarc

Configureer het rapportage-adres in `/etc/opendmarc.conf`:

AuthservID jouwdomein.nl
   RejectFailures false

Verificatie

Controleer of je DMARC-configuratie correct werkt met deze commando's:

<h2>Controleer je DMARC-record</h2>
dig TXT _dmarc.jouwdomein.nl
<h2>Controleer of je mailserver DMARC correct verwerkt</h2>
dig TXT _dmarc.jouwdomein.nl | grep "v=DMARC1"
<h2>Test de authenticatie van een e-mail (vervang /var/log/mail.log door jouw logbestand)</h2>
grep "dmarc" /var/log/mail.log | tail -20

Een correct geconfigureerd DMARC-record toont de policy die je hebt ingesteld. In het mail-log zie je regels zoals:

dmarc=fail (p=reject) header.from=example.com
dmarc=pass header.from=example.com

Veelgestelde problemen

1. Legitieme e-mails komen in de spam terecht na het verhogen van de policy

Dit betekent dat sommige van je mailservers niet correct zijn geconfigureerd voor SPF of DKIM. Zet de policy terug naar `none`, analyseer de rapporten, en identificeer welke servers falen. Controleer of alle IP-adressen in je SPF-record staan en of DKIM op alle servers actief is.

2. DMARC-rapporten komen niet aan op het `rua`-adres

Controleer of het mailadres dat je hebt opgegeven in het `rua`-attribuut geldig is en of je mailserver e-mails van externe partijen accepteert. Sommige mailproviders blokkeren automatische rapporten. Gebruik een apart mailadres voor DMARC-rapporten en controleer je spamfilter.

3. `dig` toont geen DMARC-record

Dit kan twee oorzaken hebben: DNS-caching vertraagt de zichtbaarheid van je nieuwe record, of het record is niet correct gepubliceerd. Controleer of je het record op de juiste hostnaam hebt geplaatst (`_dmarc.jouwdomein.nl`) en of je DNS-provider TXT-records met speciale tekens correct ondersteunt. Wacht enkele uren en probeer opnieuw met:

dig TXT _dmarc.jouwdomein.nl +trace

Achtergrond en ontwikkeling

DMARC is geen nieuw protocol dat vanaf nul is ontwikkeld. Het bouwt voort op SPF en DKIM, die beide hun beperkingen hadden. SPF controleert alleen de technische afzender, niet het zichtbare From-adres. DKIM bevestigt de integriteit van de inhoud, maar zegt niets over de identiteit van de afzender. DMARC vult deze leemte door de alignment tussen beide te controleren.

De ontwikkeling van DMARC begon in 2010, toen een groep technologie- en financiële organisaties samenwerkte aan een standaard voor e-mailauthenticatie. PayPal, Google, Microsoft en Yahoo waren betrokken bij deze samenwerking. Zij hadden allemaal te maken met massale e-mailfraude en zagen de beperkingen van de bestaande protocollen. Het resultaat was een gemeenschappelijke aanpak die de naam DMARC kreeg.

De eerste officiële specificatie verscheen op 30 januari 2012. Op 31 maart 2013 werd de specificatie als Internet Draft ingediend bij de IETF (Internet Engineering Task Force). Op 2 april 2014 werd het project overgeheveld naar de Independent Submissions-track binnen de IETF. De uiteindelijke publicatie als RFC 7489 volgde in maart 2015.

DMARC.org fungeert als centraal informatiepunt voor het protocol. De Nederlandse overheid, via de Rijksdienst voor Ondernemend Nederland (RVO), beveelt DMARC aan als best practice voor e-mailbeveiliging. Het protocol is inmiddels een standaardonderdeel van een robuuste e-mailbeveiligingsstrategie. De adoptie groeit wereldwijd, maar de implementatiegraad verschilt sterk per sector en regio. De vraag is niet langer of je DMARC moet implementeren, maar wanneer je de overstap naar policy `reject` durft te maken.

← Terug naar kennisbank
← Terug naar kennisbank