
Cài email server trên VPS hosting giúp doanh nghiệp kiểm soát hoàn toàn hệ thống email, đảm bảo bảo mật và khả năng mở rộng. Bài viết này hướng dẫn chi tiết các bước cài đặt một email server hoàn chỉnh trên VPS Linux, từ lựa chọn phần mềm đến cấu hình DNS và kiểm tra hoạt động.
1. Chuẩn bị VPS và tên miền
Trước khi bắt đầu cài email server, bạn cần có một VPS chạy hệ điều hành phổ biến như Ubuntu 22.04 hoặc CentOS 7/8. Yêu cầu tối thiểu: CPU 2 lõi, RAM 4GB, SSD 50GB và một địa chỉ IP tĩnh. Ngoài ra, bạn phải sở hữu một tên miền riêng (ví dụ: yourcompany.com) và có quyền chỉnh sửa bản ghi DNS. Các bước chuẩn bị chi tiết bao gồm:
- Đăng nhập VPS qua SSH với quyền root hoặc sudo.
- Cập nhật hệ thống:
apt update && apt upgrade -y(Ubuntu) hoặcyum update -y(CentOS). - Cài đặt các gói cần thiết:
apt install wget curl git -y. - Đảm bảo hostname của VPS trùng với tên miền:
hostnamectl set-hostname mail.yourcompany.com.
Kiểm tra kết nối Internet và IP: curl -4 icanhazip.com để biết địa chỉ IP công khai của VPS. Việc này rất quan trọng khi cấu hình bản ghi A và PTR (rDNS) sau này.

