监视Postfix外发邮件传递


11

我将GNU Mailman与Postfix一起使用来运行邮件列表,并希望监视外发邮件的传递,即:对于从列表发送的每个邮件,检查是否回答了250(确定)消息,如果没有, ,请报告给我。

现在,我正在做一个简单的事情:

# cat /var/log/syslog | grep "smtp.*to=.*" | grep -v 250

有没有一种清洁的方法来监视smtpd的输出?


1
当然,这一定是无用的cat吗?至少您可以做到grep "smtp.*to=.*" /var/log/syslog | grep -v 250
CVn 2014年

我个人认为,在大多数情况下,
讨价还价有点讨人喜欢

Answers:


8

没有办法以干净的方式监视已发送的邮件。您只能从后缀的邮件日志中grep详细信息。

这是一个例子:

log='logfile of postfix'
grep "status=sent" $log | \
egrep -ve 'postfix/(cleanup|pickup|master|qmgr|smtpd|local|pipe)'

并且也避免使用日志dkim等。如果您需要邮件数,则wc -l在末尾使用管道传输。


3

怎么样:

multitail -eX "smtp.*to=<(.*)>.*sent.*250" './bin/received' -f /var/log/maillog

./bin/received是一个shell脚本,它获取目标电子邮件地址作为参数并对其进行处理。



0

我正在监视谁通过此服务器通过电子邮件发送电子邮件:

tail -f /var/log/mail.log | grep 'sasl'

它显示谁是经过身份验证的用户。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.