Choose the right SPF ending for this domain on Cloudflare
Why it matters
A domain that sends no mail should publish -all so spoofed mail claiming to come from it is rejected outright. A domain that does send mail can keep ~all while DMARC enforces; -all is the stricter option once every sender is listed.
Staged change. Do this in stages and check each one before the next, so a mistake does not break your site or your mail.
The fix
- In the Cloudflare dashboard open DNS > Records and edit the SPF TXT record.
- For a domain that sends no mail set Content to v=spf1 -all. For a mail-sending domain only change ~all to -all once DMARC reports are clean.
- Only if no mailbox uses this domain, you can also add a null MX: Type MX, Name @, Mail server . (a single dot), Priority 0. If the dashboard rejects the dot, skip the null MX; SPF -all and DMARC p=reject are what stop spoofing.
text
Type: TXT Name: example.com Content: v=spf1 -all # Only if no mailbox uses this domain, optional null MX: # Type: MX Name: @ Mail server: . Priority: 0
The examples use example.com. Replace it with your own domain.
Related
- Reported by the SPF record check
- Publish an SPF record
- Merge the SPF records into one
- Fix the syntax error in the SPF record
- Replace +all in the SPF record with ~all
- Narrow the very large address range in the SPF record
- Change ?all in the SPF record to ~all
- End the SPF record with ~all or -all
- Bring the SPF record under 10 DNS lookups
- Leave room under the SPF lookup limit
- Remove SPF terms that point at names that no longer exist
- Fix the SPF include that has no SPF record
- Break the loop in the SPF includes
- Replace the include that has several SPF records
- Replace the ptr mechanism in the SPF record
- Check the SPF terms that use macros
- Re-run the scan if part of the SPF record could not be read
Scan your domain to see whether this applies to you.