Ở những bài viết trước, Rán đã hướng dẫn các bạn cách để cài đặt Zimbra Mail Server + triển khai SSL Free trên Zimbra, các bạn có thể đọc lại bài viết tại đây.

Trong bài viết này, Rán sẽ hướng dẫn các bạn cấu hình Mail Relay trên Zimbra để tránh mail bị spam khi gửi.
SMTP là gì và nó hoạt động như thế nào?
Trước khi chúng ta đi sâu vào SMTP Relay là gì hãy bắt đầu cách xác định hoạt dộng của một máy chủ SMTP
SMTP là viết tắt của Simple Mail Transfer Protocol. Máy chủ SMTP chịu trách nhiệm gửi email đi và đó là nhiệm vụ chính của nó, ngoài ra nó không có nhiệm vụ nhận email đến. Trong khi đó POP và IMAP là các giao thức cho phép bạn truy xuất email từ máy chủ thư. SMTP là giao thức cho phép bạn gửi email đến máy chủ thư.
Chuyển tiếp thư là gì?
Nếu SMTP là giao thức để gửi email đi, thì bạn có thể coi chuyển tiếp thư (hay còn được gọi là chuyển tiếp SMTP) là quá trình chuyển email từ máy chủ thư này sang máy chủ thư khác.
Để dễ hình dung hơn các bạn hãy xem ảnh ví dụ đơn giản dưới đây:

Khi người gửi mail đi, máy chủ SMTP của người gửi kết nối đến máy chủ MX của người nhận, sau đó chuyển tiếp email từ máy chủ thư của người gửi đến máy chủ thư của người nhận.
Mail Relay là gì?
Ở đoạn đầu bài viết, Rán đã giải thích rằng SMTP là giao thức để gửi email đi từ máy chủ này sang máy chủ khác.
Email Relay hay còn gọi là SMTP Relay là một mail server cho phép chuyển tiếp email của bạn tới người nhận, SMTP Relay đơn giản sẽ nhận email từ server của bạn rồi sau đó thực hiện chuyển tiếp mail đến người nhận.
Tóm gọn lại Relay/SMTP Relay/Mail Relay là dịch vụ chuyển tiếp Email.
Khi nào cần sử dụng Email Relay?
Đối với các nhà cung cấp dịch vụ VPS điển hình như DigitalOcean, Linode, Vurth, GCP,… thì đa phần sẽ bị hạn chế hoặc cấm tuyện đối port mail 25, 465,… Khi này, các bạn hãy nghĩ ngay đến phương án Mail Relay.
Ngoài ra, Mail Relay cũng hữu hiệu trong một vài trường hợp chẳng hạn như email của bạn rơi vào Blacklist hoặc domain của bạn bị từ chối gửi đến các tổ chức như Yahoo hay Gmail,…
Mục đích sử dụng Mail Relay là tránh bị đánh dấu Spam Mail hoặc để chuyển Email của bạn đi theo 1 hướng khác.
Cấu hình DKIM, DMARC, SPF Zimbra
Đầu tiên, việc cấu hình DKIM, DMARC, SPF là cần thiết cho mail server. Bởi lẽ nếu nhà cung cấp dịch vụ của bạn có cho port mail được cho phép gửi đi chăng nữa mà bạn không cấu hình những record này cho domain thì mail của bạn cũng chỉ được gửi vào list spam mà thôi. Vậy cho nên là điều kế tiếp sau khi bạn cài đặt Mail Server xong, bạn nên cấu hình những Record này trong domain của chính bạn.
Vì không muốn làm các bạn mất thời gian cũng như Rán muốn rút ngắn nội dung bài viết nên Rán sẽ hướng dẫn các bạn tạo nhanh những Record này bằng tools có sẵn nhé!
Các bạn truy cập vào link sau:
Và thực hiện generator record SPF + DMARC
1. Tạo Record SPF

Các bạn nhập thông tin bao gồm địa chỉ IP Public của VPS và hostname VPS rồi tiến hành tạo
Sau khi đã tạo các bạn thực hiện truy cập vào trang quản trị Domain và thực hiện thêm Record SPF dưới dạng TXT.

2. Tạo Record DMARC
Vẫn thực hiện như bước trên, các bạn nhập thông tin vào DMARC rồi thực hiện tạo

Tiếp tục thêm record trên vào domain dưới dạng TXT (lưu ý: host sẽ có dạng ._dmarc.”domain_của_bạn”)

3. Tạo record DKIM
Khác với 2 record bên trên, record DKIM Rán khuyên các bạn nên sử dụng OpenDKIM trên Zimbra để tạo
Các bạn sử dụng lệnh sau trên VPS để tạo record DKIM
su zimbra /opt/zimbra/libexec/zmdkimkeyutil -a -d domain_của_bạn

