Technical Security Guide

DKIM and DMARC Setup Guide for Microsoft 365: Step-by-Step for UAE Admins

By Zeeshan Khan, Cloud & Systems Expert DNS Hardening Specialist 12 min read

If you manage Microsoft 365 for a Dubai business, email spoofing and spam are daily threats. DKIM and DMARC are non-negotiable security layers that prevent unauthorized use of your domain and boost email deliverability. This guide breaks down the complex configuration into three simple phases.

Phase 1: SPF (The Foundation)

Before DKIM or DMARC, ensure your Sender Policy Framework (SPF) record is accurate. If you use Microsoft 365 exclusively, your TXT record should look like this:

v=spf1 include:spf.protection.outlook.com -all

**Pro Tip:** Never use the `~all` (Soft Fail) mechanism. Always use `-all` (Hard Fail) to enforce security and clearly reject unauthorized senders.

Phase 2: DKIM Configuration (Digital Signature)

DKIM allows recipient servers to verify that an email was authorized by the domain owner. For M365, this involves generating two CNAME records via PowerShell.

Step 2.1: Enable DKIM via Exchange PowerShell

Connect to Exchange Online and run this command. Replace `yourdomain.com` with your actual domain name:

Set-DkimSigningConfig -Identity "yourdomain.com" -Enabled $true

Step 2.2: Add CNAME Records to Your DNS Host

The command in Step 2.1 will output two necessary CNAME records. They will look exactly like this (replace `yourdomain.com`):

Host Name: selector1._domainkey
Points to: selector1-yourdomain-com._domainkey.tenantname.onmicrosoft.com

Host Name: selector2._domainkey
Points to: selector2-yourdomain-com._domainkey.tenantname.onmicrosoft.com

**Wait Time:** DNS changes can take up to 24-48 hours to fully propagate, but typically less in the UAE.

Phase 3: DMARC Policy (The Enforcement)

DMARC tells the receiving server what to do if an email fails both SPF and DKIM checks (e.g., quarantine it or reject it). This is done via a single TXT record.

Step 3.1: Create the DMARC TXT Record

Start with a relaxed monitoring policy (`p=none`) and direct the reports to an external monitoring service. This prevents potential email outages during setup.

Host Name: _dmarc
TXT Value: v=DMARC1; p=none; rua=mailto:dmarc_reports@external-monitoring-tool.com; pct=100; sp=none

Final Step: Enforce the Policy (p=reject)

Once your DMARC monitoring tool shows 100% compliance (typically after 2-4 weeks), you can change `p=none` to `p=reject` to completely block unauthorized email using your domain. This is the goal of true email security.

TXT Value: v=DMARC1; p=reject; rua=mailto:dmarc_reports@external-monitoring-tool.com; pct=100; sp=none

Need Guaranteed Email Security in Dubai?

DKIM/DMARC is complex. Get a professional DNS Hardening and M365 Audit done by a UAE expert.

Request a Free Security Assessment