前言
Zabbix 軟體,要寄送 mail 把收集資訊內容,給管理員查看。SSMTP 是一個從本地計算機發送郵件到配置的郵件主機(mailhub)的過程。它不是 mail Server,它不能收信。
它的主要用途之一是自動發送 mail。
Install SSMTP
sudo apt install ssmtp mailutils -y
Set SSMTP
itachi@zabbix:~$ ls /etc/ssmtp/
ls: cannot open directory '/etc/ssmtp/': Permission denied
itachi@zabbix:~$ sudo -s # 換成 root
權限被限制
root@zabbix:~# ls -al /etc/ | grep ssmtp
drwxr-x--- 2 root mail 4096 Dec 11 10:16 ssmtp
root@zabbix:~# ls -l /etc/ssmtp/
total 8
-rw-r----- 1 root mail 200 Apr 14 2016 revaliases
-rw-r----- 1 root mail 577 Dec 11 10:16 ssmtp.conf
配置
#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=<user Account>@gmail.com # 接收系統郵件的 Email
# 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=smtp.gmail.com:587 # Google Mail 的 MTA 送信
# Where will the mail seem to come from?
#rewriteDomain=
# The full hostname
hostname=zabbix
# 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 # 是否讓使用者設定 Email 的 From 欄位
# Google Account & Password
AuthUser=<user Account>@gmail.com
AuthPass=<User Password>
AuthMethod = LOGIN
# 加密連線
UseSTARTTLS=YES
UseTLS=YES
Debug=YES
測試
echo "Hello worrld" | ssmtp <user Account>@gmail.com
root@zabbix:~# sudo echo "This is a test" | ssmtp <user Account>@gmail.com
ssmtp: Authorization failed (535 5.7.8 https://support.google.com/mail/?p=BadCredentials j14sm24297474pfj.93 - gsmtp)
解決
用 Google 應用程式專用的密碼來登入。 Google 登入和安全性
- 登入 Google
- 兩步驟驗證(需啟用才會有應用程式密碼)
- 應用程式密碼
- 點選『選取應用程式』
- 點選『自訂名稱』
- 輸入名稱
- 點選『產生』
- 出現『系統產生的應用程式密碼』視窗
- 您裝置專用的應用程式密碼(黃色背景部分密碼複製)
- 貼上至
AuthPass=<User Password>
測試
root@zabbix:~# sudo echo "Good" | ssmtp <user Account>@gmail.com
請至 Mail 查看。
寄信方式
echo "Hello." | mail -s "Test" <user Account>@gmail.com
參考資料
留言
張貼留言