Syntaks for SPF-rekord

SPF-posten (Sender Policy Framework) er en vigtig del af den domænebaserede meddelelse autentificering, rapportering og overensstemmelse (DMARC), der angiver en metode til at forhindre forfalskning af afsenderadresser.

SPF-poster er komplekse at konfigurere, og der kan opstå implementeringsproblemer, hvis de ikke er konfigureret korrekt. SPF Record Syntax bruger også nogle specifikke termer, som kan være forvirrende, når man først støder på dem. Derfor ser vi i dette blogindlæg på SPF record-syntaksen, og hvad du skal overveje, når du konfigurerer dem.

Hvad er en SPF-optegnelse?

En SPF-post er en type DNS-post, der identificerer, hvilke servere der har tilladelse til at sende en e-mail på vegne af dit domæne. Det gør den ved at opregne de servere, der har fået tilladelse til at sende e-mails for dit domæne. Hvis en anden server forsøger at sende en e-mail på vegne af dit domæne, vil den blive afvist som en uautoriseret afsender.

Formålet med en SPF-post er at forhindre ondsindede brugere i at sende forfalskede e-mails med dit domæne i feltet Fra. Dette kan ske, hvis en angriber sender store mængder spammails fra din server ved at forfalske eller forfalske dit domæne

Hvordan virker SPF?

1. Oprettelse af en SPF-optegnelse Syntaks

Du opretter en SPF-rekordsyntaks på din DNS-server, der angiver, hvilke IP-adresser der må sende e-mails fra dit domæne. Det betyder, at hvis nogen forsøger at sende falske e-mails fra dit domæne, vil deres meddelelser mislykkes, fordi IP-adressen på deres mailserver ikke er opført som en af de godkendte servere.

Hvis du f.eks. ønsker, at kun Gmail-konti skal kunne sende post fra dit domænenavn, men ikke Outlook-konti, skal du tilføje følgende linje til din SPF-post:

 v=spf1 a mx include:_spf.google.com ~all

 Dette fortæller serverne, at alle meddelelser, der sendes fra en vært, hvis IP-adresse slutter med _spf.google.com, skal betragtes som gyldige (m), mens alle andre meddelelser skal kasseres (a). 

Du kan bruge vores SPF-rekordgenerator værktøj til at oprette en gratis post nu!

2. DNS-søgning

Når en e-mail-afsender forsøger at sende en meddelelse, foretager modtagerserveren et DNS-opslag på det afsendende domæne for at se, om der findes en SPF-record - dette kaldes "autentificering".Der er en grænse på 10 tilladte opslag pr. forespørgsel, og hvis den overskrides, fører det til SPF-permerror.

Hvis der ikke er nogen SPF-post, mislykkes godkendelsen, og meddelelsen leveres ikke. Hvis der er en SPF-record, kontrollerer SPF-serveren, om der er IP-adresser i TXT-recorden på det værtsnavn, der er angivet i SPF-recorden.

 Hvis der ikke er angivet nogen IP-adresser, vil godkendelsen mislykkes. Ellers vil den udføre en A-forespørgsel for hver IP-adresse, der er angivet i den rækkefølge, som den optræder i TXT-rekordet.

Den IP-adresse, der returnerer resultatkoden NXDOMAIN eller NOERROR, betragtes som godkendt af SPF-serveren, og værtsnavnet tilføjes til en liste over godkendte afsenderværter for det pågældende domæne.

3. Resultat af autentificering

Mailserveren leverer enten meddelelsen til modtageren eller markerer den til afvisning på baggrund af de regler, der er angivet i SPF-posten.

Autentificeringsresultater kan have tre former: Bestået, neutral eller ikke bestået.

Pass betyder, at mailserveren accepterer meddelelsen som legitim og tillader, at den leveres. Neutral betyder, at der enten slet ikke findes nogen post eller en ugyldig post for det pågældende domæne i DNS, så der er ingen mulighed for at vide, om der er tale om en legitim besked fra det pågældende domæne. Fail betyder, at der er noget ved denne meddelelse, der ikke var autentisk nok til, at den kan leveres.

F.eks. sender en mailserver med IP-adressen "234.2.1.2" en e-mail fra "[email protected]". Den indgående server vil konsultereDNS-tjenesten (Domain Name Service) for at finde ud af, om denne IP-adresse har tilladelse til at sende e-mails på vegne af domænet "apple.com". Hvis det er tilfældet, vil meddelelsen blive leveret, ellers vil den blive kasseret eller markeret som spam, dvs. sorteret i henhold til den mekanisme, der er angivet i SPF-rekordet.

