2011-06-16 54 views
0

如何最好地實現一個最小的服務器端郵件過濾系統,它可以完成一件事:按名稱刪除簽名附件。郵件附件killfile - 如何通過文件名將黑名單簽名附件列入黑名單

某些同事的每封電子郵件都包含嵌入式嵌入式「signature.gif」或「signature-nn.gif」(其中nn似乎增加,直到其電子郵件客戶端重新啓動)。需要識別具有(有意義的)附件的郵件會受到以下事實的阻礙:他們的所有電子郵件都具有(無意義的)附件。

理想情況下,我希望能夠將新文件名添加到黑名單中,以便在收到郵件時可以輕鬆地打開新的嵌入式圖形。

Mailserver是Debian Linux上的Exim,因此服務器端的郵件過濾器(如procmail)將非常適合。客戶端我們有各種郵件應用程序,所以客戶端解決方案並不適合。

這怎麼可能與進出口+ procmail的(或同等?)

回答

1

完成,無需訪問樣本形式交往,這將是一個有點投機,但像這樣也許:

blacklist='signature|logo' # maintaining in an external file left as an exercise 

:0B 
* $ ^Content-disposition: attachment; filename="$blacklist(-[0-9][0-9])?\.gif" 
idiotbox 

主要的是你需要正則表達式來唯一地匹配那些消息。希望這應該足以讓你開始。這試圖查看郵件正文中的MIME標題行 - 如果不存在,或者它與我在這裏(從內存中)看到的略有不同,則需要修改正則表達式。

IIRC procmailex(5)手冊頁提供了一個如何將內容保存在外部文件中的示例。