使用 Centos 的 Postfix 上的正規表示式

使用 Centos 的 Postfix 上的正規表示式

我有一個僅運行 postfix 的 Centos 伺服器。我想過濾掉包含單字gratisor grátisor grétisor的郵件grâtis

第二個字母就是問題所在。所以我使用了這個拒絕:

/^Subject:.*gr.tis/ REJECT Your message was rejected

問題是“點”與後綴不匹配特殊字元。我的意思是,如果我發送一封包含該主題詞的電子郵件,gratis它就會被過濾。但如果我發送一封包含它的電子郵件則grátis不會。

我該如何解決這個問題?

答案1

將垃圾郵件樣本儲存到文件中並使用例如 、cat -Ased -n lhexdump等對其進行檢查- 不惜一切代價查看主題:標頭中的實際位元組hdod

例如

grep '^Subject:' /tmp/saved.spam | sed -n l

這將幫助您建立準確的正規表示式以放入 header_checks 檔案中。

答案2

嘗試使用:

/^Subject:.*gr.{1,2}tis/ REJECT Your message was rejected

反而。也許這是編碼中的錯誤。

相關內容