【问题标题】:Nagios email alert configurationNagios 电子邮件警报配置
【发布时间】:2018-03-25 21:04:15
【问题描述】:

我正在配置 Nagios 以通过配置到 SMTP 中继服务器的 postfix 发送电子邮件警报,我已将 commands.cfg 和 contacts.cfg 配置为包含所需的设置。但是,每当电子邮件发出时,它都不会获取我在 contacts.cfg 中的配置,并且始终采用默认电子邮件 ID:

Mar 26 02:20:05 dash postfix/pickup[24908]: 395DBBE0DC3: uid=1002 from=<oem>
Mar 26 02:20:05 dash postfix/cleanup[25635]: 395DBBE0DC3: message-id=<20180325205005.395DBBE0DC3@dash.in>
Mar 26 02:20:05 dash postfix/qmgr[17430]: 395DBBE0DC3: from=<oem@dash.in>, size=595, nrcpt=1 (queue active)
Mar 26 02:20:10 dash postfix/smtp[25637]: 395DBBE0DC3: to=<oem@dash.in>, orig_to=<oem>, relay=relay.smtp.dash.in:587, delay=5.6, delays=0.01/0.01/3.8/1.7, dsn=2.0.0, status=sent (250 Ok 010101625eecf59b-243d9f21-ae1c-4272-9213-55e11d7d5e25-000000)
Mar 26 02:20:11 dash postfix/qmgr[17430]: 395DBBE0DC3: removed

我没有在 postfix 或 nagios 的任何地方配置 oem 用户,但是我的系统上有一个 oem 用户。我缺少一些基本的感觉,如果有人有任何想法,请告诉我。 干杯!

【问题讨论】:

  • nagios 是否以 OEM 用户身份运行? Postfix是在本地接收来自unix系统的邮件,所以邮件中的第一个进程是pickup进程。如果它通过 TCP 堆栈,第一个进程将是 smtp。
  • @Stephan 是的,你是对的,我发现这是来自本地的 unix 系统。有没有办法可以禁用 Nagios 上的系统电子邮件,因为我不需要这封电子邮件。
  • 这是一个我不确定的 nagios 问题。联系支持?

标签: email ubuntu-16.04 nagios postfix


【解决方案1】:

使用 grep 查找配置位置:

$ sudo grep -s -R "oem@dash.in" /etc/*
$ sudo grep -s -R "oem@dash.in" /usr/local/nagios/*

$ cat /usr/local/nagios/etc/nagios.cfg | grep @
admin_email=myaccount@gmail.com
admin_pager=myaccount@gmail.com

$ cat /usr/local/nagios/etc/objects/contacts.cfg | grep @
    email                   nagios@localhost ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ******
    email                   myaccount@gmail.com;

通过以下方式测试您的配置:

$ echo "Test Email message body" | mail -r account_accepted_by_relay@mydomainname.onmicrosoft.com -s "Email test subject" myaccount@gmail.com

在使用该测试命令之前,我已经安装了 mailutils:

$ sudo apt install mailutils

我使用的是 sendgrid,所以我的 ma​​in.cf 配置包括:

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = localhost.localdomain

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = $myhostname, localhost
relayhost = [smtp.sendgrid.net]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_tls_security_options = noanonymous

您可以查看here 以获得更详细的说明。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多