Hướng Dẫn Chi Tiết Cài Đặt Mail Server Với Postfix, Dovecot & Cyrus SASL Trên Linux

Bài viết này sẽ hướng dẫn bạn cách xây dựng một hệ thống Mail Server mạnh mẽ cho doanh nghiệp của bạn, sử dụng các công cụ mã nguồn mở hàng đầu như Postfix, Dovecot và Cyrus SASL trên nền tảng Linux.

.jpg)

Giới Thiệu Về Postfix, Dovecot & Cyrus SASL

Postfix là gì?

Postfix là một phần mềm MTA (Mail Transfer Agent) mã nguồn mở, được thiết kế để thay thế Sendmail. Postfix nổi bật với tốc độ, tính dễ quản lý và bảo mật cao.

Dovecot là gì?

Dovecot là một máy chủ IMAP và POP3 mã nguồn mở, an toàn và cấu hình đơn giản, được thiết kế cho các hệ thống có tải lớn. Dovecot được đánh giá cao nhờ khả năng bảo mật và hiệu suất vượt trội.

Cyrus SASL là gì?

Cyrus SASL (Simple Authentication Security Layer) là một thư viện cung cấp cơ chế xác thực giữa máy khách và máy chủ, hỗ trợ nhiều phương pháp mã hóa khác nhau. Cyrus SASL đảm bảo an toàn cho quá trình truyền tải email.

Hướng Dẫn Cài Đặt Mail Server Trên Linux (CentOS)

Trong hướng dẫn này, chúng ta sẽ sử dụng sentayho.com.vn làm ví dụ. Hãy thay thế sentayho.com.vn bằng tên miền thực tế của bạn trong quá trình thực hiện.

Đầu tiên, mở file cấu hình mạng **/etc/sysconfig/network** và thêm dòng sau (nếu chưa có):

HOSTNAME="divinerank.vn.vn"

Bạn cần đảm bảo rằng hệ thống đã được cấu hình với các gói Repository cho YUM CentOS.

Tiếp theo, cài đặt Postfix bằng lệnh sau:

sudo yum -y install postfix

Cài đặt thư viện Cyrus SASL bằng lệnh:

sudo yum -y install cyrus-sasl cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-md5 cyrus-sasl-plain

Tạo file SSL certificates bằng cách thực hiện tuần tự các lệnh sau:

mkdir /etc/postfix/ssl
cd /etc/postfix/ssl/
openssl genrsa -des3 -rand /etc/hosts -out sentayho.com.vn.key 1024
chmod 600 sentayho.com.vn.key
openssl req -new -key sentayho.com.vn.key -out sentayho.com.vn.pem
openssl x509 -req -days 365 -in sentayho.com.vn.pem -signkey sentayho.com.vn.key -out sentayho.com.vn.crt
openssl rsa -in sentayho.com.vn.key -out sentayho.com.vn.key
mv -f sentayho.com.vn.key sentayho.com.vn.key
openssl req -new -x509 -extensions v3_ca -keyout sentayho.com.vn.key -out sentayho.com.vn.key -days 365

Mở file **/etc/postfix/main.cf** và thêm dấu # vào trước các dòng sau để vô hiệu hóa chúng:

#inet_interfaces = localhost #line 116
#mydestination = $myhostname, localhost.$mydomain, localhost #-> line 164

.jpg)

Sau đó, thêm các dòng sau vào cuối file **/etc/postfix/main.cf**:

myhostname = sentayho.com.vn
domain = sentayho.com.vn
origin = $mydomain
home_mailbox = mail/
mynetworks = 127.0.0.0/8
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = cyrus
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom

Mở file **/etc/postfix/master.cf** và thêm các dòng sau ngay dưới dòng smtp inet n – n – – smtpd:

smtps inet n – n – – smtpd
-o smtpd_sasl_auth_enable=yes
-o smtpd_reject_unlisted_sender=yes
-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
-o broken_sasl_auth_clients=yes

Khởi động lại Postfix và Saslauthd:

sudo service postfix restart
sudo service saslauthd restart
sudo chkconfig -level 235 postfix on
sudo chkconfig -level 235 saslauthd on

Kiểm tra Postfix bằng lệnh sau:

telnet localhost 25

Ví dụ:

Trying ::1...Connected to sentayho.com.vn
Escape character is '^]'.
220 sentayho.com.vn ESMTP Postfix
ehlo localhost

Nếu bạn thấy hiển thị tương tự như trên, Postfix đã hoạt động tốt.

Cài đặt Dovecot bằng lệnh sau:

sudo yum -y install dovecot

Mở file **/etc/dovecot/dovecot.conf** và thêm các dòng sau vào cuối file:

protocols = imap pop3
mail_location = maildir:~/mail
pop3_uidl_format = %08Xu%08Xv

Khởi động lại Dovecot:

sudo service dovecot restart
sudo chkconfig -level 235 dovecot on

Kiểm tra Dovecot bằng lệnh sau:

telnet localhost 110

Ví dụ:

Trying ::1...Connected to sentayho.com.vn
Escape character is '^]'.
+OK Dovecot ready.

Nếu bạn thấy tương tự như ví dụ trên, Dovecot đã hoạt động tốt.

.jpg)

Kết Luận

Chúc mừng! Bạn đã hoàn thành việc cài đặt hệ thống Mail Server cho công ty của mình. Bây giờ bạn có thể sử dụng các chương trình email client để gửi và nhận email một cách an toàn và hiệu quả. Với hướng dẫn chi tiết này, bạn sẽ có một hệ thống email ổn định và bảo mật.