exchange procmail Postfix 郵件伺服器 郵件稽核 郵件

郵件伺服器收信自動記錄 不花錢簡易備份稽核

2013-04-09
身為管理電子郵件伺服器的網管人員,最常被要求的功能大概就是「可否備份別人寄來的電子郵件以便日後查詢」,但以Linux平台建置的基本郵件系統將無法滿足所需,除非另行採購市面上具有備份電子郵件功能的郵件稽核產品。為此,本文示範如何利用MySQL資料庫來儲存電子郵件,以利後續的追蹤查核。
不過,在本文中將衍生Procmail的用法,利用Procmail來備份電子郵件相關資訊至資料庫內。

在安裝成功Procmail軟體後,由於Procmailrc主要利用正規表示法來設定相關規則,所以在此簡單說明正規表示法所使用到的符號,如表3所示。

表3 正規表示法所使用的符號

Procmail提供兩種組態檔以供設定,相關內容如下:


而Procmail規則設定格式如下所示:


以下為一簡單範例(#為註解):


如表4所示,即表示常用Flags的意義。

表4 常用Flags的意義

另外,Procmail也提供相關檢查條件符號,如表5所示。

表5 Procmail所採用的檢查條件符號

最後是Procmail提供的,當條件成立後所要進行的相關動作符號,如表6所示。

表6 條件成立後所要進行的相關動作符號

系統實作

在此假設讀者的郵件伺服器(Postfix)與MySQL資料庫均已安裝成功並且正常地運作。首先,新建一個儲存電子郵件資訊的資料庫表格,其中資料庫名稱為logdb,表格名稱為email,如下所示(#為註解說明):


接下來,自行撰寫可以將資料儲存至資料庫的程式,程式名稱為sqlinsert,以便將相關的資訊透過此程式儲存至資料庫內,此程式的用法為:


筆者習慣使用C語言程式,以下為此程式的原始碼(其中/**/為註解文字):



追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!