OS X Server 10.4 postfix qmngr 突然占用大量资源

OS X Server 10.4 postfix qmngr 突然占用大量资源

我有一台运行 10.4 服务器的 Apple XServe G5,主要用于我(小型)公司的网站和内部电子邮件。通常,处理器使用率总共徘徊在 5-10% 左右。由于我的公司规模较小,而且更喜欢使用 GMail 帐户,因此邮件服务器每天可能会收到 10 封电子邮件,并且有 4 个活跃帐户。从 2 天前开始,Clam AV 程序开始占用所有可用处理器空间的 100%,更新它也没有帮助。我禁用了它,但现在我面临另一个问题:Postfix 的 qmngr 线程一直在读取和写入大量数据到磁盘:5-7 MB/秒,连续,24/7。它还占用了 10-15% 的 CPU。当我关闭它时,磁盘 I/O 降至接近 0,但当然,当电子邮件进入时它会立即重新启动。此外,syslogd 占用了 15-20%。正如我所说,这些问题大约在两天前突然出现;我对服务器配置没有做任何更改。

谢谢你的帮助,
克里斯

PS- 关于服务器配置还有几点说明:2 GB RAM(我知道有点低,我正在努力……),1 个双核 G5 处理器,1TB HDD。该系统用于电子邮件,并运行一个名为 Crossroads 的程序来平衡其自身和两个 CentOS 服务器之间的 HTTP 请求。

答案1

听起来你被垃圾邮件淹没了,要么是传入的(坏的),要么是通过你的服务器中继的(更糟的)。首先,使用sudo postqueue -p服务器管理->邮件服务->维护(窗口底部的选项卡)->邮件队列(顶部的选项卡)查看邮件队列。如果它显示大量发送到其他域的垃圾邮件,则你被用作垃圾邮件中继,需要找到中继设置中的漏洞并堵塞它(然后刷新邮件队列)。如果它显示大量传入和/或退回邮件,你需要加强对传入垃圾邮件的防御。如果它是空的......那么它就是别的东西,这个答案不会有太大帮助(除了日志记录部分)。无论如何,首先要做的是确保你有足够的日志记录运行:在服务器管理->邮件->设置->日志记录中,将 SMTP 日志详细信息级别设置为信息或调试(我偏爱信息); SMTP 日志 (/var/log/mail.log) 是了解 postfix 的小脑袋内部发生的情况的详细信息的最佳地方。

中继锁定:如果邮件来自受信任的 IP 地址(在“服务器管理”->“邮件”->“设置”->“中继”->“仅接受来自这些主机和网络的 SMTP 中继”中列出),或者发件人使用有效的用户名和密码进行身份验证,则您的服务器将中继邮件。要找出是哪种情况,请在 SMTP 日志中查找连接和传入邮件;它应该看起来像这样(每行前面只有时间戳和服务器名称):

postfix/smtpd[17145]: connect from unknown[10.0.0.201]
postfix/smtpd[17145]: 069E852BC63: client=unknown[10.0.0.201], sasl_method=CRAM-MD5, sasl_username=sucker
postfix/cleanup[17153]: 069E852BC63: message-id=<[email protected]>
postfix/qmgr[72]: 069E852BC63: from=<[email protected]>, size=63282, nrcpt=1 (queue active)

请注意,这些行可能会分散,因为还有其他事情正在发生,并且其他消息混入日志中。我所做的是查找带有可疑 from=<> 的 qmgr 消息,然后搜索消息编号(此示例中为 069E852BC63)以查找 smtpd 行,然后如有必要使用 smtpd 进程 ID(上面的 17145)查找初始连接。找到相关的日志行后,要查找的是源 IP 地址(上面的 10.0.0.201),并查看它是否受信任;如果是,则跟踪该地址的计算机/设备并找出它发送垃圾邮件的原因。要检查的另一件事是包含“sasl_method=CRAM-MD5, sasl_username=sucker”的 smtpd 行 - 这意味着客户端以名为“sucker”的用户身份进行身份验证,您需要立即更改该用户的密码(然后尝试找出密码是如何泄露/猜测的)。

传入垃圾邮件封锁:在 10.4 服务器上,服务器上有两道垃圾邮件防线:黑名单和过滤。您应该尽可能多地使用黑名单,因为它会在服务器收到邮件之前阻止邮件,从而减少服务器的负载(它不必运行垃圾邮件和病毒过滤器、处理退回邮件等)。您可以在服务器管理 -> 邮件 -> 设置 -> 中继 -> 使用这些垃圾邮件拒绝服务器(实时黑名单)下订阅 DNS 黑名单。几年来我没有做过任何好的调查,但 zen.spamhaus.org 的声誉很好,而且当我运行一个更重要的服务器时,我总是从 bl.spamcop.net 获得良好的结果。使用一个或两个黑名单,负载应该会减少到 qmgr 和病毒过滤器可以应对的程度(稍后我会提到一个警告)。如果您想变得更花哨一点,topicdesk.com 有一个PDF 的一些额外技巧

最后,关于 ClamAV 的警告:10.4 服务器中包含的 ClamAV 版本不再受当前病毒定义支持;同样,topicdesk.com 有一个包含更新 ClamAV 引擎说明的 PDF

答案2

您是否安装了某种垃圾邮件过滤器?很久以前,我遇到了一些带有 zip 文件的烦人垃圾邮件。该存档中包含的文件基本上都是“000000000000000000000000000000000000”或类似的内容,当我的垃圾邮件过滤器提取该存档时,看似无害的几百千字节附件膨胀到几十兆字节。当然,同时还有很多这样的垃圾邮件。

这是折磨邮件服务器的好办法!

相关内容