Hướng dẫn cấu hình OCI SMTP với Postfix trên Linux: Thiết lập an toàn và khắc phục sự cố

06 tháng 4, 2026·6 phút đọc

Bài viết này hướng dẫn cách cấu hình máy chủ Linux sử dụng Postfix để gửi email thông qua dịch vụ OCI Email Delivery của Oracle Cloud, bao gồm thiết lập bảo mật, kiểm tra và xử lý lỗi nâng cao.

Hướng dẫn cấu hình OCI SMTP với Postfix trên Linux: Thiết lập an toàn và khắc phục sự cố

Gửi email là một thành phần quan trọng trong môi trường đám mây, phục vụ cho các cảnh báo, thông báo và quy trình ứng dụng. Trong cơ sở hạ tầng của Oracle Cloud Infrastructure (OCI), dịch vụ Email Delivery cung cấp giải pháp đáng tin cậy dựa trên SMTP.

Hướng dẫn này sẽ minh họa cách cấu hình một máy chủ Linux để gửi email sử dụng OCI SMTP với một thiết lập an toàn, sẵn sàng cho môi trường sản xuất (production-ready).

Kiến trúc hệ thống

Luồng dữ liệu email trong thiết lập này sẽ đi qua các tầng sau:

  • Máy chủ Linux
  • Postfix (SMTP client)
  • OCI Email Delivery (SMTP)
  • Email người nhận

Điều kiện tiên quyết

Thiết lập trên OCI

Trước hết, bạn cần truy cập vào console của Oracle Cloud:

👉 OCI Console → Email Delivery

Tại đây, bạn cần thực hiện các bước sau:

✔ Tạo Approved Sender (Người gửi được phê duyệt)

Tạo Approved Sender trong OCITạo Approved Sender trong OCI

Tạo thông tin xác thực SMTP

Sau khi thiết lập người gửi, bạn cần tạo thông tin đăng nhập SMTP. Hãy sao chép các thông tin sau một cách cẩn thận:

  • SMTP Username
  • SMTP Password

Thông tin xác thực SMTPThông tin xác thực SMTP

Yêu cầu về mạng

Từ máy chủ Linux của bạn, cần đảm bảo cho phép truy cập outgoing ra internet qua cổng:

  • Cổng 587 (Khuyên dùng) hoặc 25.

Bạn có thể kiểm tra kết nối bằng lệnh telnet:

telnet smtp.email.ap-mumbai-1.oci.oraclecloud.com 587

Cài đặt các gói phần mềm cần thiết

Sử dụng trình quản lý gói (ví dụ yum trên CentOS/RHEL) để cài đặt Postfix và các công cụ hỗ trợ:

yum install postfix s-nail cyrus-sasl-plain -y

Sau khi cài đặt, hãy kiểm tra xem lệnh mail đã sẵn sàng chưa:

which mail

Kết quả mong đợi: /usr/bin/mail

Cấu hình Postfix

Bạn cần chỉnh sửa tệp cấu hình chính của Postfix:

vi /etc/postfix/main.cf

Thêm các cấu hình sau vào cuối tệp:

Cấu hình SMTP Relay của OCI (sử dụng cổng 587)

relayhost = [smtp.email.ap-mumbai-1.oci.oraclecloud.com]:587

Xác thực SMTP

smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous

Cấu hình TLS (Mã hóa)

smtp_use_tls = yes
smtp_tls_security_level = encrypt

Tùy chọn (Tránh vấn đề về kích thước)

mailbox_size_limit = 0
message_size_limit = 52428800

Cấu hình thông tin đăng nhập SMTP

Tạo tệp chứa mật khẩu:

vi /etc/postfix/sasl_passwd

Thêm dòng sau (chính xác):

[smtp.email.ap-mumbai-1.oci.oraclecloud.com]:587 SMTP_USERNAME:SMTP_PASSWORD

🔴 Lưu ý quan trọng:

✔ Chỉ nằm trên một dòng duy nhất. ✔ Bao gồm cả dấu ngoặc vuông [ ]. ✔ Bao gồm :587. ✔ Không có khoảng trắng thừa.

Bảo mật và áp dụng thông tin đăng nhập

Thiết lập quyền hạn cho tệp mật khẩu để bảo mật và tạo bản đồ băm (hash map):

chmod 600 /etc/postfix/sasl_passwd
postmap /etc/postfix/sasl_passwd

Kiểm tra ánh xạ

Để đảm bảo cấu hình hoạt động đúng, hãy chạy lệnh kiểm tra:

