Hướng dẫn cài đặt và cấu hình SSMTP trên Linux để gửi mail

Hướng dẫn chi tiết cách cài đặt (trên Ubuntu và CentOS 7) và cấu hình SSMTP trên Linux để gửi mail đơn giản nhất.

Hướng dẫn cấu hình và cài đặt SMTP trên Linux

SSMTP (secure Simple Mail Transfer Protocol) sẽ cho phép bạn định cấu hình gửi qua máy chủ của bên thứ 3. Nó chính là sự thay thế hoàn hảo cho sendmail để gửi thư trên Linux.

1. Hướng dẫn cài đặt SSMTP để gửi mail

* Trên Ubuntu

Lệnh Update repo:

apt-get update

Cài đặt SSMTP và các gói hỗ trợ:

apt-get -y install ssmtp mailutils

* Trên CentOS 7

Lệnh Update:

yum update

Cài đặt:

yum -y install ssmtp

2. Cấu hình SSMTP để gửi mail

File cấu hình SSMTP: /etc/ssmtp/ssmtp.conf

#

# Config file for sSMTP sendmail

#

# The person who gets all mail for userids < 1000

# Make this empty to disable rewriting.

# root=postmaster

root=dangdohai1996@gmail.com




# The place where the mail goes. The actual machine name is required no

# MX records are consulted. Commonly mailhosts are named mail.domain.com

# mailhub=mail

mailhub=smtp.gmail.com:587




AuthUser=youremail@gmail.com

AuthPass=youremailpassword

UseTLS=YES

UseSTARTTLS=YES




# Where will the mail seem to come from?

#rewriteDomain=

rewriteDomain=gmail.com




# The full hostname

hostname=ssmtpServer




# Are users allowed to set their own From: address?

# YES - Allow the user to specify their own From: address

# NO - Use the system generated From: address

FromLineOverride=YES
Tại đây, sử dụng gmail nên mục mailhub và rewriteDomain để là gmail.
  • AuthUser=youremail@gmail.com : Email bạn sử dụng để gửi mail.
  • AuthPass=youremailpassword : Mật khẩu email.

Cho phép ứng dụng truy cập Gmail

Nếu bạn sử dụng gmail làm địa chỉ người gửi thì phải cho phép ứng dụng truy cập gmail của bạn.

Đăng nhập bằng gmail để thực hiện gửi mail đã khai báo bên trên trên trình duyệt.

Bật chế độ cho phép ứng dụng truy cập:

Tạo alias cho user local. Mở file sau:

vi /etc/ssmtp/revaliases

Thêm dòng:

root:youremail@gmail.com:smtp.gmail.com:587

3. Gửi mail

Sử dụng lệnh

ssmtp -v des.email@mail.com

Sau đó nhập nội dung mail, kết thúc bằng cách nhấn tổ hợp phím Ctrl + D.

* Kết hợp với lệnh echo

echo "Nội dung email" | ssmtp -v des.email@mail.com

Thêm Subject cho mail:

{

echo Subject: subject_email

echo Nội dung email

} | ssmtp des.email@mail.com

* Gửi nội dung từ file

Tạo file nội dung mail có dạng:

Subject: Subject email

Nội dung email

Gửi mail bằng lệnh:

ssmtp des_email@gmail.com < file

Lưu ý việc sử dụng SSMTP trong bash script với crontab, ta nên sử dụng đường dẫn dịch vụ SSMTP. Thường thì đường dẫn mặc định sẽ là /usr/sbin/ssmtp . Hoặc bạn có thể tìm bằng cách locate ssmtp và chọn đường dẫn thực thi đúng của dịch vụ SSMTP.

Trên là các bước hướng dẫn cài đặt và cấu hình SSMTP trên Linux để gửi mail. Chúc bạn thành công!