October 28, 2015

Một số kinh nghiệm khi thiết lập email server

Sau 1 thời gian  vật lộn với postfix + dovecot để tạo được email server cho chính bản thân mình, tôi cũng đã học được khá nhiều điều và bên dưới là một số kinh nghiệm mà tôi nghĩ là quan trọng nhất để xây dựng được email server cơ bản tốt, cơ bản tốt ở đây là có thể gửi, nhận email mà không bị gmail đánh dấu là spam chẳng hạn :)
Nếu bạn thấy bài viết này dài quá mà bạn khá lười thì có thể dùng Zoho Mail với tài khoản miễn phí được sử dụng 10 users.

Bước 1: cài đặt postfix + dovecot

Bạn có thể sử dụng link sau để cài đặt postfix+ dovecot, spamassagin bạn có thể bỏ qua để cài sau này cũng được.
Trong bước này cần chú ý FQDN, nếu host name của bạn là server1 với domain làabc.com thì nên thiết lập FQDN là server1.abc.com.
Ví dụ: hostname của tôi là bachvtuan với domain của tôi là dethoima.com nên FQND sẽ là bachvtuan.dethoima.com. Tôi thiết lập /etc/hosts sẽ như sau
128.199.202.90 chính là ip của host.
Bạn cũng có thể confirm bằng cách dùng lệnh hostname -f để hiển thị FQDN.
Xong bước này bạn có thể kiểm tra email server có hoat động không bằng cách dùng lệnh:
993 chính là cổng IMAP nhận email.

Bước 2: thiết lập reserver domain.

Thông thường khi trỏ domain về host thì chỉ mới 1 chiều đó là chiều từ domain tới ip nên khi tôi dùng lệnh ping thì sẽ như sau
Nhưng nếu bạn dùng lệnh host ( bạn thay bằng ip của bạn )
thì có thể xuất hiện thông báo
Đơn giản vì ptr record của bạn không phải là domain hợp lệ, bạn nên update ptr record thành tên domain của bạn, Tôi dùng digitalOcean nên sau khi đổi ptr record thì sẽ xuất hiện như thế này:
update prt record
và khi thực hiện câu lệnh trên sẽ ra kết quả như sau:
Xong bước này xem như xong reserver domain.

Bước 3: Kiểm tra mọi lỗi email + reserver domain:

Bạn vào link http://mxtoolbox.com/SuperTool.aspx#, đây là website có nhiều chức năng kiểm tra server khá hay, bạn nhập domain của bạn và chọn mục là test email server.
Nếu mọi chuyện ok thì sẽ xuất hiện như hình bên dưới.
email
mxtoolbox check email

Bước 4: Thiết lập email cho client software( tùy chọn nếu bạn không  dùng  )

Tới đây thì bạn có thể sử dụng email client để gửi email giữa các user trong domain của bạn, bạn cũng gửi được ra ngoài tới gmail chẳng hạn nhưng chắc chắn là sẽ vào danh mục spam :) , cái này tôi sẽ hướng dẫn pass trong các bước tiếp theo.
1 điều chú ý ở đây là nếu bạn dùng chứng chỉ https tự tạo thì thunderbird sẽ bắt và không cho phép sử dụng, bạn nên  exception 2 links đó là :
yourdomain:993 ( cổng IMAP, nhận email )
yourdomain:25 ( cổng SMTP, gửi email   )
Đối với outlook thì bạn không cần thực hiện bước này.

Bước 5: Thiết lập để email không dán nhãn spam khi gửi ra ngoài

Bạn gửi email từ domain của bạn tới gmail nếu chỉ sử dụng các bước trên thì 99% là sẽ không xuất hiện trên inbox của người tới vì bạn chưa làm một số đều cần thiết sau:

SPF Check

là viết tắt của từ Sender Policy Framework, bạn thêm txt record với giá trị sau:
label: @
Giá trị : “v=spf1 mx a  -all”
Record này sẽ xác thực thông qua 2 kênh mà mx record và a record.

Sign mỗi email gửi đi bằng DKIM:

Dkim( Domain key indentify mail ) là công cụ để xác thực email gửi đi thông dụng, bạn có thể xem link này để cài đặt OpenDKIM
Sau khi thực hiện xong các bước trên, bạn có thể kiểm tra kết quả bằng cách gửi email tới check-auth@verifier.port25.com
Nếu cấu hình đúng thì email trả về sẽ như sau :
Result of check auth

Bạn có thể dễ dàng thấy SPF check và DKIM check đã passed.
Giờ cơ hội gửi email tới gmail nằm trong inbox đã là 50/50, bạn nhớ gửi email test đừng có những từ dễ bị gmail nghi là spam ví dụ như “spam, won, congratulation,… “, nếu email của bạn vẫn nằm trong spam thì qua bước tiếp theo, còn không thì có thể dừng lại :)

Bước 6:  Sử dụng mandrillapp.com để làm cổng smpt 

Email của bạn nằm trong spam có thể có nhiều lý do khác mặc dù bạn đã ký DKIM hay xác thực SPF, bạn có thể xem thêm một số lý do ở đây.
Mandrill sẽ giúp bạn vượt qua điều đó, sơ lược nó sẽ là cổng smtp thay thế cổng gửi mail mặc định của chúng ta và cổng này hoạt động khá tốt để google hay microsoft, yahoo không đánh dấu email của chúng ta nằm diện spam,  Mandrilapp hiện tại không cho user từ Việt Nam( đi đâu cũng nghe dân Việt Nam ) nên bạn cần phải fake ip qua nước ngoài để đăng ký, tài khoản free cho phép gửi 12k email  mỗi tháng, nếu bạn có nhu cầu lớn hơn thì có thể mua thêm.
Khi sử dụng maindrillapp thì bạn có thể quan tâm cách thiết lập cho email client soft ởđây .
Kết: 
Hiện tại tôi cũng đang dùng mandrillapp để gửi và nhận email sử dụng IMAP của postfix, mọi chuyện cũng khá ổn, sẽ cập nhật nếu có cách nào tốt hơn và dễ dàng hơn 
nguồn: https://dethoima.info/mot-so-kinh-nghiem-khi-thiet-lap-email-server/

0 comments:

Post a Comment