Syntaks for SPF-optegnelser

SPF-record-syntaksen består af flere elementer - Direktiver, kvalifikationselementer og mekanismer.

Direktiver er den første del af en SPF-rekords syntaks. De angiver, hvordan resten af posten skal fortolkes. Der kan forekomme tre direktiver i en SPF-record: v=spf1, a og mx. v-direktivet angiver, at denne post er en SPFv1-post; a-direktivet angiver, at denne post er en SPFv2-style rapport om fejl i forbindelse med autentificering; mx-direktivet angiver en liste over mailudvekslingsservere for et domæne.

Kvalifikatorer angiver, hvor i din DNS-zone du ønsker at placere dine SPF-poster: exim4, enduser eller _spf. Disse kvalifikatorer fortæller postmodtagerne, hvor de skal lede efter dine SPF-poster, når de kontrollerer dem i forhold til deres DNS-poster.

Mekanismer bruges til at angive, hvordan du vil håndtere e-mailadresser, der ikke opfylder SPF-tjekket. Du kan vælge mellem flere mekanismer: alle, ingen, softfail, neutralisere eller afvise.

  • alle mekanisme accepterer alle e-mails fra afsendere, der har bestået SPF-tjekket;
  • ingen afviser alt fra afsendere, der har bestået SPF-tjekket;
  • softfail accepterer e-mails fra afsendere, der ikke har bestået en SPF-kontrol, men markerer dem som mistænkelige;
  • neutral angiver, at du hverken afviser eller accepterer meddelelser, der sendes fra dit domæne - det er i bund og grund en holdning, hvor du ikke har nogen holdning til, om meddelelsen skal accepteres eller afvises;
  • afvise afviser e-mails, der ikke har bestået SPF-tjekket.

SPF Record Syntaks-kvalifikatorer

"Kvalifikatorerne" i en SPF-rekords syntaks er med til at angive SPF-rekordets anvendelsesområde. De bruges primært til at angive, om en bestemt IP-adresse har tilladelse til at sende e-mails på vegne af dit domæne eller ej.

Kvalifikationskamp Resultat Kode Forklaring
+ Pass det eneste forbehold, der ikke har nogen negativ konnotation. Det angiver, at domænenavnets sikkerhedsoptegnelse ikke indeholder nogen fejl eller advarsler og betragtes som sikker.
- Fail angiver, at domænenavnets sikkerhedspost indeholder fejl eller advarsler, som forhindrer, at det kan betragtes som sikkert.

 

~ Softfail angiver, at domænenavnets sikkerhedspost indeholder fejl eller advarsler, som ikke forhindrer, at det kan betragtes som sikkert, men som kan være tegn på problemer med DNS-opløsning eller andre problemer i forbindelse med DNS-tillidsankre.
? Neutral Angiver, at domænet ikke har nogen SPF-post, eller at posten var syntaktisk korrekt, men ikke matchede nogen afsendende servere, da den blev kontrolleret i forhold til en (eller flere) afsendende servere på din liste over godkendte IP-adresser for det pågældende domæne.

SPF Record Syntax-mekanismer 

Mekanismer bruges i SPF-record-syntaksen til at fortælle den modtagende server, hvilken type godkendelsesmekanisme der skal bruges. Der findes to typer mekanismer: 

  • afsenderen kan angive et bestemt sæt af mekanismer;
  • Eller den kan angive, at alle mekanismer er tilladt.
Mekanisme Formål Direktivet finder anvendelse når Gennemførelse
A definerer DNS A-posten for domænet som autoriseret. Hvis dette direktiv ikke er angivet, anvendes det aktuelle domæne.

 

 

kan anvendes, når der spørges efter en A eller AAAA-post i et domæne, der indeholder afsenderens IP-adresse. A

a/<prefix-length>

a:<domain>

a:<domain>/<prefix-length>

alle All-direktivet matches altid, og det definerer politikken for alle andre kilder. Denne mekanisme bør altid anvendes, og denne mekanisme passer altid. alle
findes Kontrollerer, om en A-post er gyldig for et givet domæne eller ej. Det fungerer ved at se på alle A-poster på det pågældende domæne og se, om nogen af dem svarer til kriterierne i din SPF-post. Gælder, når der er en A-post på domænet, eller hvis andre kriterier i henhold til RFC7208 er godkendt. exists:<domain>
Omfatter Formålet med denne mekanisme er at angive domænet og søge efter et match samt at returnere en permanent fejl, hvis domænet ikke har en gyldig SPF-record. "include"-mekanismen i SPF-poster kan bruges til at inkludere andre SPF-poster i et domænes post. Hvis et domæne ikke har en SPF-record, men et andet domæne har en SPF-record, og dette andet domæne har en IP-adresse, der svarer til afsenderens IP-adresse, vil "include"-mekanismen medføre, at domænet med den tilsvarende IP-adresse anvendes til godkendelsesformål.

 

