SSMTP - 可以通过 CLI 发送电子邮件 - 但程序无法发送通知

SSMTP - 可以通过 CLI 发送电子邮件 - 但程序无法发送通知

今天我设置了一个新的 XYMon 监视器虚拟机。旧的使用PostFix,但我设置了SSMTP。

我可以通过 CLI 给自己发电子邮件像这样。

echo "Hello, World" | mail -s "My email check" [email protected]

但是我似乎无法让 XYMon 通过电子邮件通知我

我做了一些测试,我怀疑这是与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)" [email protected]'

这有一些问题,首先我也找不到 /var/mail/root ,[电子邮件受保护]是我进行身份验证并配置 SSMTP 的用户名,但不是我实际希望将此通知发送到的电子邮件地址。

我的 SSMTP 配置:

mailhub=smtp.comcast.net:587
UseSTARTTLS=YES
UseTLS=YES
FromLineOverride=YES
hostname=businessdomain.com
[email protected]
AuthPass=PASSWORD

我在 XYMon 中的提醒:

HOST=testsite.com
MAIL [email protected] 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

答案1

您遇到的问题在于 XYmon 如何确定要使用的邮件程序。它可以使用MAIL设置,也可以使用$MAIL变量。

现在的默认$MAIL设置root/var/mail/root,所以它会尝试执行就好像这是一个命令。

您可以通过取消设置环境变量来解决此问题

unset MAIL

这将确保 XYmon 仅使用其配置并且不会被环境覆盖。

相关内容