Sau khi đã được thông tin như trên các bạn chú ý đoạn DKIM key và đoạn TXT (“v=DKIM1….)
Tiếp tục vào trang quản trị domain để thêm record DKIM dưới dạng TXT (lưu ý: host sẽ có dạng DKIMkey._domainkey.domain_của_bạn) nhớ có dấu ._ còn đoạn sau TXT thì các bạn copy hết và bỏ đi những khoảng trắng cũng như ký tự “

Sau khi đã thêm hoàn tất các record trên các bạn thực hiện test lại trên dmarcly xem đã pass tất cả chưa?



Đăng ký và cấu hình Mail Relay
Để đăng ký mail Relay các bạn thực hiện truy cập link sau để đăng ký dịch vụ mail relay của smtp2go được miễn phí 1000 mail/tháng.
Tại đây, vì smtp2go chỉ cho chấp nhận email domain đăng ký tài khoản mới nên các bạn không thể sử dụng email dưới dạng @gmail hay @outlook để đăng ký được, các bạn thực hiện đăng ký bằng email của zimbra nhé!
Sau khi đăng ký tài khoản hoàn tất, các bạn click vào mục IP Authentication và nhập vào địa chỉ IP VPS

Tiếp đến các bạn vào mục Verified Sender và nhập vào tên domain các bạn muốn sử dụng dịch vụ relay này, tiếp tục xác minh domain bằng cách thêm những record CNAME mà SMTP2GO hướng dẫn. Sau khi tạo record CNAME trên trang quản trị domain khớp với những CNAME mà SMTP2GO hướng dẫn các bạn verified pass như hình là được.


Tiếp đến, trên trang SMTP2GO các bạn vào mục SMTP user và thực hiện tạo user mới

Sau khi đã hoàn tất các bước bên trên các bạn ssh đến VPS và sử dụng những lệnh sau để cấu hình relay trên Zimbra Server
su zimbra zmprov mcf zimbraMtaRelayHost mail.smtp2go.com zmcontrol restart
Tạo file chứa username và passwords của smtp2go cho zimbra (username và passwords các bạn đã thao tác ở bước trên)
echo mail.smtp2go.com username_smtp2go:password_smtp2go > /opt/zimbra/conf/relay_password postmap /opt/zimbra/conf/relay_password
Ví dụ cụ thể:
Chẳng hạn Rán tạo SMTP user ở trang SMTP2GO là ranart.design và mật khẩu là Lamdong49** thì các bạn gõ: echo mail.smtp2go.com ranart.design:Lamdong49** > /opt/zimbra/conf/relay_password
Dùng lệnh sau để kiểm tra lại một lần nữa!
postmap -q mail.smtp2go.com /opt/zimbra/conf/relay_password

Tiếp đến các bạn sử dụng những lệnh sau để cấu hình Zimbra sử dụng username & password này
zmprov mcf zimbraMtaSmtpSaslPasswordMaps lmdb:/opt/zimbra/conf/relay_password #giá trị mặc định là noplaintext,noanonymous zmprov mcf zimbraMtaSmtpSaslAuthEnable yes #giá trị mặc định là no zmprov mcf zimbraMtaSmtpCnameOverridesServername no #giá trị mặc định là no zmprov mcf zimbraMtaSmtpTlsSecurityLevel may #giá trị mặc định là may zmprov mcf zimbraMtaSmtpSaslSecurityOptions noanonymous #giá trị mặc định là noplaintext,noanonymous

Thiết lập relayhost trên port 2525 của SMTP2GO và tiến hành reload lại mta
zmprov mcf zimbraMtaRelayHost mail.smtp2go.com zmprov ms `zmhostname` zimbraMtaRelayHost mail.smtp2go.com:2525 zmmtactl reload

Sau khi mọi thứ đã hoàn tất, các bạn truy cập vào trang mail của mình và thử gửi mail ra gmail hoặc sử dụng https://mail-tester.com để kiểm thử mail


Tổng kết
Như vậy Rán đã hướng dẫn các bạn cách để cấu hình mail relay trên Zimbra thành công, các bạn có thể thao tác và thực hiện trên chính VPS của mình.
Trong quá trình thao tác, nếu phát sinh lỗi, các bạn vui lòng để lại bình luận tại đây hoặc điền thông tin vào mục Liên hệ, Rán sẽ chủ động hỗ trợ các bạn trong thời gian sớm nhất
Chúc các bạn thành công!!
[bs-quote quote=”Liên hệ hợp tác, cộng tác qua mail: [email protected] hoặc điền thông tin hỗ trợ vào mục Liên hệ” style=”default” align=”left” color=”#ff91a4″ author_name=”Rán” author_job=”StudioRanArt” author_avatar=”https://ranart.org/wp-content/uploads/2022/04/ranart.png” author_link=””][/bs-quote]