2. Lựa chọn phần mềm email server phù hợp
Có nhiều giải pháp email server mã nguồn mở phổ biến dành cho VPS, mỗi giải pháp có ưu nhược điểm riêng. Dưới đây là bảng so sánh ba phần mềm được dùng nhiều nhất:
| Phần mềm | Giao thức hỗ trợ | Quản lý web | Khó cài đặt | Phù hợp |
|---|---|---|---|---|
| Postfix + Dovecot | SMTP, IMAP, POP3 | Cần thêm plugin (Roundcube) | Trung bình | Người có kinh nghiệm Linux |
| iRedMail | SMTP, IMAP, POP3, CalDAV | Roundcube, SOGo | Thấp (script tự động) | Người mới bắt đầu |
| Mailcow | SMTP, IMAP, POP3, CalDAV | SOGo, admin panel riêng | Thấp (docker) | Người dùng Docker, muốn tối giản |
Postfix + Dovecot là tổ hợp cổ điển, ổn định và tài liệu hỗ trợ nhiều. iRedMail cung cấp script tự động, cài đặt chỉ vài phút. Mailcow chạy trong container Docker, dễ backup và triển khai. Nếu bạn là người mới, nên chọn iRedMail hoặc Mailcow để tiết kiệm thời gian.
3. Cài đặt Postfix và Dovecot (thủ công)
Phần này hướng dẫn cài thủ công Postfix + Dovecot trên Ubuntu 22.04. Các lệnh chạy với quyền root.
Bước 1: Cài đặt Postfix
Chạy lệnh: apt install postfix -y. Khi xuất hiện hộp thoại cấu hình, chọn 'Internet Site' và nhập tên miền chính (ví dụ: yourcompany.com). Sau đó chỉnh sửa file /etc/postfix/main.cf và thêm dòng: myhostname = mail.yourcompany.com và mydomain = yourcompany.com.
Bước 2: Cài đặt Dovecot
Chạy lệnh: apt install dovecot-imapd dovecot-pop3d -y. Cấu hình file /etc/dovecot/conf.d/10-mail.conf với mailbox location là mbox:~/mail:INBOX=/var/mail/%u. Đảm bảo Dovecot lắng nghe trên các port 143 (IMAP) và 110 (POP3). Khởi động dịch vụ: systemctl start dovecot.
Bước 3: Cấu hình SSL/TLS
Tạo chứng chỉ tự ký hoặc dùng Let's Encrypt: certbot certonly --standalone -d mail.yourcompany.com. Sau đó cập nhật file cấu hình Postfix để dùng certificate và private key.
Sau khi cài đặt, kiểm tra bằng lệnh telnet localhost 25 (SMTP) và telnet localhost 143 (IMAP). Nếu kết nối thành công, server đã chạy.
4. Cấu hình DNS bắt buộc cho email server
Để email đến và đi hoạt động bình thường, bạn cần thêm các bản ghi DNS sau trên trang quản lý tên miền:
- Bản ghi A: Trỏ
mail.yourcompany.comvề IP của VPS. Ví dụ:mail A 203.0.113.10. - Bản ghi MX: Trỏ domain chính về mail server. Ví dụ:
@ MX 10 mail.yourcompany.com. - Bản ghi SPF: Cho phép server gửi email. Ví dụ:
@ TXT "v=spf1 mx a:mail.yourcompany.com ~all". - Bản ghi DKIM: Ký email chống giả mạo. Nếu dùng iRedMail, DKIM được tự động tạo. Bạn cần lấy public key và thêm bản ghi TXT dạng:
default._domainkey TXT "v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb4...AQAB". - Bản ghi DMARC: Chính sách xử lý email không hợp lệ. Ví dụ:
_dmarc TXT "v=DMARC1; p=none; rua=mailto:[email protected]". - Bản ghi PTR (rDNS): Yêu cầu nhà cung cấp VPS đặt tên miền ngược cho IP tương ứng với
mail.yourcompany.com.
Sau khi thêm, kiểm tra bằng công cụ trực tuyến như kiểm tra DKIM hoặc sử dụng lệnh dig +short mx yourcompany.com.
5. Tạo tài khoản email và cấu hình webmail
Sau khi server chạy, bạn cần tạo tài khoản email cho người dùng. Với Postfix thuần, dùng lệnh: useradd -m user1 và đặt mật khẩu: passwd user1. Để quản lý dễ dàng, cài thêm giao diện web như Roundcube hoặc RainLoop. Cài Roundcube trên Ubuntu:
- Cài đặt web server (Apache hoặc Nginx) và PHP:
apt install apache2 php php-mysql php-mbstring -y. - Tải Roundcube từ trang chủ hoặc dùng lệnh:
cd /var/www/html && wget https://github.com/roundcube/roundcubemail/releases/download/1.6.9/roundcubemail-1.6.9-complete.tar.gz && tar xzf roundcubemail-1.6.9-complete.tar.gz. - Cấu hình file
config/config.inc.php, chỉnh sửa dòng$config['default_host'] = 'localhost';và$config['smtp_server'] = 'localhost';. - Thiết lập cơ sở dữ liệu MySQL (nếu có) và chạy script cài đặt qua web.
Người dùng có thể đăng nhập vào webmail qua http://mail.yourcompany.com/roundcube bằng tên tài khoản hệ thống. Nếu muốn dùng IMAP/SMTP với client ngoài (Outlook, Thunderbird), cung cấp thông số:
- IMAP: Server: mail.yourcompany.com, Port: 993 (SSL) hoặc 143 (STARTTLS).
- SMTP: Server: mail.yourcompany.com, Port: 465 (SSL) hoặc 587 (STARTTLS).
- POP3: Server: mail.yourcompany.com, Port: 995 (SSL) hoặc 110 (STARTTLS).
6. Kiểm tra và khắc phục sự cố thường gặp
Sau cài đặt, cần kiểm tra khả năng gửi/nhận email. Dùng lệnh echo "Test email" | sendmail [email protected] và kiểm tra hộp thư đến bằng Roundcube. Một số lỗi thường gặp:
- Email đi vào spam: Thiếu SPF/DKIM/DMARC hoặc IP mới chưa warm up. Tham khảo cách cải thiện uy tín người gửi.
- Không thể gửi email: Kiểm tra port SMTP có mở không (dùng
ufw allow 25). - Lỗi chứng chỉ: Dùng Let's Encrypt và đảm bảo certificate còn hạn.
Nếu DNS chưa kịp propagate, bạn có thể thử dùng telnet với IP trực tiếp.
7. Bảo mật email server
Một số bước bảo mật cần thực hiện ngay sau khi cài đặt:
- Cài fail2ban để chặn brute-force:
apt install fail2banvà cấu hình các filter cho Postfix, Dovecot. - Giới hạn quyền truy cập SMTP, IMAP bằng firewall:
ufw allow 25,143,993,587,465. - Kích hoạt SPF, DKIM, DMARC như mục 4 để chống giả mạo.
- Sao lưu cấu hình và mailbox định kỳ.
Bảo mật email luôn là vấn đề cốt lõi, đặc biệt với các tấn công phishing. Xem thêm cách phòng chống email phishing nâng cao.
8. Tối ưu hiệu suất và mở rộng
Khi lượng email tăng, cần tối ưu Postfix: tăng giới hạn số lượng kết nối đồng thời (default_process_limit = 200), bật smtpd_recipient_limit. Sử dụng Dovecot quota để giới hạn dung lượng hộp thư. Nếu cần gửi email volume lớn, bạn nên dùng SMTP riêng thay vì email server nội bộ. Đọc thêm về giải pháp SMTP riêng multi-IP.
Có thể cài email server trên VPS giá rẻ không?
Có, VPS giá rẻ (2GB RAM, 1 CPU) vẫn chạy được Postfix+Dovecot cho khoảng 50-100 tài khoản nhỏ. Tuy nhiên, cần đảm bảo băng thông và I/O ổn định.
iRedMail có tự động cấu hình DNS không?
iRedMail tạo sẵn các bản ghi DKIM và in ra giá trị, nhưng bạn phải tự thêm vào DNS. Nó không tự động cập nhật DNS.
Sau khi cài email server, có cần mở port 25 không?
Có, port 25 (SMTP) là bắt buộc để nhận email từ Internet. Một số VPS chặn port 25, cần yêu cầu nhà cung cấp mở.
Có thể dùng email server để gửi marketing không?
Không nên, vì IP của VPS thường có reputation thấp, dễ vào spam. Nên dùng SMTP chuyên dụng cho email marketing.
Làm sao để chuyển email từ server cũ sang VPS mới?
Dùng imapsync hoặc các công cụ migration. Xem hướng dẫn migration an toàn.
Cài email server trên VPS có khó không?
Đối với người quen Linux, 1-2 ngày là hoàn thành. Người mới nên dùng iRedMail hoặc Mailcow để dễ dàng hơn.
Bài viết liên quan
- Email server ở đâu đảm bảo chất lượng và giá cả phải chăng cho doanh nghiệp
- Email hosting và email server khác nhau thế nào, nên chọn gì
- Các giao thức của mail server
- Mail server là gì và quy trình đăng ký ra sao