Hướng dẫn về SPF, DKIM
1. SPF là gì?
Là một bản ghi dạng TXT khai báo trên DNS, mục đích chính là để bên nhận mail có thế kiểm tra tính xác thực của nguồn gửi (theo IP).
Mình đã thử kiểm tra bản ghi TXT của domain zing.vn
"v=spf1 ip4:118.102.6.0/24 a mx ~all" è đây chính là bản ghi TXT khai báo cấu hình SPF
spf1: version c ủa SPF
ip4:118.102.6.0/24: Domain @zing.vn sẽ sử dụng dải IP này để gửi email
a: sử dụng IP domain zing.vn, nếu ghi là a:server1.zing.vn thì nghĩa là sử dụng IP bản ghi A server1.zing.vn
mx: giống như a nhưng đây là bản ghi MX
~all: Nói với bên nhận email “Các IP ngoài các IP trên thì đều không phải gửi từ @zing.vn nhưng bạn hãy cứ nhận email và đánh dấu nó”
Có thể tham khảo thêm tại http://www.openspf.org/SPF_Record_Syntax về cấu trúc SPF.
Lợi ích của việc cấu hình SPF:
- Hệ thống bên nhận sẽ tin tưởng hơn khi nhận mail đến từ domain có khai báo SPF.
- Gmail, Yahoo có kiểm tra và ưu tiên hơn đối với các email gửi từ domain có khai báo SPF.
Kiểm tra bằng cách gửi email “chuẩn” tới Gmail và khi Gmail nhận được trong header sẽ đánh giá SPF mà bạn đã cấu hình:
1. DKIM là gì?
Là phương pháp xác thực email bằng chữ ký số trong đó khóa public được đưa lên DNS bằng bản ghi TXT.
Trích “DKIM là một phương pháp xác thực chứ không phải là một phương pháp chống spam. Nhưng nó hỗ trợ việc chống spam bởi vì nó đảm bảo thư là thật (địa chỉ người gửi, hay ít nhất tên miền gửi thư là thật) trong khi thực tế đa số spam đều là thư giả mạo (mạo tên người khác, tên miền khác). Với DKIM, ai muốn spam thì cứ thoải mái, nhưng phải spam một cách quang minh chính đại; bạn không thể gửi thư từ một tên miền không thuộc sở hữu của mình được. ”
Tùy theo hệ thống Mail server khác nhau sẽ có hướng dẫn khác nhau về cấu hình DKIM ở phía server, nhưng hầu hết đều phải thực hiện các bước:
- Sinh ra cặp khóa private/public, có nhiều phần mềm hỗ trợ việc này ví dụ như OpenSSL, đối với một số Mail server thì có hỗ trợ việc này.
- Đưa khóa Public lên khai báo bản ghi TXT trên DNS theo đúng domain gửi email.
- Cấu hình Mail server sử dụng khóa private để ký vào email trước khi gửi email. Khóa này chỉ lưu trên Mail server nên không thể giả mạo.
Xử lý ở bên nhận:
- Nhận được email từ bên gửi và thấy email có thông điệp được mã hóa do cấu hình DKIM.
- Query DNS để lấy khóa public của domain bên gửi để giải mã, nếu giả mã đúng thì xác nhận nguồn gửi và email đảm báo, ngược lại sẽ tùy chính sách của bên nhận để từ chối hoặc nhận email.
Kết quả khi Gmail nhận được email cấu hình DKIM chuẩn.
.Hết
Là một bản ghi dạng TXT khai báo trên DNS, mục đích chính là để bên nhận mail có thế kiểm tra tính xác thực của nguồn gửi (theo IP).
Mình đã thử kiểm tra bản ghi TXT của domain zing.vn
"v=spf1 ip4:118.102.6.0/24 a mx ~all" è đây chính là bản ghi TXT khai báo cấu hình SPF
spf1: version c ủa SPF
ip4:118.102.6.0/24: Domain @zing.vn sẽ sử dụng dải IP này để gửi email
a: sử dụng IP domain zing.vn, nếu ghi là a:server1.zing.vn thì nghĩa là sử dụng IP bản ghi A server1.zing.vn
mx: giống như a nhưng đây là bản ghi MX
~all: Nói với bên nhận email “Các IP ngoài các IP trên thì đều không phải gửi từ @zing.vn nhưng bạn hãy cứ nhận email và đánh dấu nó”
Có thể tham khảo thêm tại http://www.openspf.org/SPF_Record_Syntax về cấu trúc SPF.
Lợi ích của việc cấu hình SPF:
- Hệ thống bên nhận sẽ tin tưởng hơn khi nhận mail đến từ domain có khai báo SPF.
- Gmail, Yahoo có kiểm tra và ưu tiên hơn đối với các email gửi từ domain có khai báo SPF.
Kiểm tra bằng cách gửi email “chuẩn” tới Gmail và khi Gmail nhận được trong header sẽ đánh giá SPF mà bạn đã cấu hình:
1. DKIM là gì?
Là phương pháp xác thực email bằng chữ ký số trong đó khóa public được đưa lên DNS bằng bản ghi TXT.
Trích “DKIM là một phương pháp xác thực chứ không phải là một phương pháp chống spam. Nhưng nó hỗ trợ việc chống spam bởi vì nó đảm bảo thư là thật (địa chỉ người gửi, hay ít nhất tên miền gửi thư là thật) trong khi thực tế đa số spam đều là thư giả mạo (mạo tên người khác, tên miền khác). Với DKIM, ai muốn spam thì cứ thoải mái, nhưng phải spam một cách quang minh chính đại; bạn không thể gửi thư từ một tên miền không thuộc sở hữu của mình được. ”
Tùy theo hệ thống Mail server khác nhau sẽ có hướng dẫn khác nhau về cấu hình DKIM ở phía server, nhưng hầu hết đều phải thực hiện các bước:
- Sinh ra cặp khóa private/public, có nhiều phần mềm hỗ trợ việc này ví dụ như OpenSSL, đối với một số Mail server thì có hỗ trợ việc này.
- Đưa khóa Public lên khai báo bản ghi TXT trên DNS theo đúng domain gửi email.
- Cấu hình Mail server sử dụng khóa private để ký vào email trước khi gửi email. Khóa này chỉ lưu trên Mail server nên không thể giả mạo.
Xử lý ở bên nhận:
- Nhận được email từ bên gửi và thấy email có thông điệp được mã hóa do cấu hình DKIM.
- Query DNS để lấy khóa public của domain bên gửi để giải mã, nếu giả mã đúng thì xác nhận nguồn gửi và email đảm báo, ngược lại sẽ tùy chính sách của bên nhận để từ chối hoặc nhận email.
Kết quả khi Gmail nhận được email cấu hình DKIM chuẩn.
.Hết