Raspberry 4, gửi Email từ dòng lệnh

Sep 28 2020

Tôi đã tạo một crontab để sao lưu tự động cơ sở dữ liệu SQL và dữ liệu WWW.

Bây giờ tôi muốn có kết quả của crontab tự động gửi cho tôi qua email. Kết quả của crontab được tạo thành công

Tôi đã cài đặt hai gói

sudo apt-get install ssmtp
sudo apt-get install mailutils

và đã chỉnh sửa:

sudo nano /etc/ssmtp/ssmtp.conf

Và trong cài đặt Gmail, đã tạo xác minh 2 bước và thêm App-Pass

TLS_CA_FILE=/etc/ssl/certs/gmail.crt [email protected]
mailhub=smtp.gmail.com:587 rewriteDomain=gmail.com hostname=gmail.com
FromLineOverride=YES [email protected]
AuthPass=oawprowcvxuwlsws UseTLS=Yes UseSTARTTLS=YES

đã thêm người dùng vào

sudo nano /etc/ssmtp/revaliases


root:[email protected]:smtp.gmail.com:587
www-data:[email protected]:smtp.gmail.com:587
pi:[email protected]:smtp.gmail.com:587

Đã tạo chứng chỉ

sudo openssl req -new -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out /etc/ssl/certs/gmail.crt -keyout /etc/ssl/certs/gmail.key

kiểm tra ssmtp với

ssmtp -v [email protected]

kết quả là:

[<-] 220 smtp.gmail.com ESMTP r8sm2599022edy.87 - gsmtp 
[->] EHLO gmail.com 
[<-] 250 SMTPUTF8 
[->] STARTTLS 
[<-] 220 2.0.0 Ready to start TLS 
[->] EHLO gmail.com 
[<-] ssmtp: (gmail.com)

Bây giờ hãy thử gửi một Email từ dòng lệnh

echo "Hello world email body" | mail -s "Test Subject" [email protected]



mail: cannot send message: process exited with a non-zero status

Trong logfile /etc/log/mail.log của tôi

Sep 25 23:19:40 raspberrypi sSMTP[11592]: Unable to set
TLS_CA_FILE="/etc/ssl/certs/gmail.crt" Sep 25 23:19:40 raspberrypi
sSMTP[11592]: Creating SSL connection to host Sep 25 23:19:41
raspberrypi sSMTP[11592]: SSL connection using
ECDHE_RSA_AES_256_GCM_SHA384 Sep 25 23:19:41 raspberrypi sSMTP[11592]:
(gmail.com)

Còn thiếu hay sai?

Trả lời

1 Milliways Sep 28 2020 at 20:33

ssmtp không được dùng nữa trong Buster

Xem https://raspberrypi.stackexchange.com/a/100704/8697 để thay thế

LƯU Ý cấu hình là khác nhau.