The attack arrives by email
Protect your business email from phishing, compromise and disruption.
Email is a common starting point for attacks on small businesses. SPF, DKIM and DMARC decide which mail claiming to be from your domain gets trusted, and many domains are not set up to stop impersonation.
Take the readiness assessment How this site can help
- 01 Illustrations use reserved example domains only
- 02 Nothing on this site checks your domain
- 03 No password, MFA code or token is ever requested
What receivers read
Three records decide what your domain is trusted for
Receiving mail systems look at DNS, not at your letterhead. These examples use the reserved name example.com and are shown only to explain the shape of each record. They are not a check of your domain and not a configuration to copy.
Always read your real records with your own DNS tools and your DNS provider’s console. Nothing on this site can see them. The SPF, DKIM and DMARC guide walks through each in order.
SPFTXT · ENVELOPE SENDER
example.com TXT “v=spf1 include:spf.protection.outlook.com -all“
Which servers may send mail using the domain in the envelope sender. One record per name, and a hard limit of 10 DNS lookups while it is checked.
Ten lookups in total. Nested includes count toward the same ten.
DKIMTXT · SIGNATURE
selector1._domainkey.example.com TXT “v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A…”
The public key a receiver uses to check the signature on a message. The private key stays with the sending service. Each sender needs its own selector.
DMARCTXT · POLICY
_dmarc.example.com TXT “v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com”
What to do when neither SPF nor DKIM passes in alignment with the From domain, and where to send aggregate reports. p=none only observes; it blocks nothing.
Alignment and policy
A pass only counts if it matches the address people see
DMARC passes only if SPF or DKIM passes and the domain that passed aligns with the visible From domain. When it fails, the From domain’s published policy decides what happens next.
- Authorised senderSPF and DKIM both pass and both align with the From domain. DMARC passes. A policy is only consulted when DMARC fails.
- SPF passes, but does not alignSPF passed for bounce.example.net, which is not the From domain, so it does not count. There is no DKIM signature. DMARC fails and p=quarantine applies.
- Relayed: SPF fails, DKIM alignsOne aligned pass is enough. SPF failed after relaying, but a valid DKIM signature from example.com aligns with From, so DMARC passes.
- Fails under p=noneNeither check passes in alignment, so DMARC fails. Under p=none the receiver only observes and reports; it does not act on the failure.
- Fails under p=rejectNeither check passes in alignment, so DMARC fails. Under p=reject the receiver refuses the message.
p=none
Observe. Failures are reported to you; mail is not blocked by DMARC.
p=quarantine
Act on failure by treating the message as suspect, typically junk or quarantine.
p=reject
Act on failure by refusing the message at delivery.
The safe order
The order matters more than any single setting
Most outages caused by email authentication come from enforcing a policy before every legitimate sender is accounted for. This is the sequence that avoids that.
p=none
Observe
p=quarantine
Hold failures
p=reject
Refuse failures
Steps 4 and 5 move through these policies only when the reports justify it.
List every system that sends as your domain
Mailboxes, invoicing, CRM, marketing, helpdesk, scanners, website forms. Anything missed here is what breaks later.
Publish one accurate SPF record
Merge, never duplicate, and stay inside the 10-lookup limit. How SPF is checked.
Enable DKIM signing for each sender
Use 2048-bit keys where the sender supports them, and keep a record of which selector belongs to whom.
Publish DMARC at p=none, with reports
Collect aggregate data for long enough to see the real mail flow, including the quiet monthly senders.
Fix, then tighten to quarantine, then reject
Move only when the reports show your legitimate mail aligning. Stage it, and keep a way back.
Lock down domains that never send
A parked domain should say so in DNS. Attackers prefer domains with no policy.
The guides
Where to start, by the problem in front of you
Seven guides, each written for an administrator or owner who has to make a decision this week.
- SPF, DKIM and DMARCPublish the records correctly, in order, without blocking your own invoices.
- Business email compromiseHow a mailbox takeover becomes a fraudulent payment, and the first hour of response.
- Microsoft 365 securityA hardening order for a small tenant, with the settings to look for.
- Conditional accessPolicies that decide who gets in, from where, and with what proof.
- Mailbox securityForwarding rules, delegates, protocols and consented apps: where attackers hide.
- Phishing protectionFiltering, lookalike domains, reporting and the process controls that stop the payment.
- Email continuityWhat to do when mail stops, and what default retention does not give you.
Readiness assessment
See what to look at before you change anything.
Answer questions about your own setup, from what you can see in your admin consoles and DNS. The tool turns your answers into a prioritised list, in your browser. Nothing you enter is sent, and nothing is scanned.
What this site will never do
- Ask for a mailbox password, an MFA code, a token, a session cookie or the content of any message.
- Scan, probe or look up your domain. The assessment only interprets answers you give it, in your browser.
- Tell you a domain is protected, verified or correct. Only your own DNS tools and tenant settings can show that.
- Imply any partnership with Microsoft, Google or another vendor.