1、前言
mailgraph 為一非常簡單電子郵件統計套件,透過 RRDtool 及您的 MTA (ex. Sendmail、Postfix...) 統計出每日、週、月、年的郵件紀錄,並以圖表顯示郵件的收、送、拒絕、病毒、廣告信等流量。文章目錄
1、前言2、實作環境
3、安裝及設定
步驟1.安裝 mailgraph 套件
步驟2.啟動 mailgraph 服務
步驟3.觀看 mailgraph 分析結果
步驟4.修改系統 Log 設定檔 (newsyslog.conf)
4、參考
5、Me FAQ
Q1.mailgraph 服務無法啟動並出現錯誤訊息?
2、實作環境
- FreeBSD 5.2-RELEASE
- rrdtool-1.0.47
- mailgraph-1.8
3、安裝及設定
步驟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 分析結果
- 觀看 mailgraph 成果 URL: ex. http://www.weithenn.org/cgi-bin/mailgraph.cgi
- mailgraph 官網 Demo
步驟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 (請依個人喜好擇一即可)
4、參考
- 小紅帽論壇 mailgraph 介紹
- 小紅帽技術論壇 - 關於 FreeBSD 的 logfile 說明..
- 小紅帽技術論壇 用 logrotate 來管理及備份日誌檔
- man page:newsyslog
5、Me FAQ
Q1.mailgraph 服務無法啟動並出現錯誤訊息?
Error Message:執行指令 /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)。