OSSEC邮件通知发送邮件失败

OSSEC email notification failed to send an email

我在尝试获取 ossec 功能时遇到错误:电子邮件通知。我在这个案例中使用了我的 Gmail 帐户。我试过这个tutorial, 但我无法从中收到任何电子邮件。我得到了带有 warn Mail not accepted by server 的错误日志。它位于 /var/ossec/logs/ossec.log 您可以看到下面的日志。

2017/10/06 20:05:18 os_sendmail(1764): WARN: Mail from not accepted by server
2017/10/06 20:05:18 ossec-maild(1223): ERROR: Error Sending email to 74.125.200$
2017/10/06 20:05:58 ossec-syscheckd: INFO: Starting syscheck scan (forwarding d$
2017/10/06 20:05:58 ossec-syscheckd: INFO: Starting syscheck database (pre-scan$
2017/10/06 20:05:58 ossec-syscheckd: INFO: Initializing real time file monitori$

这是我在 ossec.conf 中的电子邮件配置,位于 /var/ossec/etc/ossec.conf

 <global>
    <email_notification>yes</email_notification>
    <email_to>myrealemailaccount@gmail.com</email_to>
    <smtp_server>smtp.gmail.com.</smtp_server>
    <email_from>ossecm@gantz-X450CC</email_from>
    <email_maxperhour>20</email_maxperhour>
    <email_from>myrealemailaccount@gmail.com</email_from>
  </global>

我已经把我的 <smtp_server> 填到 smtp.gmail.com 了。什么都没有改变。它仍然在我的 ossec.log

收到错误消息

我该如何解决这个问题?我在 Ubuntu Server: 16.04

上安装此应用程序

我终于找到了解决办法。对于我的情况,我使用 Postfix 将我的帐户 gmail 连接到我的本地主机。如果你有自己专用的电子邮件服务器,比如在你的服务器中,那就太好了,而不是使用 gmail。

  1. 确保您已更新 linux。

    apt-get update
    
  2. 通过终端安装 postfix,如果您无法安装 postfix,请尝试在 /etc/sources.list 中更改您的存储库位置,然后使用 apt-get update 更新您的 linux,直到你可以 运行 下面的命令

    sudo apt-get install postfix
    

    sudo apt-get install mailutils
    

    这将安装 Postfix 以及 few other programs needed for .之后你会得到选项,选择 Internet Site

  3. 配置后缀

    /etc/postfix/main.cf 搜索 main.cf,使用 nano 编辑文件。在文件末尾添加此语法。

    relayhost = [smtp.gmail.com]:587
    smtp_sasl_auth_enable = yes
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
    smtp_sasl_security_options = noanonymous
    smtp_tls_CAfile = /etc/postfix/cacert.pem
    smtp_use_tls = yes
    

    /etc/postfix/sasl_passwd 处编辑 sasl_passwd,编辑文件并将下行添加到 sasl_passwd 文件:

    [smtp.gmail.com]:587    your_email_here:your_password here
    

    你应该把你想作为ossec电子邮件通知发件人的电子邮件放在那个`sasl_pawd上。不是作为接收者。

  4. 编辑您的 /var/ossec/etc/ossec.conf,并将您的 SMTP 更改为游览本地 ip,例如 127.0.0.1localhost

      <global>
       <email_notification>yes</email_notification>
       <email_to>your email that want to be send to</email_to>
       <smtp_server>localhost</smtp_server>
       <email_from>127.0.0.1</email_from> #if 127.0.0.1 didnt work ,try same email address which you put in your sasl passwd 
       <email_maxperhour>100</email_maxperhour>
      </global>
    

2018 年 5 月 22 日更新

更多配置请阅读this tutorial and this