SPF, DKIM, DMARC: hướng dẫn cấu hình tên miền để email B2B vào inbox
Nếu domain công ty chưa có SPF, DKIM, DMARC đầy đủ, phần lớn email cold outreach cá nhân hóa gửi tới cấp quản lý sẽ rơi vào mục spam hoặc bị chặn thẳng, bất kể nội dung viết tốt đến đâu. Bài này hướng dẫn từng bước cấu hình SPF, DKIM, DMARC cho tên miền – áp dụng được cho cả Google Workspace lẫn Office 365 – để hộp thư nhận diện email là hợp lệ, không phải giả mạo hay spam hàng loạt.
- SPF, DKIM, DMARC là ba lớp xác thực độc lập, cần cả ba để nhà cung cấp hộp thư tin tưởng tên miền gửi
- SPF sai cú pháp hoặc vượt quá 10 lượt tra cứu DNS sẽ khiến toàn bộ record bị bỏ qua
- DMARC nên bắt đầu ở p=none để thu thập báo cáo rua, rồi mới nâng dần lên quarantine/reject
- Domain hoặc subdomain dùng để outreach cần được warm-up song song với việc bật DMARC enforce
- Một dmarc dkim check định kỳ giúp phát hiện sớm khi ESP đổi selector hoặc record bị xoá nhầm
Vì sao SPF, DKIM, DMARC quyết định email B2B có vào inbox hay không
SPF (Sender Policy Framework), DKIM (DomainKeys Identified Mail) và DMARC (Domain-based Message Authentication, Reporting and Conformance) là ba cơ chế xác thực mà Gmail, Outlook, Yahoo dùng để trả lời một câu hỏi đơn giản: email này có thực sự đến từ tên miền nó tự nhận hay không. Với cold email B2B – gửi số lượng nhỏ mỗi ngày tới đúng người ở đúng công ty – việc thiếu xác thực còn nguy hiểm hơn với marketing hàng loạt, vì mỗi email không xác thực đều làm giảm điểm uy tín tên miền, kéo cả các chiến dịch sau đó xuống spam.
Cần nói rõ: mục tiêu ở đây không phải vượt qua bộ lọc spam mà là chứng minh domain gửi email hợp lệ, giống cách một công ty thật gửi hoá đơn, hợp đồng cho đối tác. Một domain có SPF, DKIM, DMARC đầy đủ và alignment đúng gần như luôn được xử lý khác hẳn domain trống ba bản ghi này, bất kể công cụ gửi là Gmail, Outlook hay phần mềm outreach chuyên dụng.
Bước 1 – Thiết lập bản ghi SPF
SPF là bản ghi TXT tại DNS liệt kê các máy chủ được phép gửi email nhân danh tên miền. Trước khi thêm gì mới, kiểm tra domain đã có SPF record chưa bằng lệnh dig TXT tên miền hoặc một công cụ tra cứu DNS bất kỳ – nếu đã có, chỉnh sửa record cũ, tuyệt đối không tạo thêm record TXT SPF thứ hai vì mỗi domain chỉ được phép có một record SPF duy nhất.
- Google Workspace: v=spf1 include:_spf.google.com ~all
- Office 365: v=spf1 include:spf.protection.outlook.com ~all
- Nếu dùng thêm công cụ outreach (Instantly, Smartlead, Lemlist...), thêm include tương ứng vào cùng một record, không tạo record mới
- Giữ tổng số DNS lookup (include, a, mx, ptr, exists) dưới 10 – vượt ngưỡng này SPF trả về permerror và bị nhiều hộp thư bỏ qua hoàn toàn
- Dùng ~all (softfail) trong giai đoạn đầu, chỉ chuyển sang -all (hardfail) khi chắc chắn đã liệt kê đủ mọi nguồn gửi hợp lệ
Một công ty phân phối thiết bị công nghiệp ở Bình Dương dùng Google Workspace cho email nội bộ và Instantly cho outreach nên có SPF: v=spf1 include:_spf.google.com include:spf.instantly.ai ~all — gộp cả hai nguồn gửi vào một record duy nhất.
Bước 2 – Bật DKIM cho từng nền tảng gửi
DKIM ký số vào mỗi email bằng private key, hộp thư nhận dùng public key công bố ở DNS để xác minh chữ ký chưa bị thay đổi trên đường truyền. Khác với SPF (theo domain), DKIM được cấu hình theo từng nguồn gửi – nghĩa là nếu vừa gửi từ Gmail vừa gửi từ công cụ outreach, cần bật DKIM riêng cho từng bên.
Trên Google Workspace: vào Admin Console, Apps, Google Workspace, Gmail, Authenticate email, tạo khoá DKIM 2048-bit, dán bản ghi CNAME hoặc TXT được cấp vào DNS, sau đó quay lại bật xác thực. Trên Office 365 (Microsoft 365 Defender): vào Email & collaboration, Policies & rules, Threat policies, DKIM, chọn domain, tạo hai CNAME record theo mẫu selector1._domainkey và selector2._domainkey, rồi bật DKIM signing. Với công cụ outreach chuyên dụng, phần lớn yêu cầu thêm một cặp CNAME tương tự do chính công cụ đó cấp khi kết nối domain.
- Luôn dùng khoá 2048-bit thay vì 1024-bit nếu nền tảng cho chọn
- Chờ DNS propagate (thường vài phút đến vài giờ) rồi mới bật authentication, tránh bật khi record chưa kịp lan truyền
- Ghi lại selector đang dùng – khi đổi ESP hoặc công cụ outreach, selector cũ cần được dọn dẹp để không gây nhầm lẫn trong dmarc dkim check
Bước 3 – Cấu hình DMARC và chọn chính sách phù hợp
DMARC record là bản ghi TXT tại _dmarc.tenmien.com, nói cho hộp thư nhận biết phải làm gì khi một email tự xưng từ domain nhưng fail cả SPF lẫn DKIM alignment, đồng thời yêu cầu gửi báo cáo tổng hợp (rua) về địa chỉ chỉ định. Rất nhiều domain doanh nghiệp rơi vào tình trạng dmarc policy not enabled – tức chưa có record DMARC nào cả – khiến hộp thư nhận không có căn cứ để phân biệt email thật với email giả mạo domain đó.
Nên bắt đầu ở p=none để chỉ giám sát, không chặn gì, thu thập báo cáo rua trong khoảng hai đến bốn tuần, xem có nguồn gửi hợp lệ nào đang fail alignment không (ví dụ một công cụ marketing cũ chưa được include trong SPF). Sau khi báo cáo sạch, nâng dần lên p=quarantine (email fail bị đẩy vào spam) rồi cuối cùng p=reject (email fail bị chặn hẳn). Nhảy thẳng lên reject ngay từ đầu là nguyên nhân phổ biến nhất khiến email hợp lệ tự nhiên biến mất.
- v=DMARC1; p=none; rua=mailto:dmarc-reports@tenmien.com; pct=100 — bước khởi đầu
- v=DMARC1; p=quarantine; rua=mailto:dmarc-reports@tenmien.com; pct=50 — bước trung gian, áp dụng dần trên một phần lưu lượng
- v=DMARC1; p=reject; rua=mailto:dmarc-reports@tenmien.com; adkim=s; aspf=s — trạng thái enforce đầy đủ, alignment strict
- Có thể dùng một dmarc record generator miễn phí để dựng cú pháp ban đầu, nhưng luôn tự kiểm tra lại thủ công trước khi publish
Mức độ cấu hình ảnh hưởng thế nào đến tỷ lệ vào inbox
Không có công cụ nào đo chính xác tuyệt đối tỷ lệ inbox placement vì mỗi nhà cung cấp hộp thư xử lý khác nhau, nhưng theo thực tế vận hành các chiến dịch outreach B2B nhắm đúng người, mức chênh lệch giữa domain thiếu xác thực và domain cấu hình đầy đủ là rất rõ rệt – thường quyết định việc một chiến dịch có đáng để chạy tiếp hay không.
Số liệu tổng hợp từ thực tế vận hành domain outreach B2B, mang tính tham khảo, không phải kết quả đo lường của bên thứ ba.
Những lỗi thường gặp khi triển khai
- Tạo hai bản ghi SPF riêng biệt (ví dụ một cho Google Workspace, một cho ESP) thay vì gộp vào một record duy nhất
- Bật DKIM cho domain chính nhưng bỏ quên domain hoặc subdomain phụ dùng riêng cho outreach
- Chuyển thẳng DMARC từ none sang reject mà không xem báo cáo rua trước
- Không đặt policy cho subdomain (sp=) khiến subdomain gửi mạo danh domain chính vẫn lọt qua
- Quên rằng domain hiển thị ở From: phải align với domain trong SPF/DKIM – dùng ESP domain không liên quan sẽ luôn fail alignment
- Bật DMARC reject ngay khi domain outreach còn mới, chưa qua giai đoạn warm-up, khiến volume nhỏ hợp lệ cũng bị soi kỹ hơn
Checklist triển khai và cách LDM áp dụng cho từng chiến dịch
Với các chiến dịch outreach chạy trên LDM, domain hoặc subdomain gửi luôn được rà cả ba lớp SPF, DKIM, DMARC trước khi lên lịch gửi batch đầu tiên, song song với warm-up tăng dần volume theo ngày. Việc cấu hình đúng kỹ thuật chỉ là điều kiện cần; nó cần đi cùng nội dung cá nhân hóa thật và tốc độ gửi hợp lý để không tự tạo ra tín hiệu giống spam dù xác thực domain hoàn hảo.
- Xác nhận chỉ có một bản ghi SPF, tổng lookup dưới 10
- DKIM 2048-bit bật cho mọi nguồn gửi đang dùng, kể cả công cụ outreach
- DMARC record tồn tại, bắt đầu p=none có rua, theo dõi báo cáo tối thiểu 2 tuần
- Có lộ trình nâng dần lên quarantine rồi reject, không nhảy bước
- Domain hoặc subdomain outreach được warm-up trước khi tăng volume gửi
- Chạy dmarc dkim check định kỳ hàng tháng để phát hiện thay đổi selector hoặc record bị xoá
Câu hỏi thường gặp
DMARC record là gì và cần đặt ở đâu trong DNS?
DMARC record là bản ghi TXT đặt tại _dmarc.tenmien.com, khai báo chính sách xử lý email fail xác thực và địa chỉ nhận báo cáo rua. Nó không thay thế SPF hay DKIM mà dựa vào kết quả của cả hai để quyết định alignment.
Nên dùng subdomain riêng hay domain chính cho outreach?
Nên tách một subdomain riêng, ví dụ outreach.tenmien.com, cho các chiến dịch gửi số lượng lớn hơn email giao dịch thường ngày, để nếu có sự cố deliverability thì domain chính vẫn an toàn. Subdomain vẫn cần SPF, DKIM riêng và nằm trong phạm vi DMARC của domain gốc.
Sau bao lâu nên chuyển từ p=none sang quarantine hoặc reject?
Thường sau hai đến bốn tuần theo dõi báo cáo rua sạch, không còn nguồn gửi hợp lệ nào bị fail alignment. Nâng chính sách quá sớm khi còn nguồn gửi chưa khai báo đủ trong SPF/DKIM sẽ khiến email thật bị chặn nhầm.
Gmail và Office 365 có khác biệt gì khi cấu hình?
Cả hai đều cần SPF include riêng (_spf.google.com với Gmail, spf.protection.outlook.com với Office 365) và DKIM bật qua trang quản trị riêng của từng nền tảng. DMARC thì áp dụng chung ở cấp DNS, không phụ thuộc nền tảng gửi.
Có công cụ dmarc record generator miễn phí đáng tin không?
Có nhiều công cụ generator miễn phí giúp dựng đúng cú pháp v=DMARC1 ban đầu, hữu ích khi mới bắt đầu. Tuy nhiên vẫn nên tự kiểm tra lại địa chỉ rua, giá trị pct và policy trước khi publish, vì generator không biết domain đã có nguồn gửi nào cần include.
Làm sao thực hiện dmarc dkim check để chắc chắn mọi thứ hoạt động?
Gửi thử một email tới hộp thư Gmail hoặc Outlook rồi xem phần header gốc (show original hoặc view message source) để kiểm tra kết quả spf=pass, dkim=pass, dmarc=pass. Ngoài ra nên đọc báo cáo rua hàng tuần để phát hiện nguồn gửi lạ hoặc record vừa bị thay đổi.
Muốn áp dụng điều này vào outreach của bạn?
Chúng tôi sẽ chỉ cho bạn cách nó hoạt động với phân khúc và sản phẩm của bạn — trước khi bắt đầu.
Trao đổi ngay