我有一个似乎正在发送垃圾邮件的 Courier MTA。对于发送到另一个 MTA 的每封邮件,我想抓取 courier 的 mail.log 来识别:
- 发件人地址
- Courier 从哪里收到电子邮件
以下是 Courier 的 mail.log 条目,其中包含来自内部运行 sendmail 的邮箱的(非垃圾邮件)电子邮件。Sendmail 将电子邮件转发给 Courier MTA,然后 Courier MTA 将其发送到 gmail 的一个 MTA。
Mar 4 08:49:01 triplite courierfilter: zdkimfilter[24066]:id=00000000003E06E2.0000000054F7296D.00005E01: signing for production with domain some.where, selector somewhere-dkim
Mar 4 08:49:01 triplite courierfilter: zdkimfilter[24066]:id=00000000003E06E2.0000000054F7296D.00005E01: response: 250 Ok.
Mar 4 08:49:01 triplite courierd: newmsg,id=00000000003E06E2.0000000054F7296D.00005E01, auth=production: dns; alum.internal.some.where ([::ffff:10.1.0.52])
Mar 4 08:49:01 triplite courierd: started,id=00000000003E06E2.0000000054F7296D.00005E01,from=<[email protected]>,module=esmtp,host=gmail.com,addr=<[email protected]>
Mar 4 08:49:01 triplite courierd: Waiting. shutdown time=none, wakeup time=Wed Mar 4 08:49:03 2015, queuedelivering=72, inprogress=1
Mar 4 08:49:03 triplite courieresmtp: id=00000000003E06E2.0000000054F7296D.00005E01,from=<[email protected]>,addr=<[email protected]>: 250 2.0.0 OK 1425484143 c10si5455351pds.183 - gsmtp
Mar 4 08:49:03 triplite courieresmtp: id=00000000003E06E2.0000000054F7296D.00005E01,from=<[email protected]>,addr=<[email protected]>,size=1251,success: delivered: gmail-smtp-in.l.google.com [74.125.28.27]
Mar 4 08:49:03 triplite courieresmtp: id=00000000003E06E2.0000000054F7296D.00005E01,from=<[email protected]>,addr=<[email protected]>,size=1251,status: success
Mar 4 08:49:03 triplite courierd: completed,id=00000000003E06E2.0000000054F7296D.00005E01
似乎“newmsg”行会告诉我一封电子邮件来自哪里。但我不确定要键入哪些日志条目以查看消息已发送到另一个 MTA。“成功:交付”是正确的吗?是否有任何其他发送电子邮件的方式显示在日志中?
是的,“newmsg”告诉了发起中继的 dns 标识。它包含一个“auth=”条目,以防提交被验证。“couriersmtp”(没有最后的“d”)是 SMTP 客户端,通常依次进行中继。理论上,UUCP 也可以转发邮件,这在当今是一种相当不寻常的情况。
您可能想查看 Courier-analog,它是一个简单的 Perl 脚本,通过分析日志生成 (html) 活动摘要。