Postfix消息ID始发进程?

昨天晚上,我的postfix邮件服务器(启用了dovecot,roundcube,opendkim和spamassassin的Debian Squeeze)开始从我的单个域发送垃圾邮件,如下所示:

$cat mail.log|grep D6930B76EA9 Jul 31 23:50:09 myserver postfix/pickup[28675]: D6930B76EA9: uid=65534 from=<[email protected]> Jul 31 23:50:09 myserver postfix/cleanup[27889]: D6930B76EA9: message-id=<[email protected]> Jul 31 23:50:09 myserver postfix/qmgr[7018]: D6930B76EA9: from=<[email protected]>, size=957, nrcpt=1 (queue active) Jul 31 23:50:09 myserver postfix/error[7819]: D6930B76EA9: to=<[email protected]>, relay=none, delay=0.03, delays=0.02/0/0/0, dsn=4.4.2, status=deferred (delivery temporarily suspended: lost connection with mta5.am0.yahoodns.net[66.196.118.33] while sending RCPT TO) 

有问题的域没有启用任何帐户,但只有通过postfixadmin设置的catchall别名 – 大多数电子邮件是从我经常使用的特定地址发送,但也有一些从伪造地址发送。 没有任何其他的虚拟域由postfix处理受到影响。

我怎样才能找出什么过程是喂postfix / sendmail或更多的信息,他们的起源? 据我可以告诉PHP邮件()没有使用,我已经运行了几个开放的继电器testing。 我做了一些修补(从服务器上删除winbind和main.cf中的ipv6地址),似乎已经平息了,但我还是不知道我的服务器是如何突然发送垃圾邮件。 也许我修好了 – 也许我没有。 任何人都可以帮助搞清楚我是如何妥协? 我应该看的任何地方? 我在最近更改过的文件上运行了Linux恶意软件检测,但没有发现任何东西。

你不能通过Message-ID来确定罪魁祸首,因为它可以伪造(和probalby是)。

唯一的方法是用一个包装器的shell脚本replacesendmail程序。 这个脚本可以用来logging你所需要的一切。 像父进程ID,用户和其他进程信息一样。

Postfix的提取程序由sendmail程序触发。 更多的信息可以在这里findhttp://www.postfix.org/sendmail.1.html也许这有助于增加Postfix的sendmail的日志logging。