站長新書 站長開講 首頁 最新文章 站長著作及審校 FreeBSD 筆記 Linux 筆記 Windows 筆記 虛擬化筆記 網管人雜誌 遊山玩水 關於本站
站長新書 VMware vSphere ICM 團購開跑了!!

Mailgraph- Mail 流量圖表化

前言

[mailgraph] 為一非常簡單電子郵件統計套件,透過 [RRDtool] 及您的 [MTA] (ex. Sendmail、Postfix...) 統計出每日、週、月、年的郵件紀錄,並以圖表顯示郵件的收、送、拒絕、病毒、廣告信等流量。

實作環境

安裝及設定

步驟1.安裝 mailgraph 套件

切換至 Ports Tree 路徑安裝 mailgraph 套件,預設安裝於 /usr/local/www/cgi-bin 目錄下 mailgraph.pl、mailgraph.cgi 為了使後續 Web Service 服務 (www) 能順利讀取及執行這二個檔案,因此請將 owner:group 變更為 www。

 #cd /usr/ports/mail/mailgraph                             //切換至安裝路徑
 #make install clean                                       //安裝並清除安裝過程中不必要的檔案
 #cd /usr/local/www/cgi-bin                                //切換至設定檔路徑
 #chown www:www mailgraph.pl                               //變更擁有人及群組
 #chown www:www mailgraph.cgi                              //變更擁有人及群組

步驟2.啟動 mailgraph 服務

請依如下步驟複製範例服務檔並啟動 mailgraph 服務若啟動成功則會產生 RRDTool (*.rrd) 的分析檔

 #cp mailgraph.sh.sample mailgraph.sh                      //複製預設檔以便修改
 #/usr/local/etc/rc.d/mailgraph.sh start                   //啟動 mailgraph 服務
 #ps ax |grep mailgraph                                    //確定服務是否啟動
 36225  p0  I      0:00.01 su -c cd /usr/local/www/cgi-bin; ./mailgraph.pl -l /v
 36226  p0  S      0:01.30 /usr/bin/perl -w ./mailgraph.pl -l /var/log/maillog

步驟3.觀看 mailgraph 分析結果

步驟4.修改系統 Log 設定檔 (newsyslog.conf)

由於 mailgraph.sh 執行為使用 Web Service 的 www 這個帳號,但 /var/log/maillog 預設產生的 owner:group 是 root:wheel 所以我們必須更改 group 為 www 或權限改為 644 以便 mailgraph 服務讀取 Mail Log,否則當 /var/log/maillog 產生新的 Log 時 mailgraph 會因為沒有權限讀取 Mail Log 而導致無法分析圖表,有關此設定檔詳細內容可參考站內文章 newsyslog.conf

 #vi /etc/newsyslog.conf          //修改 newsyslog.conf (請依個人喜好擇一即可)
logfile_name[owner:group]modecountsizewhenflags[/pid_file][sig_num]說明
/var/log/maillog_6407*@T00J__預設值
/var/log/maillogroot:www6407*@T00J__(方法一) 更改 group
/var/log/maillog_6447*@T00J__(方法二) 更改檔案權限

參考

[ 小紅帽論壇 mailgraph 介紹]

[ 小紅帽技術論壇 - 關於 FreeBSD 的 logfile 說明..]

[ 小紅帽技術論壇 用 logrotate 來管理及備份日誌檔]

[man page:newsyslog]

Me FAQ

Q1.mailgraph 服務無法啟動並出現錯誤訊息?

Error Meaage:

執行指令 /usr/local/etc/rc.d/mailgraph.sh start 欲啟動 mailgraph 服務時卻出現如下錯誤訊息

 Error opening /var/log/maillog: Permission denied at ./mailgraph.pl line 308

Ans:

請檢查 maillog 檔案權限是否正確,因為 mailgraph 是使用 www 這個帳號所以 other 的權限要為 r (read)

Go To Oddmuse OrgGo To FreeBSD OrgCreative Commons 2.5 Taiwansitestates.com