在使用 spamassassin 和 clamav 的情況下,content_filter 如何運作?以下是一個 content_filter 的範例:http://www.postfix.org/FILTER_README.html 我發現 sendmail 命令不能使用相同的 content_filter,否則它將是一個循環。但例如,如果 content_filter 將設定為 spamassassin,那麼過濾完成後如何可能會執行下一個 clamav 過濾器?
如果有人知道,請逐步向我展示如何使用標準配置spamassassin 和clamav(master.cf 中的spamassassin 作為smtp 服務和main.cf 中的clamav 的附加選項: scan:localhost:10025 )進行 content_filter 的工作:訂單過濾,content_filter 在哪裡被阻止並被下一個取代。
答案1
一般來說,您有以下選擇。
- 您可以設定第一個內容過濾器,這樣它就不會將資料直接注入回 Postfix,但會將其提供給第二個內容過濾器。然後它可以進一步提供,只有鏈中的最後一個過濾器才會將郵件注入回 Postfix。
- 請注意,您已經在使用專用的 Postfix
smtpd
實例(請參閱 FILTER_README 頁面上的「進階過濾器:將郵件注入回 Postfix」),該實例已content_filter
清除設定。您可以新增一個中間的smtpd
實例,它將從第一個內容過濾器接收資料並將其輸入另一個內容過濾器。注意 Postfix 將記錄每封成功傳送的郵件三在這種情況下。 - 使用過濾管理器,例如 Amavis。它是唯一需要連接到 Postfix 的東西,然後它會透過自己的方式呼叫 Spamassassin 和 ClamAV。這是通常的「通用」做事方式,有大量的分步指南都是這樣做的,我很驚訝你自己沒有遇到過它。
- 停止隊列後處理
content_filter
並採用隊列前處理milter
。在我看來,它更容易部署和維護,系統看起來更乾淨、更容易理解。連接多個米爾特也非常容易,並且在手冊中進行了介紹。像 Amavis 這樣的過濾管理器也支援透過 milter 介面進行掛鉤。看http://www.postfix.org/MILTER_README.html。