include:<domain>
ip4 Du kan angive et IPv4-interval med "ip4"-direktivet sammen med et præfiks, der angiver intervallets længde. Hvis der ikke er angivet noget præfiks, antages /32. "ip4"-mekanismen anvendes, hvis en af disse betingelser er opfyldt:

 

- Den angivne IPv4-adresse svarer til en IP-adresse i din SPF-post.

 

- Det angivne IPv4-undernet indeholder afsenderens IP-adresse.

ip4:<ip4-address>

ip4:<ip4-network>/<prefix-length>

ip6 Du kan angive et IPv6-område med "ip4"-direktivet sammen med et præfiks, der angiver længden af området. Hvis der ikke er angivet noget præfiks, antages /128. "ip6"-mekanismen anvendes, hvis en af disse betingelser er opfyldt:

 

- Den angivne IPv6-adresse svarer til en IP-adresse i din SPF-post.

 

- Det angivne IPv6-undernet indeholder afsenderens IP-adresse.

ip6:<ip6-address>

ip6:<ip6-network>/<prefix-length>

mx "mx"-mekanismen, som defineret i SPF-posten, definerer domænenavnssystemets (DNS) MX-postvekslerpost (Mail Exchanger) for et domæne som autoriseret. DNS MX-posten angiver, hvilken server der er ansvarlig for at modtage e-mails på domænets vegne. DNS MX-posten indeholder en IP-adresse og en prioritetsværdi for hver server, der kan bruges til at modtage meddelelser.

 

Når en MX-post for et domæne indeholder en IP-adresse, der svarer til afsenderens IP-adresse, indikerer dette, at denne afsender er autoriseret til at sende e-mails på vegne af dette domæne.

mx

mx/<prefix-length>

mx:<domain>

mx:<domain>/<prefix-length>

ptr ptr-mekanismen bruger det omvendte værtsnavn eller underdomæne for den afsendende IP-adresse til at definere måldomænenavnet. Gælder kun, hvis der er mindst én MX-post for det forespurgte eller angivne domæne, og denne MX-post indeholder en PTR-post med et FQDN for afsenderens IP-adresse. ptr

ptr:<domain>

Syntaksmodifikatorer for SPF-optegnelser

I SPF-rekordsyntaksen kan modifikatorer bruges til at ændre standardadfærden for en SPF-rekord. Modifikatorer kan bruges til at angive undtagelser fra reglerne, eller de kan bruges til at give yderligere oplysninger til modtageren.

Modifikator Formål Gennemførelse
exp Modifikatoren "exp" er en værdi, der angiver en forklaring på, hvorfor en meddelelse blev afvist. Den skal hjælpe afsendere med at undgå visse former for problemer og kan bruges til at informere dem om den specifikke årsag til, at deres meddelelse ikke blev accepteret af den modtagende server. exp=<domain>
omdirigere Redirect-modifikatoren er en streng, der erstatter hele domænenavnet i SPF-posten. Formålet med denne modifikator er at omdirigere al post, der sendes til domænet, til en anden server. Dette kan være nyttigt for domæner med flere MX-poster eller for domæner, der er blevet overdraget til en anden virksomhed, men som stadig bruger de samme e-mailadresser. redirect=<domain>

Indpakning

SPF-posten er en vigtig del af dit domænes DNS-poster. Den fortæller andre mailservere, hvordan de skal autentificere meddelelser, der hævder at være fra dig, hvilket betyder, at det er vigtigt, at du har en korrekt konfigureret SPF-post. Sørg dog for at parre SPF med DMARC for at opnå øget beskyttelse mod kompromittering og spoofing af e-mail. 

Værktøj til opslag af SPF-optegnelser kan hjælpe dig med at gøre netop det. Opslagsværktøjet giver dig et hurtigt overblik over, hvordan din nuværende SPF-record ser ud, herunder om den mangler nogle obligatoriske felter eller ej. Generatoren giver dig mulighed for at oprette en SPF-record-syntaks fra bunden, komplet med alle obligatoriske felter, så den kan tilføjes til dine DNS-poster med det samme.