Centos 5.xx Nagios sSMTP 邮件无法从 nagios 服务器发送,但从控制台发送效果很好

Centos 5.xx Nagios sSMTP 邮件无法从 nagios 服务器发送,但从控制台发送效果很好

我花了 3 个小时研究如何让 nagios 与电子邮件通知一起工作,我需要发送电子邮件,而唯一可访问的 smtp 服务器是公司的服务器。

我设法使用以下命令从控制台完成此操作:

mail [email protected]

为了达到目的我设置了 ssmtp.conf,如下所示:

[email protected]
mailhub=smtp.company.com:587
[email protected]
AuthPass=mypassword
FromLineOverride=YES
useSTARTTLS=YES
rewriteDomain=company.pl
hostname=nagios
UseTLS=YES

我还编辑了文件 /etc/ssmtp/revaliases 如下:

root:[email protected]:smtp.company.com:587
nagios:[email protected]:smtp.company.com:587
nagiosadmin:[email protected]:smtp.company.com:587

我还编辑了 /etc/ssmtp/* 的文件权限,如下所示:

-rwxrwxrwx 1 root nagios  371 lis 22 15:27 /etc/ssmtp/revaliases
-rwxrwxrwx 1 root nagios 1569 lis 22 17:36 /etc/ssmtp/ssmtp.conf

并且我分配到了我认为合适的组:

cat /etc/group |grep nagios
mail:x:12:mail,postfix,nagios
mailnull:x:47:nagios
nagios:x:2106:nagios
nagcmd:x:2107:nagios

当我手动发送邮件时,我会在我的私人邮箱中收到它,但是当我从 nagios 发送邮件时,邮件日志显示:

Nov 22 17:47:03 certa-vm2 sSMTP[9099]: MAIL FROM:<[email protected]> 
Nov 22 17:47:03 certa-vm2 sSMTP[9099]: 550 You are not allowed to send mail from this address

它说[电子邮件保护]我不被允许发送声称是[电子邮件保护],它应该是[电子邮件保护],我做错了什么?我已经没招了……

亲切的问候 Adam xxxx

答案1

您需要修改 nagios 通知命令以传递 mail/ssmtp 期望设置“发件人”地址的任何 CLI 参数。

如何执行此操作的具体细节因 MTA 而异,但我相信 ssmtp 实现了与 sendmail 兼容的接口,因此您应该能够将其添加到通知命令的末尾:

-- -f [email protected]

仔细检查“mail”的手册页以确认“--”允许您将 sendmail 选项传递给 MTA,然后检查“sendmail”的手册页以确认“-f”将设置“发件人”地址。

相关内容