DKIM¶
Use this page to understand and manage DKIM records. DKIM is an email authentication check that lets receiving mail servers verify that a message was signed by an expected mail system for the domain.
TL;DR
DKIM is like a tamper-evident seal on outgoing mail. The sending server signs the message, and the receiving server checks DNS for the public key needed to verify that signature.
DKIM In Plain English¶
Imagine sending a letter in an envelope with a seal that only the sender can create.
- The sending mail server keeps a private key.
- Each outgoing message gets a DKIM signature.
- The matching public key is published in DNS.
- The receiving server uses the public key to check the signature.
If the signature checks out, the receiving server has stronger evidence that the message came from an approved mail system and was not heavily modified in transit.
DKIM does not decide what to do with a failed message by itself. DMARC can use DKIM results, along with SPF results, to decide whether mail should pass, quarantine, or reject.
SPF, DKIM, And DMARC¶
DKIM works best with SPF and DMARC.
| Record | Simple analogy | What it checks |
|---|---|---|
| SPF | Guest list | Is this sending server approved for the domain? |
| DKIM | Tamper-evident seal | Was the message signed by an approved mail system and left mostly unchanged? |
| DMARC | House rule | What should happen when SPF or DKIM does not pass in the right way? |
Why DKIM Matters¶
- It helps protect the domain from spoofing.
- It improves trust with major mail providers.
- It gives DMARC another signal to evaluate.
- It helps recipients detect mail that was modified after it was sent.
Alice, Bob, And Mallory¶
Alice owns example.com and sends legitimate mail from that domain. Her mail
server signs each message with a private DKIM key.
Bob receives one of Alice's messages. Before delivering it, Bob's mail server asks DNS for the matching public DKIM key and checks the signature.
Mallory tries to send Bob a forged message that claims to be from example.com.
Because Mallory cannot sign the message with Alice's private key, Bob's mail
server can treat the message as suspicious.
How DKIM Works¶
The DKIM check happens after the recipient's mail server receives the message
and reads its DKIM-Signature header.
sequenceDiagram
participant Sender as Your mail server
participant DNS as Your domain DNS
participant Recipient as Recipient mail server
Sender->>Sender: Sign outgoing message with private DKIM key
Sender->>Recipient: Send email with DKIM-Signature header
Recipient->>DNS: Look up selector._domainkey.example.com TXT record
DNS-->>Recipient: Return public DKIM key
Recipient->>Recipient: Verify the message signature
alt Signature is valid
Recipient-->>Recipient: Deliver or trust the message
else Signature is missing or invalid
Recipient-->>Recipient: Flag, quarantine, or reject the message
end
DKIM uses two keys:
- A private key, kept by the sending mail server and used to sign messages.
- A public key, published as a DNS TXT record so receiving servers can verify those signatures.
Forwarded mail
DKIM can occasionally fail after a message is forwarded through systems that modify the message body or headers. This is less common than SPF forwarding issues, but it can happen.
Enable Or Disable DKIM¶
- Sign in to the Fused client area.
- Select
Services. - Select the green
Activestatus next to the relevant hosting account.MX1andMailaccounts are listed separately in the client area, so choose the service that handles email for the domain. - Select
Login to cPanel. - Search cPanel for
DKIM. - Enable or disable DKIM as needed.
Check where DNS is hosted
DKIM only works when the expected DNS record is published for the domain. If the domain uses DNS outside Fused, copy the DKIM TXT record from cPanel to the active DNS provider.
What To Check¶
- The DKIM status in cPanel shows as enabled.
- The DKIM TXT record exists at the DNS provider the domain actually uses.
- The selector in the DNS record matches the selector shown in cPanel.
- SPF and DMARC are also configured for broader email authentication coverage.