SPF, DKIM và DMARC: Hướng Dẫn Toàn Diện Về Xác Thực Email
Làm chủ xác thực email với hướng dẫn toàn diện này về SPF, DKIM và DMARC. Tìm hiểu mỗi giao thức làm gì, cách thiết lập bản ghi DNS, khắc phục sự cố phổ biến và cải thiện khả năng gửi email.
Xác thực email là nền tảng của việc gửi email đáng tin cậy. Nếu không cấu hình SPF, DKIM và DMARC đúng cách, những email được soạn thảo công phu của bạn có thể không bao giờ đến được hộp thư đến của khách hàng. Thay vào đó, chúng kết thúc trong thư mục spam hoặc bị từ chối hoàn toàn.
Hướng dẫn toàn diện này giải thích mỗi giao thức xác thực email làm gì, cung cấp hướng dẫn thiết lập DNS từng bước, đề cập đến việc khắc phục sự cố phổ biến và chỉ cho bạn cách xác minh cấu hình đang hoạt động chính xác.
Tại Sao Xác Thực Email Quan Trọng
Email được thiết kế trong thời đại khi bảo mật không phải là mối quan tâm chính. Giao thức SMTP gốc không có cơ chế xác minh tích hợp để xác nhận rằng email thực sự đến từ người nó tự xưng. Điểm yếu cơ bản này cho phép giả mạo email, tấn công phishing và spam.
Các giao thức xác thực email giải quyết vấn đề này bằng cách cho phép chủ domain chỉ định:
- Máy chủ nào có thể gửi email thay mặt họ (SPF)
- Bằng chứng mã hóa rằng tin nhắn là thật và chưa bị thay đổi (DKIM)
- Phải làm gì với tin nhắn không vượt qua xác thực (DMARC)
Tác Động Kinh Doanh Của Xác Thực Kém
Không có xác thực email đúng cách:
- Khả năng giao thấp hơn: Các nhà cung cấp lớn như Gmail, Microsoft và Yahoo lọc email chưa được xác thực mạnh hơn
- Tỷ lệ spam cao hơn: Email hợp lệ của bạn cạnh tranh với tin nhắn giả mạo sử dụng domain của bạn
- Thiệt hại thương hiệu: Các cuộc tấn công phishing mạo danh thương hiệu của bạn làm xói mòn lòng tin khách hàng
- Mất doanh thu: Các chiến dịch marketing không tiếp cận được người đăng ký đã đăng ký nhận email
- Rủi ro tuân thủ: Nhiều quy định hiện yêu cầu xác thực email đúng cách
Bộ Ba Xác Thực
SPF, DKIM và DMARC hoạt động cùng nhau như một hệ thống xác thực hoàn chỉnh:
| Giao Thức | Làm Gì | Tương Tự |
|---|---|---|
| SPF | Liệt kê các máy chủ gửi được ủy quyền | Tiêu đề công ty với các văn phòng được phê duyệt |
| DKIM | Ký điện tử tin nhắn | Con dấu sáp chứng minh tính xác thực |
| DMARC | Đặt chính sách cho lỗi + báo cáo | Hướng dẫn cách xử lý thư đáng ngờ |
Mỗi giao thức giải quyết các vector tấn công khác nhau. SPF ngăn các máy chủ không được ủy quyền gửi dưới danh nghĩa bạn. DKIM ngăn can thiệp tin nhắn sau khi gửi. DMARC kết hợp chúng lại và cung cấp khả năng hiển thị vào kết quả xác thực.
Hiểu Về SPF (Sender Policy Framework)
SPF (Sender Policy Framework) là phương pháp xác thực email dựa trên DNS chỉ định máy chủ mail nào được ủy quyền gửi email thay mặt domain của bạn.
SPF Hoạt Động Như Thế Nào
Khi email đến máy chủ nhận, máy chủ đó tra cứu bản ghi SPF của domain người gửi. Sau đó kiểm tra xem địa chỉ IP gửi email có được liệt kê là được ủy quyền không. Nếu IP khớp, SPF pass. Nếu không, SPF fail.
Quá trình xác minh SPF:
- Bạn gửi email từ nền tảng marketing của mình
- Máy chủ nhận trích xuất domain của bạn từ Return-Path (người gửi phong bì)
- Máy chủ truy vấn DNS cho bản ghi SPF của domain bạn
- Nó so sánh IP gửi với danh sách được ủy quyền trong bản ghi SPF của bạn
- Máy chủ ghi lại kết quả pass, fail, softfail hoặc neutral
Cú Pháp Bản Ghi SPF
Bản ghi SPF được xuất bản dưới dạng bản ghi TXT trong DNS của domain bạn. Dưới đây là cấu trúc cơ bản:
v=spf1 [mechanisms] [qualifier]allThẻ phiên bản: Luôn bắt đầu với v=spf1
Cơ chế: Xác định ai có thể gửi
| Cơ Chế | Mô Tả | Ví Dụ |
|---|---|---|
| include: | Tin tưởng SPF của domain khác | include:spf.brevo.com |
| ip4: | Ủy quyền IPv4 cụ thể | ip4:192.168.1.1 |
| ip6: | Ủy quyền IPv6 cụ thể | ip6:2001:db8::1 |
| a | Cho phép IP từ bản ghi A của domain | a |
| mx | Cho phép IP từ máy chủ mail của domain | mx |
| ptr | Reverse DNS (không dùng nữa) | ptr:example.com |
| exists: | Kiểm tra có điều kiện | exists:%{i}.spf.example.com |
Qualifier: Xác định cách xử lý kết quả khớp
| Qualifier | Ý Nghĩa | Kết Quả |
|---|---|---|
| + | Pass (mặc định) | Được ủy quyền |
| - | Fail (cứng) | Không được ủy quyền, từ chối |
| ~ | SoftFail | Không được ủy quyền, chấp nhận nhưng đánh dấu |
| ? | Neutral | Không có chính sách |
Cơ chế all: Áp dụng cho bất kỳ thứ gì không khớp với các cơ chế trước đó
Ví Dụ Bản Ghi SPF
Thiết lập cơ bản với một nhà cung cấp email:
v=spf1 include:spf.brevo.com -allĐiều này ủy quyền cho Brevo gửi email cho domain của bạn và từ chối tất cả các người gửi khác.
Nhiều dịch vụ email:
v=spf1 include:spf.brevo.com include:_spf.google.com include:spf.protection.outlook.com -allĐiều này ủy quyền cho Brevo, Google Workspace và Microsoft 365.
Bao gồm máy chủ mail của bạn:
v=spf1 ip4:203.0.113.10 include:spf.brevo.com -allĐiều này ủy quyền cho một địa chỉ IP cụ thể (máy chủ của bạn) cộng với Brevo.
Bắt đầu với soft fail khi kiểm tra:
v=spf1 include:spf.brevo.com ~allSử dụng ~all thay vì -all đánh dấu lỗi nhưng không từ chối. Hữu ích trong quá trình thiết lập ban đầu.
Thiết Lập Bản Ghi SPF
Bước 1: Xác định nguồn gửi của bạn
Liệt kê mọi dịch vụ gửi email từ domain của bạn:
- Nền tảng email marketing (Brevo, Mailchimp, v.v.)
- Dịch vụ email giao dịch
- Hệ thống CRM
- Phần mềm help desk
- Email công ty (Google Workspace, Microsoft 365)
- Máy chủ mail của riêng bạn
Bước 2: Thu thập các câu lệnh include SPF
Mỗi nhà cung cấp dịch vụ email ghi lại include SPF cần thiết của họ. Ví dụ phổ biến:
| Nhà Cung Cấp | SPF Include |
|---|---|
| Brevo | include:spf.brevo.com |
| Google Workspace | include:_spf.google.com |
| Microsoft 365 | include:spf.protection.outlook.com |
| Amazon SES | include:amazonses.com |
| SendGrid | include:sendgrid.net |
| Mailgun | include:mailgun.org |
Bước 3: Tạo bản ghi SPF của bạn
Kết hợp tất cả các include vào một bản ghi:
v=spf1 include:spf.brevo.com include:_spf.google.com -allBước 4: Thêm bản ghi DNS
Trong giao diện quản lý DNS:
- Loại: TXT
- Host/Tên: @ (hoặc để trống cho domain gốc)
- Giá trị: Bản ghi SPF đầy đủ của bạn
- TTL: 3600 (hoặc mặc định)
Bước 5: Xác minh bản ghi
Sử dụng công cụ tra cứu DNS để xác nhận:
dig TXT yourdomain.comHoặc sử dụng các công cụ trực tuyến như MXToolbox SPF Lookup.
Giới Hạn và Phương Pháp Tốt Nhất với SPF
Giới hạn 10 lần tra cứu DNS:
SPF có tối đa 10 lần tra cứu DNS. Mỗi include: tính là một lần tra cứu, và các bản ghi được include có thể chứa các include của riêng chúng, tính vào giới hạn của bạn. Vượt quá điều này gây ra SPF permerror (lỗi vĩnh viễn), làm hỏng tất cả các kiểm tra.
Chiến lược để duy trì dưới giới hạn:
- Sử dụng địa chỉ IP trực tiếp khi có thể (ip4: không tính là tra cứu)
- Hợp nhất dịch vụ sử dụng cùng nhà cung cấp
- Sử dụng dịch vụ làm phẳng SPF chuyển đổi include thành địa chỉ IP
- Xóa các include không sử dụng từ dịch vụ cũ
Các phương pháp tốt nhất khác với SPF:
- Chỉ một bản ghi SPF mỗi domain (nhiều bản ghi gây lỗi)
- Bắt đầu với
~all(softfail) trong quá trình thiết lập, chuyển sang-allsau khi xác nhận - Cập nhật SPF khi thay đổi nhà cung cấp email
- Không sử dụng cơ chế
ptrkhông còn dùng nữa - Giữ bản ghi đơn giản nhất có thể
Lỗi SPF Phổ Biến
Nhiều bản ghi SPF:
Sai:v=spf1 include:spf.brevo.com -allv=spf1 include:_spf.google.com -all
Đúng:v=spf1 include:spf.brevo.com include:_spf.google.com -allVượt quá giới hạn tra cứu DNS:
Nếu bạn có nhiều include, hãy kiểm tra tổng số lần tra cứu. Sử dụng các công cụ phân tích SPF để xác minh bạn dưới 10.
Quên cập nhật sau khi thay đổi nhà cung cấp:
Khi chuyển từ dịch vụ email này sang dịch vụ khác, hãy xóa include cũ và thêm cái mới.
Sử dụng +all:
Không bao giờ sử dụng +all vì nó ủy quyền cho mọi người gửi dưới danh nghĩa domain của bạn.
Hiểu Về DKIM (DomainKeys Identified Mail)
DKIM (DomainKeys Identified Mail) thêm chữ ký mã hóa vào email của bạn, chứng minh tin nhắn bắt nguồn từ domain của bạn và không bị sửa đổi trong quá trình truyền.
DKIM Hoạt Động Như Thế Nào
DKIM sử dụng mã hóa khóa công khai:
- Nhà cung cấp email của bạn tạo ra cặp khóa công khai/riêng tư
- Bạn xuất bản khóa công khai trong DNS
- Nhà cung cấp ký email gửi đi bằng khóa riêng tư
- Máy chủ nhận lấy khóa công khai của bạn từ DNS
- Họ sử dụng khóa công khai để xác minh chữ ký
- Chữ ký hợp lệ chứng minh tính xác thực và toàn vẹn
DKIM ký gì:
Chữ ký DKIM thường bao gồm các header cụ thể và nội dung tin nhắn:
- Header From (bắt buộc)
- Header Subject
- Header Date
- Nội dung tin nhắn
- Các header khác tùy cấu hình
Điều này ngăn kẻ tấn công sửa đổi các phần tử này sau khi gửi.
Cấu Trúc Bản Ghi DKIM
Bản ghi DKIM được xuất bản dưới dạng bản ghi TXT với định dạng đặt tên cụ thể:
selector._domainkey.yourdomain.comSelector là một định danh duy nhất cho phép bạn có nhiều khóa DKIM. Các dịch vụ email khác nhau sử dụng các selector khác nhau (ví dụ: brevo, google, s1, s2).
Nội dung bản ghi DKIM:
v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC...| Thẻ | Mô Tả | Ví Dụ |
|---|---|---|
| v= | Phiên bản (luôn là DKIM1) | v=DKIM1 |
| k= | Loại khóa (thường là rsa) | k=rsa |
| p= | Khóa công khai (base64) | p=MIGfMA0… |
| t= | Cờ (tùy chọn) | t=s (chế độ strict) |
| h= | Thuật toán hash (tùy chọn) | h=sha256 |
Thiết Lập DKIM
Bước 1: Tạo khóa DKIM
Nhà cung cấp dịch vụ email của bạn thường tạo khóa cho bạn. Trong Brevo:
- Vào Settings > Senders, Domains & Dedicated IPs
- Chọn domain của bạn
- Điều hướng đến phần DKIM
- Sao chép bản ghi DNS được cung cấp
Đối với máy chủ mail tự lưu trữ, tạo khóa bằng OpenSSL:
openssl genrsa -out private.key 2048openssl rsa -in private.key -pubout -out public.keyBước 2: Thêm bản ghi DNS DKIM
Trong quản lý DNS của bạn:
- Loại: TXT
- Host/Tên: selector._domainkey (ví dụ: brevo._domainkey)
- Giá trị: Bản ghi DKIM từ nhà cung cấp của bạn
- TTL: 3600
Bước 3: Bật ký DKIM
Trong cài đặt của nhà cung cấp email, bật ký DKIM cho domain của bạn. Điều này cho nhà cung cấp biết ký các tin nhắn gửi đi.
Bước 4: Xác minh thiết lập
Gửi email kiểm tra và kiểm tra header để tìm DKIM-Signature. Sử dụng các công cụ như:
- mail-tester.com
- DKIM Validator
- MXToolbox DKIM Lookup
Phương Pháp Tốt Nhất với DKIM
Sử dụng khóa 2048-bit:
Khóa 1024-bit cũ được coi là yếu. Các tiêu chuẩn bảo mật hiện đại khuyến nghị tối thiểu khóa RSA 2048-bit.
Xoay khóa định kỳ:
Mặc dù không yêu cầu nghiêm ngặt, việc xoay khóa DKIM hàng năm là thực hành bảo mật tốt. Thêm khóa mới trước khi xóa khóa cũ để tránh khoảng trống.
Theo dõi sự xâm phạm khóa:
Nếu khóa riêng tư của bạn bị xâm phạm, kẻ tấn công có thể ký tin nhắn dưới danh nghĩa bạn. Theo dõi các mẫu xác thực bất thường.
Sử dụng các selector khác nhau cho các dịch vụ khác nhau:
Mỗi nhà cung cấp email nên sử dụng một selector duy nhất. Điều này cho phép quản lý khóa độc lập và không xung đột với các dịch vụ khác.
Kiểm tra lan truyền DNS:
Khóa DKIM có thể dài. Đảm bảo nhà cung cấp DNS của bạn hỗ trợ bản ghi TXT có đủ độ dài. Một số nhà cung cấp yêu cầu chia khóa thành nhiều chuỗi.
Đọc Header DKIM
Khi bạn nhận email, header DKIM-Signature hiển thị:
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=brevo; h=from:to:subject:date:message-id; bh=base64hashofbody; b=base64signature;| Thẻ | Ý Nghĩa |
|---|---|
| v= | Phiên bản (luôn là 1) |
| a= | Thuật toán (rsa-sha256 được khuyến nghị) |
| c= | Chuẩn hóa (relaxed cho phép thay đổi nhỏ) |
| d= | Domain ký |
| s= | Selector |
| h= | Header đã ký |
| bh= | Hash nội dung |
| b= | Chữ ký |
Hiểu Về DMARC (Domain-based Message Authentication, Reporting, and Conformance)
DMARC xây dựng dựa trên SPF và DKIM để cung cấp thực thi chính sách và báo cáo. Nó cho các máy chủ nhận biết phải làm gì khi xác thực thất bại và gửi cho bạn các báo cáo về kết quả xác thực.
DMARC Hoạt Động Như Thế Nào
DMARC thêm hai khả năng quan trọng:
- Thực thi chính sách: Xác định cách người nhận nên xử lý thất bại xác thực
- Báo cáo: Nhận dữ liệu về ai đang gửi email sử dụng domain của bạn
Quá trình xác minh DMARC:
- Máy chủ nhận nhận email tự xưng là từ domain của bạn
- Nó kiểm tra SPF (IP gửi có khớp không?)
- Nó kiểm tra DKIM (chữ ký có hợp lệ không?)
- Nó kiểm tra căn chỉnh DMARC (các domain được xác thực có khớp với header From không?)
- Nếu căn chỉnh thất bại, nó áp dụng chính sách DMARC của bạn
- Nó gửi cho bạn các báo cáo tổng hợp và/hoặc pháp y
Căn Chỉnh DMARC
DMARC yêu cầu căn chỉnh giữa domain trong header From và các domain vượt qua SPF hoặc DKIM:
Căn Chỉnh SPF: Domain trong Return-Path (người gửi phong bì) phải khớp hoặc là subdomain của domain header From.
Căn Chỉnh DKIM: Domain trong chữ ký DKIM (thẻ d=) phải khớp hoặc là subdomain của domain header From.
Chế độ căn chỉnh:
| Chế Độ | Mô Tả |
|---|---|
| Strict (s) | Yêu cầu khớp domain chính xác |
| Relaxed (r) | Cho phép subdomain (mặc định) |
Với căn chỉnh relaxed, nếu header From của bạn hiển thị [email protected] và DKIM ký với brevo.example.com, căn chỉnh pass vì cả hai chia sẻ domain tổ chức example.com.
Cú Pháp Bản Ghi DMARC
Bản ghi DMARC được xuất bản dưới dạng bản ghi TXT tại _dmarc.yourdomain.com:
v=DMARC1; p=reject; rua=mailto:[email protected]; pct=100Thẻ bắt buộc:
| Thẻ | Mô Tả | Giá Trị |
|---|---|---|
| v= | Phiên bản | DMARC1 (luôn) |
| p= | Chính sách | none, quarantine, reject |
Thẻ tùy chọn:
| Thẻ | Mô Tả | Mặc Định |
|---|---|---|
| rua= | Địa chỉ báo cáo tổng hợp | không có |
| ruf= | Địa chỉ báo cáo pháp y | không có |
| pct= | Phần trăm áp dụng chính sách | 100 |
| sp= | Chính sách subdomain | giống như p= |
| adkim= | Chế độ căn chỉnh DKIM | r (relaxed) |
| aspf= | Chế độ căn chỉnh SPF | r (relaxed) |
| fo= | Tùy chọn báo cáo pháp y | 0 |
| ri= | Khoảng báo cáo (giây) | 86400 |
Giải Thích Các Chính Sách DMARC
p=none (Chỉ theo dõi):
Không có hành động nào được thực hiện khi thất bại. Email được giao bình thường. Sử dụng điều này trong khi phân tích báo cáo và sửa các vấn đề xác thực.
v=DMARC1; p=none; rua=mailto:[email protected]p=quarantine (Thư mục spam):
Email thất bại được gửi đến thư mục spam/junk. Một bước trung gian tốt trước khi từ chối hoàn toàn.
v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100p=reject (Chặn):
Email thất bại bị từ chối hoàn toàn. Bảo vệ tối đa nhưng hãy đảm bảo tất cả nguồn hợp lệ đều pass trước.
v=DMARC1; p=reject; rua=mailto:[email protected]; pct=100Thiết Lập DMARC
Bước 1: Đảm bảo SPF và DKIM đang hoạt động
DMARC phụ thuộc vào SPF và DKIM. Xác minh cả hai được cấu hình đúng trước khi thêm DMARC.
Bước 2: Bắt đầu với theo dõi (p=none)
Bắt đầu với chính sách dễ chịu nhất để thu thập dữ liệu mà không ảnh hưởng đến giao hàng:
v=DMARC1; p=none; rua=mailto:[email protected]Bước 3: Thêm bản ghi DNS
Trong quản lý DNS của bạn:
- Loại: TXT
- Host/Tên: _dmarc
- Giá trị: Bản ghi DMARC của bạn
- TTL: 3600
Bước 4: Phân tích báo cáo trong 2-4 tuần
Báo cáo tổng hợp DMARC đến hàng ngày dưới dạng tệp XML. Chúng hiển thị:
- IP nào đã gửi email sử dụng domain của bạn
- Tỷ lệ pass/fail SPF và DKIM
- Kết quả căn chỉnh DMARC
- Hành động của máy chủ nhận
Sử dụng các công cụ phân tích báo cáo DMARC để trực quan hóa dữ liệu này:
- DMARC Analyzer
- Postmark DMARC
- Valimail
- dmarcian
Bước 5: Sửa các vấn đề xác thực
Các vấn đề phổ biến được tiết lộ bởi báo cáo:
- Dịch vụ hợp lệ bị thiếu trong SPF
- DKIM không được bật cho dịch vụ gửi
- Dịch vụ bên thứ ba gửi mà không có xác thực đúng
- Chuyển tiếp phá vỡ căn chỉnh SPF
Bước 6: Thực thi dần dần
Sau khi các nguồn hợp lệ pass liên tục:
- Chuyển sang
p=quarantine; pct=10(cách ly 10% lỗi) - Tăng pct lên 25, 50, 75, 100
- Chuyển sang
p=reject; pct=10 - Tăng lên từ chối hoàn toàn
Bước 7: Duy trì và theo dõi
Tiếp tục xem xét báo cáo. Nguồn gửi mới, thay đổi nhà cung cấp hoặc trôi dạt cấu hình có thể gây ra lỗi xác thực.
Hiểu Báo Cáo DMARC
Báo cáo tổng hợp (rua):
Tóm tắt XML hàng ngày hiển thị:
- Tổ chức báo cáo
- Phạm vi ngày
- Chính sách đã xuất bản của bạn
- Kết quả xác thực theo IP nguồn
- Khối lượng email
Ví dụ trích đoạn:
<record> <source_ip>203.0.113.10</source_ip> <count>1250</count> <policy_evaluated> <disposition>none</disposition> <dkim>pass</dkim> <spf>pass</spf> </policy_evaluated></record>Báo cáo pháp y (ruf):
Chi tiết tin nhắn riêng lẻ cho các lỗi. Chi tiết hơn nhưng nhạy cảm về quyền riêng tư. Nhiều người nhận không gửi báo cáo pháp y.
Phương Pháp Tốt Nhất với DMARC
Luôn bắt đầu với p=none:
Nhảy trực tiếp đến reject có thể chặn email hợp lệ. Hãy theo dõi trước.
Sử dụng địa chỉ email chuyên dụng cho báo cáo:
Báo cáo DMARC có thể nhiều. Sử dụng địa chỉ chuyên dụng hoặc dịch vụ bên thứ ba.
Đặt chính sách subdomain (sp=):
Nếu bạn không gửi email từ subdomain, hãy đặt sp=reject để bảo vệ chúng khỏi giả mạo.
Sử dụng phần trăm (pct=) cho triển khai dần dần:
Thẻ pct cho phép bạn thực thi chính sách trên một phần trăm lỗi trong khi theo dõi phần còn lại.
Cân nhắc dịch vụ DMARC chuyên dụng:
Đối với các tổ chức lớn, các dịch vụ như Valimail, dmarcian hoặc Postmark DMARC cung cấp phân tích báo cáo tốt hơn so với các tệp XML thô.
Thiết Lập Bản Ghi DNS: Hướng Dẫn Đầy Đủ
Thiết lập xác thực email yêu cầu thêm các bản ghi DNS cụ thể. Phần này cung cấp hướng dẫn đầy đủ cho các nhà cung cấp DNS lớn.
Thu Thập Các Giá Trị Cần Thiết
Trước khi bắt đầu, hãy thu thập các giá trị này từ các nhà cung cấp email của bạn:
Cho SPF:
- Tất cả câu lệnh include (ví dụ: include:spf.brevo.com)
- Bất kỳ địa chỉ IP cụ thể nào bạn cần ủy quyền
Cho DKIM:
- Tên selector (ví dụ: brevo, google, s1)
- Giá trị khóa DKIM đầy đủ
Cho DMARC:
- Địa chỉ email báo cáo của bạn
Thêm Bản Ghi Trong Các Nhà Cung Cấp DNS Phổ Biến
Cloudflare:
- Đăng nhập vào Cloudflare Dashboard
- Chọn domain của bạn
- Vào DNS > Records
- Nhấp Add Record
- Cho SPF: Type=TXT, Name=@, Content=bản ghi SPF của bạn
- Cho DKIM: Type=TXT, Name=selector._domainkey, Content=khóa DKIM
- Cho DMARC: Type=TXT, Name=_dmarc, Content=bản ghi DMARC
- Nhấp Save
Google Domains/Squarespace:
- Vào cài đặt DNS cho domain của bạn
- Cuộn xuống Custom Records
- Nhấp Manage Custom Records
- Thêm mỗi bản ghi với loại, host và dữ liệu phù hợp
- Cho SPF: Host=@, Type=TXT, Data=bản ghi SPF
- Cho DKIM: Host=selector._domainkey, Type=TXT, Data=khóa DKIM
- Cho DMARC: Host=_dmarc, Type=TXT, Data=bản ghi DMARC
GoDaddy:
- Vào My Products > Domains
- Nhấp DNS bên cạnh domain của bạn
- Cuộn xuống phần Records
- Nhấp Add cho mỗi bản ghi mới
- Chọn TXT cho Type
- Nhập Name (@ cho SPF, selector._domainkey cho DKIM, _dmarc cho DMARC)
- Nhập Value
- Save
Namecheap:
- Vào Domain List > Manage
- Nhấp Advanced DNS
- Add New Record cho mỗi bản ghi
- Chọn TXT Record
- Host: @ cho SPF, selector._domainkey cho DKIM, _dmarc cho DMARC
- Value: Nội dung bản ghi của bạn
- Save All Changes
Lan Truyền DNS
Sau khi thêm bản ghi, các thay đổi cần thời gian để lan truyền toàn cầu. Điều này thường mất:
- 5-30 phút để hiển thị ban đầu
- Lên đến 48 giờ để lan truyền toàn cầu đầy đủ
Sử dụng dig hoặc nslookup để xác minh:
dig TXT yourdomain.comdig TXT selector._domainkey.yourdomain.comdig TXT _dmarc.yourdomain.comHoặc sử dụng các công cụ trực tuyến như whatsmydns.net để kiểm tra lan truyền toàn thế giới.
Ví Dụ Thiết Lập Đầy Đủ
Cho domain sử dụng Brevo và Google Workspace:
Bản ghi SPF (TXT tại @):
v=spf1 include:spf.brevo.com include:_spf.google.com -allBản ghi DKIM cho Brevo (TXT tại brevo._domainkey):
v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBA... [key from Brevo dashboard]Bản ghi DKIM cho Google (TXT tại google._domainkey):
v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BA... [key from Google Admin]Bản ghi DMARC (TXT tại _dmarc):
v=DMARC1; p=none; rua=mailto:[email protected]Khắc Phục Sự Cố Phổ Biến
Ngay cả với thiết lập cẩn thận, xác thực email có thể thất bại. Dưới đây là các vấn đề phổ biến và cách giải quyết.
Khắc Phục Sự Cố SPF
Không tìm thấy bản ghi SPF:
Triệu chứng: Kiểm tra SPF hiển thị “none” hoặc “no record”
Nguyên nhân:
- Bản ghi chưa được thêm vào DNS
- Bản ghi được thêm vào vị trí sai (subdomain thay vì gốc)
- Lan truyền DNS chưa hoàn tất
Giải pháp:
- Xác minh bản ghi tồn tại với
dig TXT yourdomain.com - Kiểm tra trường Name/Host (nên là @ hoặc để trống cho domain gốc)
- Chờ lan truyền DNS (lên đến 48 giờ)
SPF PermError (quá nhiều tra cứu):
Triệu chứng: Kết quả SPF hiển thị “permerror”
Nguyên nhân:
- Hơn 10 tra cứu DNS trong bản ghi SPF của bạn
- Các include chứa quá nhiều include lồng nhau
Giải pháp:
- Kiểm tra các include của bạn và xóa những cái không sử dụng
- Thay thế include bằng các mục ip4: khi có thể
- Sử dụng dịch vụ làm phẳng SPF
- Hợp nhất dịch vụ trên ít nhà cung cấp hơn
SPF SoftFail hoặc Fail cho thư hợp lệ:
Triệu chứng: Email hợp lệ không vượt qua SPF
Nguyên nhân:
- Dịch vụ gửi không được bao gồm trong SPF
- Gửi từ IP không được ủy quyền
- Sử dụng relay thay đổi người gửi phong bì
Giải pháp:
- Thêm include bị thiếu cho dịch vụ gửi của bạn
- Kiểm tra IP nào thực sự gửi email (từ header)
- Liên hệ nhà cung cấp email của bạn để biết cài đặt SPF đúng
Nhiều bản ghi SPF:
Triệu chứng: SPF hiển thị permerror hoặc lỗi ngẫu nhiên
Nguyên nhân:
- Hai hoặc nhiều bản ghi TXT chứa v=spf1
Giải pháp:
- Kết hợp tất cả cơ chế thành một bản ghi SPF duy nhất
- Xóa bản ghi SPF trùng lặp
Khắc Phục Sự Cố DKIM
Thiếu chữ ký DKIM:
Triệu chứng: Không có header DKIM-Signature trong email
Nguyên nhân:
- Ký DKIM không được bật trong nhà cung cấp email
- Xác minh domain chưa hoàn tất
- Gửi qua đường không có DKIM
Giải pháp:
- Bật DKIM trong cài đặt nhà cung cấp của bạn
- Hoàn tất các bước xác minh domain
- Kiểm tra tài liệu nhà cung cấp để biết thiết lập DKIM
Xác minh DKIM thất bại:
Triệu chứng: DKIM hiển thị “fail” trong kết quả xác thực
Nguyên nhân:
- Bản ghi DNS không được xuất bản hoặc không chính xác
- Sử dụng sai selector
- Không khớp khóa giữa DNS và ký
- Tin nhắn bị sửa đổi trong quá trình truyền
Giải pháp:
- Xác minh bản ghi DNS tồn tại tại selector._domainkey.domain
- So sánh selector trong header DKIM-Signature với DNS
- Tạo lại khóa nếu nghi ngờ không khớp
- Kiểm tra các bộ lọc mail hoặc relay sửa đổi tin nhắn
Khóa DKIM quá dài cho DNS:
Triệu chứng: Không thể lưu bản ghi DKIM, lỗi cắt ngắn
Nguyên nhân:
- Khóa 2048-bit vượt quá độ dài bản ghi TXT đơn
- Nhà cung cấp DNS có giới hạn ký tự
Giải pháp:
- Chia khóa thành nhiều chuỗi được trích dẫn (hầu hết nhà cung cấp xử lý tự động)
- Kiểm tra xem nhà cung cấp DNS của bạn có hỗ trợ bản ghi TXT dài không
- Sử dụng khóa 1024-bit tạm thời (kém an toàn hơn)
Ví dụ bản ghi DKIM được chia:
"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...""...continuation of key..."Khắc Phục Sự Cố DMARC
Lỗi căn chỉnh DMARC:
Triệu chứng: SPF và DKIM pass nhưng DMARC fail
Nguyên nhân:
- Domain được xác thực không khớp với domain header From
- Dịch vụ gửi bên thứ ba sử dụng domain của họ
- Người gửi phong bì được cấu hình sai
Giải pháp:
- Đảm bảo nhà cung cấp email của bạn ký với domain của bạn (DKIM tùy chỉnh)
- Cấu hình Return-Path/người gửi phong bì tùy chỉnh
- Sử dụng chế độ căn chỉnh relaxed (adkim=r; aspf=r)
Không nhận báo cáo DMARC:
Triệu chứng: Không có báo cáo tổng hợp đến
Nguyên nhân:
- Địa chỉ rua không chính xác
- Địa chỉ email không thể nhận email bên ngoài
- Báo cáo vào spam
- Máy chủ nhận không gửi báo cáo
Giải pháp:
- Xác minh cú pháp rua:
rua=mailto:[email protected] - Kiểm tra địa chỉ báo cáo có thể nhận thư bên ngoài
- Kiểm tra thư mục spam để tìm báo cáo
- Lưu ý: Không phải tất cả người nhận đều gửi báo cáo DMARC
Không tìm thấy bản ghi DMARC:
Triệu chứng: Kiểm tra DMARC hiển thị “no record”
Nguyên nhân:
- Bản ghi được xuất bản tại vị trí sai
- Sử dụng định dạng sai (phải là TXT tại subdomain _dmarc)
Giải pháp:
- Bản ghi phải ở _dmarc.yourdomain.com
- Xác minh với
dig TXT _dmarc.yourdomain.com
Công Cụ Khắc Phục Sự Cố Chung
Công cụ xác thực trực tuyến:
- MXToolbox (mxtoolbox.com) - Tra cứu SPF, DKIM, DMARC
- Mail Tester (mail-tester.com) - Gửi email kiểm tra để phân tích đầy đủ
- DMARC Analyzer - Trực quan hóa báo cáo
- Google Admin Toolbox - Kiểm tra MX, SPF, DKIM
Công cụ command line:
# Kiểm tra SPFdig TXT yourdomain.com
# Kiểm tra DKIMdig TXT selector._domainkey.yourdomain.com
# Kiểm tra DMARCdig TXT _dmarc.yourdomain.com
# Kiểm tra từ máy chủ DNS cụ thểdig @8.8.8.8 TXT yourdomain.comPhân tích header email:
Kiểm tra header Authentication-Results trong email đã nhận:
Authentication-Results: mx.google.com; dkim=pass header.d=example.com header.s=brevo; spf=pass smtp.mailfrom=example.com; dmarc=pass action=none header.from=example.comXác Thực Email và Brevo
Brevo cung cấp hỗ trợ xác thực email toàn diện, giúp việc cấu hình SPF, DKIM và DMARC cho domain gửi của bạn trở nên đơn giản.
Thiết Lập Xác Thực Trong Brevo
Bước 1: Thêm domain của bạn
- Đăng nhập vào tài khoản Brevo của bạn
- Điều hướng đến Settings > Senders, Domains & Dedicated IPs
- Nhấp Add a Domain
- Nhập tên domain của bạn
Bước 2: Cấu hình SPF
Brevo cung cấp include SPF để thêm vào DNS của bạn:
include:spf.brevo.comThêm vào bản ghi SPF hiện có của bạn hoặc tạo mới:
v=spf1 include:spf.brevo.com -allBước 3: Cấu hình DKIM
Brevo tạo khóa DKIM tự động. Sao chép bản ghi được cung cấp:
- Vào cài đặt domain của bạn trong Brevo
- Tìm phần DKIM
- Sao chép tên và giá trị bản ghi DNS
- Thêm bản ghi TXT vào DNS của bạn
Bước 4: Xác minh cấu hình
Brevo tự động kiểm tra bản ghi DNS của bạn. Dấu kiểm màu xanh lá cây biểu thị cấu hình thành công.
Lợi Ích Của Xác Thực Brevo Đúng Cách
Khi bạn cấu hình xác thực đúng cách với Brevo:
- Tỷ lệ vào hộp thư đến cao hơn: Gmail, Microsoft và các nhà cung cấp khác tin tưởng các tin nhắn được xác thực
- Bảo vệ thương hiệu: DMARC ngăn giả mạo domain của bạn
- Phân tích tốt hơn: Theo dõi chính xác các lần mở và nhấp
- Xây dựng uy tín: Xác thực nhất quán xây dựng uy tín người gửi
Lợi Ích Tích Hợp Tajo
Sử dụng Tajo để kết nối cửa hàng Shopify của bạn với Brevo mang lại các lợi thế bổ sung:
- Đồng bộ khách hàng tự động: Dữ liệu khách hàng chảy liền mạch cho email được cá nhân hóa
- Theo dõi sự kiện: Sự kiện mua hàng, duyệt web và giỏ hàng kích hoạt email giao dịch được xác thực
- Phối hợp đa kênh: Duy trì xác thực nhất quán qua email, SMS và WhatsApp
- Phân tích thống nhất: Theo dõi hiệu suất email cùng với các số liệu marketing khác
Sự kết hợp giữa xác thực email đúng cách và đồng bộ dữ liệu khách hàng thời gian thực đảm bảo email của bạn không chỉ đến được hộp thư đến mà còn cộng hưởng với mỗi người nhận.
Câu Hỏi Thường Gặp
Sự khác biệt giữa SPF, DKIM và DMARC là gì?
SPF chỉ định máy chủ nào có thể gửi email cho domain của bạn. DKIM thêm chữ ký mã hóa chứng minh tính xác thực của tin nhắn. DMARC đặt chính sách về cách người nhận nên xử lý lỗi xác thực và cung cấp báo cáo. Cả ba hoạt động cùng nhau để xác thực email hoàn chỉnh.
Tôi có cần cả ba (SPF, DKIM và DMARC) không?
Để tối ưu khả năng giao và bảo mật, có. SPF một mình dễ bị giả mạo. DKIM một mình không chỉ định chính sách. DMARC yêu cầu SPF hoặc DKIM để hoạt động. Cùng nhau, chúng cung cấp bảo vệ toàn diện và tỷ lệ vào hộp thư đến tốt nhất.
Mất bao lâu để xác thực email hoạt động?
Các thay đổi DNS thường lan truyền trong vòng 30 phút đến 48 giờ. Sau khi lan truyền, xác thực áp dụng ngay lập tức. Tuy nhiên, việc xây dựng uy tín người gửi dựa trên xác thực nhất quán mất hàng tuần đến hàng tháng.
Việc thiết lập DMARC với p=reject có chặn email hợp lệ của tôi không?
Có thể nếu cấu hình không đúng. Đây là lý do tại sao bạn luôn nên bắt đầu với p=none (theo dõi), phân tích báo cáo trong 2-4 tuần, sửa các vấn đề, sau đó dần dần chuyển sang quarantine và reject. Không bao giờ bỏ qua giai đoạn theo dõi.
Căn chỉnh SPF so với căn chỉnh DKIM là gì?
Căn chỉnh có nghĩa là domain được xác thực khớp với domain header From hiển thị. Căn chỉnh SPF so sánh domain Return-Path. Căn chỉnh DKIM so sánh domain ký (thẻ d=). DMARC yêu cầu ít nhất một phải căn chỉnh.
Tôi có thể có nhiều khóa DKIM cho một domain không?
Có. Mỗi dịch vụ email có thể sử dụng selector khác nhau (ví dụ: brevo._domainkey, google._domainkey). Điều này cho phép nhiều dịch vụ ký bằng DKIM độc lập. Không có giới hạn số lượng selector DKIM.
Tại sao email của tôi vẫn vào spam sau khi thiết lập xác thực?
Xác thực là cần thiết nhưng chưa đủ để vào hộp thư đến. Các yếu tố khác bao gồm uy tín người gửi, chất lượng nội dung, tỷ lệ tương tác và vệ sinh danh sách. Xác thực đưa bạn vượt qua bộ lọc đầu tiên; các thực hành tốt xác định vị trí cuối cùng.
Làm thế nào để đọc báo cáo tổng hợp DMARC?
Báo cáo tổng hợp DMARC là tệp XML. Sử dụng các công cụ như dmarcian, Postmark DMARC hoặc DMARC Analyzer để phân tích và trực quan hóa chúng. Các công cụ này hiển thị IP nào gửi email dưới danh nghĩa domain của bạn và tỷ lệ pass/fail xác thực của họ.
Điều gì xảy ra nếu tôi vượt quá giới hạn 10 tra cứu SPF?
SPF trả về lỗi vĩnh viễn (permerror), và tất cả kiểm tra SPF đều thất bại. Để sửa điều này, hãy xóa các include không sử dụng, thay thế include bằng địa chỉ IP khi có thể, hoặc sử dụng dịch vụ làm phẳng SPF.
Tôi nên sử dụng -all hay ~all trong bản ghi SPF?
Sử dụng ~all (softfail) trong khi kiểm tra và xây dựng sự tự tin. Sau khi xác nhận tất cả nguồn hợp lệ đều pass, chuyển sang -all (hard fail) để bảo vệ mạnh hơn. Softfail đánh dấu lỗi nhưng không từ chối; hard fail ủy quyền từ chối.
Tôi nên xoay khóa DKIM thường xuyên như thế nào?
Không có yêu cầu nghiêm ngặt, nhưng xoay hàng năm là thực hành bảo mật tốt. Khi xoay, hãy thêm khóa mới trước, đợi lan truyền DNS, bật ký với khóa mới, sau đó xóa khóa cũ sau một thời gian chuyển tiếp.
Subdomain có cần xác thực riêng không?
SPF: Có, mỗi subdomain cần bản ghi SPF riêng nếu gửi email từ nó. DKIM: Khóa có thể được chia sẻ hoặc riêng biệt theo subdomain. DMARC: Subdomain kế thừa chính sách cha trừ khi sp= được đặt hoặc subdomain có bản ghi DMARC riêng.
Kết Luận
Xác thực email qua SPF, DKIM và DMARC không còn là tùy chọn cho các doanh nghiệp phụ thuộc vào giao tiếp email. Các giao thức này bảo vệ thương hiệu của bạn khỏi giả mạo, cải thiện khả năng giao và xây dựng sự tin tưởng cần thiết cho email marketing hiệu quả.
Những điểm chính cần nhớ:
- SPF ủy quyền các máy chủ gửi qua DNS
- DKIM chứng minh tính xác thực của tin nhắn bằng chữ ký mã hóa
- DMARC thực thi chính sách và cung cấp khả năng hiển thị qua báo cáo
- Bắt đầu với theo dõi (p=none) trước khi thực thi từ chối
- Tất cả nguồn gửi hợp lệ phải được cấu hình đúng
- Theo dõi thường xuyên ngăn trôi dạt cấu hình
Đối với các doanh nghiệp thương mại điện tử sử dụng Shopify, kết hợp xác thực email đúng cách với tích hợp dữ liệu khách hàng qua Tajo và Brevo tạo ra một nền tảng mạnh mẽ. Email giao dịch của bạn tiếp cận khách hàng một cách đáng tin cậy, các chiến dịch marketing của bạn đạt được tỷ lệ vào hộp thư đến tốt hơn và thương hiệu của bạn vẫn được bảo vệ khỏi các cuộc tấn công giả mạo.
Sẵn sàng cải thiện khả năng giao email? Bắt đầu bằng cách kiểm tra thiết lập xác thực hiện tại của bạn với các công cụ được đề cập trong hướng dẫn này, sau đó cấu hình có hệ thống SPF, DKIM và DMARC theo các hướng dẫn từng bước được cung cấp.
Tìm hiểu cách Tajo tích hợp với Brevo để cung cấp xác thực email liền mạch cùng với đồng bộ dữ liệu khách hàng thời gian thực cho cửa hàng Shopify của bạn.