我在 AWS 上有一個 EC2 微型執行個體並執行 spamassassin。最近,它在 5 分鐘內持續使用約 0.5 個 CPU 積分。 (這意味著我的 CPU 在 5 分鐘內以 50% 的速度運行)。
有沒有辦法降低 spamd 的運作頻率或減少其使用的 CPU 總量?
謝謝!
編輯:這篇文章錯誤地指出了fail2ban 導致了CPU 使用率。關閉後,它仍然使用大量 CPU 積分,並找到了另一個罪魁禍首。
答案1
Spamd 不是預定的東西。每當進程調用它時它就會運行。
沒有簡單的要點,很多答案是“這取決於您的設置”,但是(假設您有一個正常的電子郵件伺服器/用戶配置文件)您可以通過引入灰色來大大減少伺服器需要處理的電子郵件量-清單。
(灰名單是一種丟棄傳入垃圾郵件的輕量級方法,通常它會丟棄大約80% 的垃圾郵件,並且通常大多數電子郵件都是垃圾郵件,因此它可以產生很大的影響。它的工作原理是允許其他伺服器連接、發送寄件者和收件者地址,如果它無法識別這些郵件,則會將它們添加到清單中並關閉連接- 合法的郵件伺服器應該嘗試重新發送電子郵件,但許多垃圾郵件系統不會這樣做,缺點是當人們第一次相互溝通時。
我可能不建議這樣做,但您也可以嘗試使用黑名單在可能的垃圾郵件來源到達 spamassassin 之前封鎖電子郵件。這比使用 spamassassin 檢查電子郵件輕得多,但給 RBL 帶來了很大的信任(也許是非常信任)。
如果您的伺服器發送大量電子郵件並且您確定其全部合法,您可能希望繞過外發郵件的垃圾郵件過濾。如果有人透過您的伺服器發送電子郵件受到損害,您將更快地被列入黑名單 - 您可能可以透過引入配額來解決這個問題 - 例如「cluebringer/policyd」。
最後,您或許可以刪除 spamassassin 的某些部分,以減少 CPU 密集程度。但這可能不是一個好主意。