【问题标题】:How can I monitor outgoing email from Unix and Sendmail?如何监控来自 Unix 和 Sendmail 的外发电子邮件?
【发布时间】:2009-07-13 00:42:01
【问题描述】:

我正在运行一个 FreeBSD 服务器,我收到了一条警告,说我的服务器已经发送了垃圾邮件。我没有将它设置为开放中继,并且我已经自定义了 sendmail 配置。我想知道谁在发送什么电子邮件以及他们的用户名、电子邮件主题行以及他们发送了多少邮件的摘要。我想在日志上运行类似于处理 Apache 服务器日志时的报告。

我有什么选择?

【问题讨论】:

  • 你检查过 /var/log/maillog 吗?

标签: unix email sendmail freebsd


【解决方案1】:

一个想法是将 sendmail 别名为自定义脚本,它只是在以通常方式调用 sendmail 之前将 sendmail 参数放在日志末尾。

【讨论】:

    【解决方案2】:

    您还可以通过执行以下命令来监控对writeread 函数的所有系统调用:

    ps auxw | grep sendmail | awk '{print"-p " $2}' | xargs strace -s 256 -f 2>&1 | grep -E $'@|(([0-9]+\.){3}[0-9]+)' | tee -a "/var/log/sendmail-logs.log"
    

    这将使您可以直接访问信息,我认为您无法深入。

    【讨论】:

      【解决方案3】:

      你能提供一些示例日志吗?我认为最好的办法是使用 grep 或 cut 来查看它们,以获取也发送的源/目标。此外,一旦您拥有正确的正则表达式,您就可以编写一个 Perl 脚本来自动化它。这将是最好的选择。

      【讨论】:

        【解决方案4】:

        如果 FreeBSD 有默认配置,您只有一种方式来处理输出邮件,请在 /etc/mail 中检查通过您的 sendmail 系统发送的内容。

        所有输出邮件必须由/var/log/maillog记录

        【讨论】:

          猜你喜欢
          • 2016-02-21
          • 1970-01-01
          • 2010-12-10
          • 2017-01-20
          • 1970-01-01
          • 2018-12-12
          • 2014-08-03
          • 2019-01-22
          • 1970-01-01
          相关资源
          最近更新 更多