postmap -q "[smtp.email.ap-mumbai-1.oci.oraclecloud.com]:587" hash:/etc/postfix/sasl_passwd

Kết quả mong đợi: SMTP_USERNAME:SMTP_PASSWORD

Kiểm tra ánh xạ xác thựcKiểm tra ánh xạ xác thực

Cấu hình ánh xạ người gửi được phê duyệt

OCI chỉ chấp nhận email từ người gửi đã được phê duyệt. Bạn cần buộc tất cả các email gửi đi sử dụng địa chỉ người dùng này.

Ví dụ: Mapping root@hostname thành [email protected].

Sử dụng lệnh sau để cấu hình:

postconf -e "sender_canonical_maps = hash:/etc/postfix/sender_canonical"

Sau đó, tạo tệp ánh xạ:

vi /etc/postfix/sender_canonical

Thêm nội dung (ví dụ chuyển tất cả email từ root thành email đã phê duyệt):

root [email protected]

Áp dụng thay đổi:

postmap /etc/postfix/sender_canonical

Khởi động và kích hoạt Postfix

systemctl enable postfix
systemctl restart postfix

Kiểm tra gửi Email

Để thử nghiệm, hãy gửi một email thử nghiệm:

echo "OCI SMTP TEST FROM LINUX" | mail -s "TEST MAIL" [email protected]

Xem nhật ký hệ thống (Logs)

Kiểm tra log để xem trạng thái gửi email:

tail -f /var/log/maillog

Kết quả mong đợi: status = 200 (ok)

Xem log xác thực gửi emailXem log xác thực gửi email

Ví dụ tự động hóa

Bạn có thể tích hợp vào các script cảnh báo đơn giản:

echo "Nội dung cảnh báo" | mail -s "Cảnh báo hệ thống" [email protected]

Khắc phục sự cố

Vấn đề 1: Connection Timeout (Quá hạn kết nối)

Nguyên nhân: Cổng 25 thường bị chặn mặc định trên OCI hoặc các nhà cung cấp đám mây khác.

Giải pháp: Sử dụng cổng 587 hoặc 465 thay vì 25.

Vấn đề 2: Authentication Failed (Xác thực thất bại)

Nguyên nhân: Sai thông tin đăng nhập SMTP (Username hoặc Password).

Giải pháp: Kiểm tra lại chính xác username và password trong tệp /etc/postfix/sasl_passwd.

Kiểm tra log chi tiết (Nâng cao)

Hãy luôn theo dõi log để tìm ra nguyên nhân gốc rễ:

sudo tail -f /var/log/maillog

Các trạng thái thường gặp:

  • status=sent: Gửi thành công.
  • status=bounced: Email bị trả lại (thường do địa chỉ người nhận hoặc cấu hình người gửi).
  • authentication failed: Sai thông tin đăng nhập.

Thực hành bảo mật tốt nhất

✔ Sử dụng mã hóa TLS cho mọi kết nối. ✔ Hạn chế quyền truy cập vào tệp chứa thông tin đăng nhập (chmod 600). ✔ Thường xuyên xoay vòng (rotate) thông tin xác thực SMTP. ✔ Tránh mã hóa cứng (hardcode) thông tin đăng nhập trong các tập lệnh.

Ứng dụng thực tế

Bạn có thể sử dụng thiết lập OCI SMTP này để gửi:

  • Các cảnh báo giám sát hệ thống (Monitoring alerts).
  • Thông báo từ ứng dụng (Application notifications).
  • Thông báo hết hạn mật khẩu cho người dùng Linux.

Kết luận

OCI Email Delivery cung cấp một cách thức an toàn và có khả năng mở rộng để gửi email sử dụng SMTP đã xác thực với TLS. Khi kết hợp với Postfix – một MTA (Mail Transfer Agent) đáng tin cậy và nhẹ nhàng – nó trở thành một giải pháp đơn giản nhưng mạnh mẽ, sẵn sàng cho môi trường sản xuất.

Thiết lập này cũng làm nổi bật tính linh hoạt đa đám mây (cross-cloud); các ứng dụng chạy trên các nền tảng khác như AWS có thể sử dụng mượt mà OCI để gửi email, cho phép kiến trúc lai (hybrid architecture) tiết kiệm chi phí và hiệu quả.

Tóm lại, Postfix kết hợp với OCI SMTP là một cách tiếp cận thực tế, an toàn và hiệu quả cho các nhu cầu gửi email trong thế giới thực.

Bài viết được tổng hợp và biên soạn bằng AI từ các nguồn tin tức công nghệ. Nội dung mang tính tham khảo. Xem bài gốc ↗