Lập trình

Cách sửa SPF, DKIM và DMARC

Nếu email của bạn bị đưa vào spam hoặc công cụ kiểm tra báo thiếu một bản ghi, nguyên nhân thường nằm ở một trong ba bản ghi DNS. Mỗi bản ghi trả lời một câu hỏi khác nhau, và bạn cần đủ cả ba.

Trung cấp · 8 phút đọc · Cập nhật 31 tháng 10, 2026

Cách sửa SPF, DKIM và DMARC

Mỗi bản ghi có tác dụng gì

  • SPF liệt kê các máy chủ được phép gửi email thay mặt tên miền của bạn.
  • DKIM thêm một chữ ký để chứng minh email không bị thay đổi và thực sự đến từ tên miền của bạn.
  • DMARC cho máy chủ nhận biết cần làm gì khi email không vượt qua kiểm tra, và gửi báo cáo về cho bạn.

Hãy bắt đầu bằng cách chạy tên miền của bạn qua Email DNS Checker để xem bản ghi nào cần xử lý. Google và Yahoo hiện yêu cầu các bản ghi này từ những người gửi email hàng loạt, nên thiếu chúng có thể ảnh hưởng đến việc email được gửi đến nơi.

Sửa SPF

SPF là một bản ghi TXT duy nhất trên tên miền gốc. Bản ghi này liệt kê mọi dịch vụ gửi email cho bạn:

v=spf1 include:_spf.google.com ~all

Hãy dùng giá trị include mà nhà cung cấp dịch vụ đưa cho bạn. Các lỗi thường gặp gồm:

  • Có hai bản ghi SPF. Một tên miền chỉ nên có một bản ghi SPF. Hãy gộp chúng lại, ví dụ: v=spf1 include:_spf.google.com include:sendgrid.net ~all.
  • Quá nhiều lượt tra cứu. SPF chỉ cho phép tối đa 10 lượt tra cứu DNS. Mỗi include được tính, kể cả những cái lồng bên trong nó. Hãy xóa các dịch vụ bạn không còn dùng.
  • Quên một người gửi. Bản tin, hóa đơn và biểu mẫu liên hệ thường được gửi qua các dịch vụ khác. Hãy thêm từng dịch vụ một.

Sửa DKIM

Bạn không cần tự viết DKIM. Nhà cung cấp email sẽ tạo khóa, và bạn công bố khóa đó tại một địa chỉ như sau:

selector._domainkey.example.com

Tìm cài đặt DKIM trong khu vực quản trị của nhà cung cấp, sao chép bản ghi họ cung cấp, rồi bật tính năng ký số ở đó. Nếu công cụ kiểm tra báo thiếu DKIM, có thể bạn chỉ cần đúng selector, và selector này khác nhau tùy nhà cung cấp. Để xác nhận, hãy tự gửi cho mình một email rồi đọc header của nó bằng Email Header Analyzer. Tìm dkim=pass.

Sửa DMARC

Thêm một bản ghi TXT tại _dmarc.example.com. Bắt đầu ở chế độ giám sát, chế độ này không làm thay đổi cách email được gửi đi:

v=DMARC1; p=none; rua=mailto:dmarc@example.com

Khi báo cáo cho thấy email thật của bạn vượt qua kiểm tra, hãy nâng cấp từng bước:

  1. p=none: theo dõi báo cáo trong vài tuần.
  2. p=quarantine: email không đạt sẽ bị chuyển vào spam.
  3. p=reject: email không đạt sẽ bị từ chối.

Đừng chuyển thẳng sang p=reject. Nếu một dịch vụ bạn dùng chưa được SPF và DKIM bao phủ, email từ dịch vụ đó sẽ biến mất.

Kiểm tra kết quả

Thay đổi DNS cần thời gian để lan truyền, vì vậy hãy dùng DNS Propagation Checker trước, sau đó chạy lại Email DNS Checker. Để kiểm tra lần cuối, hãy gửi một email thật và xác nhận rằng SPF, DKIM và DMARC đều đạt trong phần header.

Câu hỏi thường gặp

Tôi có cần cả ba bản ghi không?
Có. Chúng bao quát những khía cạnh khác nhau, và các nhà cung cấp hộp thư lớn đều kiểm tra cả ba. DMARC cũng phụ thuộc vào việc SPF hoặc DKIM đạt yêu cầu.
SPF nên kết thúc bằng ~all hay -all?
~all đánh dấu những người gửi không có trong danh sách là đáng ngờ, còn -all yêu cầu từ chối họ. Trong khi bạn đang xác nhận từng người gửi, ~all là lựa chọn an toàn hơn, đặc biệt khi DMARC đang thực thi chính sách.
Thay đổi DNS mất bao lâu?
Thường chỉ vài phút, nhưng có thể mất tới thời gian TTL của bản ghi, đôi khi lâu hơn. Hãy kiểm tra bằng công cụ theo dõi lan truyền trước khi cho rằng thay đổi đã thất bại.

Đọc tiếp