如何识别我们的qmail队列是如此之大以及如何处理它

一些如何我们的服务器正在由外发电子邮件运行,我们认为这是垃圾邮件。 我们通常使用plesk来pipe理它,但目前它正在崩溃。

如果我们做了

ps aux | grep 'qmail' 

我们得到约200这些

 qmailq 25340 0.0 0.0 2640 408 ? D 11:18 0:00 bin/qmail-queue 

我们如何确定这个邮件队列如此之大? 我猜它可能是一个妥协的PHP脚本的一个域或类似的东西。

有人可以告诉我们从哪里开始寻find底部。 我意识到这是一个大规模开放式问题,但任何方向将不胜感激。

有人在连接,但如何? 运行netstat -tp

这可能会显示某人是否通过作为开放中继(端口25)的错误configuration的邮件服务器直接转发邮件,或者如果他们通过脚本(端口80/443)推送东西。

如果您发现一个stream量来源,并且无法快速获取底层修复,请通过应用程序configuration或iptables在ASAP中获取一个块。 尽pipe如此,仍然是一个优先事项,因为无论一个垃圾邮件发现者,发现另一个垃圾邮件发送者将会很快。

你直接看了邮件内容吗? 它应该位于/ var / spool中的文件系统中。

从你的qmail日志开始:

 tail -f /var/log/qmail/current | tai64nlocal 

观看哪些人正在发送消息以及他们发送的地点。 如果看起来大多数邮件来自SMTP,请查看SMTP日志:

 tail -f /var/log/qmail/smtpd/current | tai64nlocal 

查看邮件发件人的IP地址,看他们是否来自单一来源。 如果您可以缩小发件人地址,则可以在/etc/tcp.smtp中创build一个规则来阻止该地址,或者RBL。 你使用rblsmtp作为你的qmail-smtppipe道的一部分吗?

如果邮件不是来自SMTP,或者它们来自本地主机,因为您的网页是通过SMTP发布的,请查看您的Web服务器日志,以查看是否可以确定哪个IP地址正在发送邮件。

在/ var / qmail的/ bin中/的qmail-qstat命令

或更好

在/ var / qmail的/ bin中/的qmail-qread

将是起点。

然后find一个垃圾邮件消息ID并在/ var / qmail / queue(find / var / qmail / queue-iname)中search具有该名称的文件。

find所有SPAM(例如IP / Subject,From等)的共同特征,并使用qmHandle从队列中删除电子邮件,并采取措施确保垃圾邮件停止来临。