Basiskennis

DMARC, SPF en DKIM uitgelegd

Drie afkortingen die samen bepalen of een e-mail met jouw domeinnaam ook echt door jou is verstuurd. Hieronder lees je het in gewone taal, en daaronder de technische details.

In één zin

Stel je voor dat iedereen ter wereld brieven kan versturen met jouw huisstijl en handtekening erop, zonder dat de postbode ooit controleert of dat klopt. Zo werkt gewone e-mail. SPF en DKIM zijn twee manieren om een echtheidskenmerk toe te voegen, en DMARC is de regel die zegt wat de ontvangende mailserver moet doen als dat kenmerk ontbreekt of niet klopt.

Onderdeel 1

SPF: wie mag er namens jou mailen?

SPF (Sender Policy Framework) is een lijst in je DNS met daarin welke mailservers toestemming hebben om e-mail te versturen namens jouw domein. Denk aan een gastenlijst bij de deur: staat een server niet op de lijst, dan mag hij zich niet voordoen als afzender van jouw domein.

Elk systeem dat voor jou mailt, je eigen mailserver, je nieuwsbriefdienst, je boekhoudpakket, moet in dit record staan. Vergeet je er één, dan kan mail vanuit dat systeem als vervalst worden gezien.

Voorbeeld DNS record (TXT)
v=spf1 include:_spf.google.com include:servers.factuursysteem.nl -all

-all betekent: alles wat niet in deze lijst staat is niet toegestaan. Dit is de strengste en aanbevolen instelling.

Voorbeeld header in een verzonden e-mail
DKIM-Signature: v=1; a=rsa-sha256;
d=voorbeeld.nl; s=selector1;
h=from:to:subject:date;
b=Gh8s0aQm...(digitale handtekening)

De ontvangende server berekent de handtekening opnieuw en vergelijkt die met de publieke sleutel in je DNS. Komt het overeen, dan is de inhoud onderweg niet aangepast.

Onderdeel 2

DKIM: is de e-mail onderweg aangepast?

DKIM (DomainKeys Identified Mail) plaatst een digitale handtekening in elke uitgaande e-mail, gebaseerd op een geheime sleutel die alleen jouw mailserver kent.

De ontvangende server haalt de bijbehorende publieke sleutel op uit jouw DNS en controleert of de handtekening klopt. Dat bewijst twee dingen: de e-mail komt echt van een server met de juiste sleutel, en de inhoud is onderweg niet gewijzigd.

Onderdeel 3

DMARC: de regel die SPF en DKIM samenbrengt

DMARC (Domain based Message Authentication, Reporting and Conformance) zegt tegen ontvangende mailservers wat ze moeten doen als een e-mail niet slaagt voor SPF én DKIM, en stuurt jou dagelijks een rapport over wat er is gebeurd.

p=none

Alleen monitoren

E-mail wordt altijd afgeleverd, ook als de check faalt. Jij ontvangt wel rapporten. Ideaal als startpunt.

p=quarantine

Naar spam

E-mail die de check niet doorstaat wordt door de ontvanger als verdacht gemarkeerd, vaak naar de spamfolder verplaatst.

p=reject

Weigeren

E-mail die de check niet doorstaat wordt geweigerd en nooit afgeleverd. Het uiteindelijke doel voor een veilig domein.

Voorbeeld DMARC DNS record (TXT op _dmarc.voorbeeld.nl)
v=DMARC1; p=quarantine; sp=quarantine; pct=100; fo=1; rua=mailto:rua+1453@reports.duzmarc.nl; ruf=mailto:rua+1453@reports.duzmarc.nl; adkim=s; aspf=s;
v= de versie van het protocol, altijd DMARC1.
p= het beleid voor je hoofddomein: none, quarantine of reject.
sp= het beleid specifiek voor subdomeinen, los van p=.
pct= percentage e-mail waarop het beleid wordt toegepast, handig om rustig op te bouwen.
fo= wanneer een forensisch (ruf) rapport gestuurd wordt, bijvoorbeeld bij elke mislukte check.
rua= waar de dagelijkse samenvattingsrapporten (geaggregeerd) naartoe gaan.
ruf= waar forensische rapporten van individuele mislukte e-mails naartoe gaan.
adkim= / aspf= strikte (s) of soepele (r) uitlijning tussen domeinnamen.

Alignment: SPF of DKIM moet niet alleen slagen, maar ook horen bij hetzelfde domein als het afzenderadres in het "van" veld. Pas dan telt de e-mail als betrouwbaar voor DMARC.

Forensische rapporten: DuzMarc verwerkt ook forensische (ruf) rapporten zodra ze binnenkomen. Let op: niet elke mailboxprovider stuurt deze standaard mee, de dagelijkse samenvattingsrapporten (rua) zijn overal beschikbaar.

Subdomeinen: naast je hoofddomein kun je in DuzMarc ook losse subdomeinen toevoegen en monitoren, elk met een eigen beleid en eigen rapportage.

Bonus onderdeel

TLS RPT: is de verbinding zelf wel veilig?

Waar DMARC, SPF en DKIM gaan over de afzender, gaat TLS RPT (SMTP TLS Reporting) over de verbinding waarover je e-mail wordt afgeleverd. Het rapporteert wanneer een ontvangende server geen versleutelde (TLS) verbinding met jouw mailserver kon opzetten.

Zonder deze rapportage merk je vaak niet dat e-mail onderweg onversleuteld verstuurd is, of dat een verbinding faalde door een verlopen certificaat. DuzMarc verwerkt deze TLS rapporten net als DMARC rapporten, automatisch en overzichtelijk, beschikbaar vanaf het Pro abonnement.

Voorbeeld TLS RPT DNS record (TXT op _smtp._tls.voorbeeld.nl)
v=TLSRPTv1; rua=mailto:rua+1453@reports.duzmarc.nl

Net als bij DMARC bepaalt rua= waar de dagelijkse rapporten over mislukte TLS verbindingen naartoe worden gestuurd.

Stap voor stap naar reject

Waarom je niet in één keer naar reject moet

Vergeet je een legitieme afzender in je SPF record, dan kan die met p=reject direct geblokkeerd worden. Daarom bouw je rustig op.

Stap 1

p=none

Alleen meekijken en alle afzenders in kaart brengen via DuzMarc.

Stap 2

SPF & DKIM afronden

Elke legitieme afzender toevoegen en laten slagen.

Stap 3

pct ophogen

Quarantine of reject geleidelijk op een groter deel van het verkeer toepassen.

Stap 4

p=reject

Volledig beschermd domein, spoofing wordt actief geweigerd.

DuzMarc laat op elk moment zien of je klaar bent voor de volgende stap.

Meer vragen over DMARC, SPF of DKIM?

In de kennisbank beantwoorden we de meest gestelde vragen, van beginner tot specialist.

Naar de kennisbank Account aanmaken