Wat is SPF? Sender Policy Framework uitgelegd

SPF (Sender Policy Framework) is een DNS-record dat aangeeft welke mailservers e-mail mogen versturen namens jouw domein. Zonder SPF kan iedereen e-mails vervalsen die uit jouw domein lijken te komen.

SPF, DKIM en DMARC samenAfzenderSPFTXTDKIMTXTDMARC_dmarcPostvakpasspassp=
SPF controleert de verzendende server, DKIM controleert de handtekening en DMARC bepaalt wat er gebeurt als een van beide faalt.

Hoe SPF werkt

Wanneer een ontvangende mailserver een e-mail krijgt die zegt te komen van [email protected], vraagt hij de DNS-TXT-records op van example.com en zoekt daar een SPF-record. Staat het IP van de verzendende server erin, dan komt de e-mail door SPF. Zo niet, dan faalt het.

  1. De e-mail komt aan op de mailserver van de ontvanger
  2. De server zoekt in het DNS het SPF-record van het afzenderdomein
  3. De server vergelijkt het verzendende IP met het SPF-record
  4. Is het IP toegestaan, dan slaagt SPF. Zo niet, dan faalt het.
  5. De ontvangende server past het beleid toe (~all, -all, enz.)

Syntaxis van een SPF-record

Een SPF-record is een TXT-record dat begint met v=spf1:

v=spf1 include:_spf.google.com include:sendgrid.net ~all

Uitgesplitst:

  • v=spf1 — Aanduiding van de SPF-versie (altijd deze)
  • include:_spf.google.com — geeft de mailservers van Google toestemming
  • include:sendgrid.net — geeft de mailservers van SendGrid toestemming
  • ~all — softfail voor elke andere server

SPF-mechanismen

MechanismExampleMeaning
ip4:ip4:203.0.113.1Geeft een specifiek IPv4-adres toestemming
ip6:ip6:2001:db8::1Geeft een specifiek IPv6-adres toestemming
include:include:_spf.google.comNeemt het SPF-beleid van een ander domein over
aaGeeft het IP uit het eigen A-record van het domein toestemming
mxmxGeeft de IP's uit de MX-records van het domein toestemming

All-kwalificaties

QualifierNameMeaning
-allFailE-mail van niet-toegestane servers weigeren (streng)
~allSoftfailAccepteren maar als verdacht markeren (aanbevolen)
?allNeutralGeen beleid — behandelen alsof er geen SPF is
+allPassAlle servers toestaan — gevaarlijk, gebruik dit nooit

Gebruikelijke SPF-records per mailprovider

# Google Workspace
v=spf1 include:_spf.google.com ~all

# Microsoft 365
v=spf1 include:spf.protection.outlook.com ~all

# Mailchimp + Google Workspace
v=spf1 include:_spf.google.com include:servers.mcsv.net ~all

# SendGrid
v=spf1 include:sendgrid.net ~all

Beperkingen van SPF

  • Limiet van 10 DNS-lookups — SPF staat maximaal 10 DNS-lookups toe (elke include:, a, mx telt mee). Meer dan dat levert een PermError op.
  • Doorsturen breekt SPF — Wanneer e-mail wordt doorgestuurd, staat het IP van de doorsturende server niet in je SPF-record, dus faalt SPF. Daarom is DMARC met DKIM ook nodig.
  • Eén SPF-record per domein — Meerdere SPF-records leveren een PermError op. Voeg ze samen tot één.

Veelgestelde vragen

Heb ik SPF nodig?

Ja. Zonder SPF kan iedereen e-mail versturen die uit jouw domein lijkt te komen. SPF is de eerste verdedigingslinie tegen e-mailspoofing.

Waar voeg ik een SPF-record toe?

Voeg een TXT-record toe op de root van je domein (@) via je DNS-provider of registrar. De waarde is de SPF-recordtekst.

Hoe weet ik of mijn SPF werkt?

Use the e-mailbeveiligingscontrole or the TXT-recordlookup om je huidige SPF-record te bekijken.

Probeer het op je domein

Zie de theorie in de praktijk — voer E-mailbeveiligingscontrole uit voor je eigen domein.