Mail-Command
SSMTP - 可以通過 CLI 發送電子郵件 - 但程序無法發送通知
今天我設置了一個新的 XYMon 監視器虛擬機。舊的使用 PostFix,但我設置了 SSMTP。
我可以像這樣從 CLI 給自己發送電子郵件。
echo "Hello, World" | mail -s "My email check" my@email.com
但我似乎無法讓 XYMon 通過 E-Mail 通知我。
我已經做了一些測試,我懷疑這與 SSMTP 相關,更多的是 XYMon,因為它的設置相當簡單。
/usr/lib/xymon/server/bin/xymond_alert --test testsite.com http
**這一行的結果:(**其中有很多,但這是重要的)
Mail alert with command '/var/mail/root "Xymon [12345] testsite.com:http CRITICAL (RED)" accountusername@businessdomain.com'
這有一些問題,首先我找不到 /var/mail/root ,另外,accountusername@businessdomain.com 是我進行身份驗證和配置 SSMTP 的使用者名,但不是我實際使用的電子郵件希望將此通知發送到。
我的 SSMTP 配置:
mailhub=smtp.comcast.net:587 UseSTARTTLS=YES UseTLS=YES FromLineOverride=YES hostname=businessdomain.com AuthUser=accountusername@businessdomain.com AuthPass=PASSWORD
我在 XYMon 的提醒:
HOST=testsite.com MAIL my@email.com REPEAT=1h COLOR=red DURATION>15 RECOVERED
更新
# For the xymond_alert module MAILC="mail" # Command used to send an e-mail with no subject MAIL="$MAILC -s" # Command used to send an e-mail with a subject root@monitor:/etc/xymon# echo $MAIL /var/mail/root
您遇到的問題是 XYmon 如何確定要使用的郵件程序。它可以使用
現在的預設
root
是/var/mail/root
,所以它會嘗試執行它,就好像它是一個命令一樣。您可以通過取消設置環境變數來解決此問題
unset MAIL
這將確保 XYmon 只使用其配置並且不會被環境覆蓋。