Related Posts Plugin for WordPress, Blogger...

網管人雜誌

          本文刊載於 網管人雜誌第 74 期 - 2012 年 3 月 1 日出刊,NetAdmin 網管人雜誌 為一本介紹 Trend Learning 趨勢觀念、Solution Learning 解決方案、Technology Learning 技術應用的雜誌,下列筆記為本站投稿網管人雜誌獲得刊登的文章,網管人雜誌於每月份 1 日出刊您可於各大書店中看到它或透過下列圖示連結至博客來網路書店訂閱它。

文章目錄

1、前言
2、實作環境
3、以 FreeBSD 為實作平台
          設定 Log Client (Juniper SSG20)
          設定 Log Server (FreeBSD)
          準備 LogAnalyzer 運作環境
4、以 CentOS 為實作平台
          設定 Log Server (CentOS)
          準備 LogAnalyzer 運作環境
5、結語

1、前言

          LogAnalyzer 為 Adiscon 公司所發行,其主要功能為分析各種 日誌檔(例如 Syslog messages、Windows Events Log…等)的軟體套件,它可以運作於 Windows 及 Unix-Like(例如 FreeBSD、Linux…等)作業系統上,並且採用 通用公共授權第三版 (GNU GPLv3) 為其授權方式,因此可以自由使用它來進行企業中 Log 分析之用。

          LogAnalyzer 一開始發佈時並非使用此一名稱,而是採用名稱為「phpLogCon」進行發佈,直到 2010 年時該公司因為對於原本軟體名稱所帶來的困擾,例如 名稱開頭「php」感覺此軟體的發展範圍被限縮了(其它程式語言的熱心開發者便不會加入),而「LogCon」則顯然是個無任何關聯意義的詞,同時為了避免相關的法律問題,最後決定採用開頭為其公司名稱,同時加上全新且顧名思義的名稱「Adiscon LogAnalyzer」,並且該公司承諾針對此軟體,將永遠採用 GPLv3 授權方式進行釋出。(詳細內容可參考 http://0rz.tw/Q4H19)

          因此 Adiscon 公司於 2010 年 3 月時,在發佈穩定新版本 v3.0 的同時,便正式將軟體名稱改名為「LogAnalyzer」(發行公告可參考 http://0rz.tw/4Ow2C),屆至目前為止最新穩定版本為 v3.2.3 (Beta 版本為 v3.3.0)。

          LogAnalyzer 為採用 PHP 程式語言所開發而成,可於網頁介面中查詢相關所收集到的日誌 (例如 Syslog、Windows Event Log、SNMP Trap…等) 內容,簡而言之只要系統支援網頁伺服器 (例如 Apache、IIS…等) 及 PHP 語言便可快速建立,並且 LogAnalyzer 也支援使用者帳號控管機制(必須安裝資料庫)。在分析所收集到的日誌(Log)時,可以透過讀取「檔案」的方式來進行即時查詢 (Real-Time),也可以將收集到的日誌內容存放至「資料庫(例如 MySQL)」進行分析。

          新版個人資料保護法於 2010 年 4 月通過後,法務部於日前 10月 27 日時在官方網站中,公告了個資法施行細則草案(詳細內容請參考 http://0rz.tw/XIlGs),同時進行為期 14 天的法案預告,若無關於草案中內容進行重大修改的話,則將如期送至行政院進行審查。

          其中新版個資法施行細則修正草案條文中「第五條」(詳細內容請參考 http://0rz.tw/uPuRh),增加了對「軌跡資料」的保護,所謂的軌跡資料指的是個人資料在 蒐集、處理、利用 的過程中,所產生非屬於原蒐集個資本體的衍生資訊(例如 日誌檔案 Log Files),包括(但不限於)資料存取人之代號(帳號)、存取時間、使用設備代號、網路位址(IP 位址)、經過之網路路徑…等,可用於比對、查證資料存取之適當性,簡而言之企業對於相關伺服器及設備,只要是與「個人資料」有牽扯到關系,因而產生的「日誌檔案 (Log Files)」,企業皆必須要妥善保存備份以供隨時備查,也就是企業必須要「自行舉證」沒有違反個資法。

2、實作環境

作業系統 FreeBSD 8.2
  • 網頁伺服器 Apache: apache-2.2.17_1
  • PHP 程式語言: v5.3.5 (擴充模組 v1.4)
  • LogAnalyzer: v3.0.0

作業系統 CentOS 6.0
  • 網頁伺服器 Apache: httpd-2.2.15-5.el6.centos.i686
  • PHP 程式語言: php-5.3.2-6.el6_0.1.i686
  • LogAnalyzer: v3.2.3


          目前市場上為了新版個資法的到來,各家廠商不斷推陳出新,各項產品如雨後春荀般湧出,以因應企業對於新版個資法的需求,然而相關設備及軟體對於一般中小企業來說,無疑多了一項管理負擔之外, IT 預算部份可能也難以允許,此時您可以嘗試看看 LogAnalyzer 日誌分析套件,這套後網頁呈現方式的 Log 分析軟體。

          本文實作將分為二篇,第一篇也就是本文,將說明採用 FreeBSD 以及 CentOS 作業系統平台二方面進行說明,首先將說明如何架設 日誌伺服器(Syslog Log Server) 的角色,以便擔任收集企業內部相關設備日誌資訊,例如路由器(Router)、網路交換器(Switch)、防火牆(Firewall)...等便可以擔任 Syslog Client 的角色,將企業設備所產生的日誌(Syslog Log)即時發送到日誌伺服器上,當然也可以將 Windows 作業系統所產生的 Event Log,交由 LogAnalyzer 進行分析查詢的動作。之後管理者只要透過 LogAnalyzer 頁面,便可即時查詢企業各項設備運作情況,因此除了平時查詢以及日誌存參備查以外,LogAnalyzer 也可以進行圖表分析及報表匯出的功能。

3、以 FreeBSD 為實作平台

          首先將以 FreeBSD 為實作平台進行設定說明,使其成為 日誌伺服器(Syslog Log Server),以便接收各項支援 Syslog 功能的 Log Client 設備,所傳送過來的 Syslog 日誌資訊,接著將安裝屆時運作 LogAnalyzer環境,至於如何進行 LogAnalyzer 的初始化安裝以及進階設定,由於與 CentOS 實作平台設定步驟相同,因此將於下一篇文章中合併統一進行說明。

          FreeBSD 作業系統在預設的情況下,便可以經過設定調整之後成為日誌伺服器 (因為預設日誌服務,只收集本機的 Log),了解後緊接著調整及設定 FreeBSD 內建的 Syslogd 日誌服務,使 FreeBSD 主機搖身一變成為 Syslog Log Server,以便收集相關設備所傳送過來的 Syslog Log 運作訊息,以下為此次實作網路環境:

Log Server (FreeBSD):  負責收集 Log Client 傳送過來的 Syslog 資訊
  • 主機名稱: bsd.weithenn.org
  • 網卡代號: em0
  • IP 位址: 192.168.1.10
  • Syslog 服務: UDP 協定 / Port 514
Log Client (Juniper SSG20):  指定將設備產生的 Syslog 資訊傳送至 Syslog Server
  • 主機名稱: ssg20.weithenn.org
  • IP 位址: 192.168.1.20
  • Syslog 服務: UDP 協定 / Port 隨機 (Random Port)

設定 Log Client (Juniper SSG20)

          請啟動 Juniper SSG20 小型防火牆設備的 Syslog 功能,以便屆時將設備產生的 Syslog 日誌記錄,即時傳送至指定的 Log Server (也就是 FreeBSD 主機)上,進行日誌儲存及分析的動作,設備啟用 Syslog 功能的設定步驟如下:
  1. 登入 Juniper SSG20 小型防火牆。
  2. 點選【Configuration】 項目後,接著點選【Report Settings】子項目,最後點選【Syslog】。
  3. 勾選【Enable syslog messages】項目。
  4. 填入 Syslog Server 相關資訊【IP / Hostname、Port ...等】 (如圖 1 所示) 。
  5. 相關資訊填妥及勾選後按下【Apply】鍵。
  6. 完成 Log Client (Juniper SSG20) Syslog 功能啟用設定。
圖1、啟用 Juniper SSG20 Syslog 功能(指定 Syslog Server,成為 Log Client)

設定 Log Server (FreeBSD)

          在設定主機名稱以前先了解一下命名規則,請使用在「網際網路主機需求 - 應用程式與支援(RFC-1123)」中定義的任何標準支援字元,相關標準支援字元如下:
  • 大寫字母 A 到 Z
  • 小寫字母 a 到 z
  • 數字 0 到 9
  • 連字號(-)
          接著請修改 FreeBSD 主機設定檔「/etc/hosts」,以便後續修改日誌設定檔「/etc/syslog.conf」時識別 Log Client 之用,設定完成後請先測試 FreeBSD 主機,是否可以正確識別剛才設定的主機名稱 (Log Client Hostname)。
# vi /etc/hosts                            //修改主機名稱設定檔
 192.168.1.20   ssg20 ssg20.weithenn.org   //加入此行
# ping -c2 ssg20                           //確認可解析此主機名稱
 PING ssg20 (192.168.1.20): 56 data bytes
 64 bytes from 192.168.1.20: icmp_seq=0 ttl=64 time=2.711 ms
 64 bytes from 192.168.1.20: icmp_seq=1 ttl=64 time=1.438 ms
 --- ssg20 ping statistics ---
 2 packets transmitted, 2 packets received, 0.0% packet loss
 round-trip min/avg/max/stddev = 1.438/2.075/2.711/0.637 ms

修改日誌設定檔 (/etc/syslog.conf)
          修改 FreeBSD 日誌設定檔 /etc/syslog.conf,指定屆時所收集到 Log Client 傳送過來的 syslog 資訊內容應存放至何處,以下為日誌設定檔內容參數說明及相關用法:
  • +[Hostname]: 指定此台主機名稱或設備傳送過來的日誌訊息,「採用」下一行設定的方式處理並指定存放處。
  • -[Hostname]:排除」此台主機或設備所傳送過來的日誌訊息(也就是不收集!!)。
  • +@: 指定本機 (Localhost) 產生的日誌訊息,採用下一行設定的方式處理並指定存放處,以便本機的日誌訊息混入 Log Client 日誌訊息中。
  • +*: 所有設備的日誌存放至指定檔案中,當環境有多台主機時希望能將所有設備日誌分開存放之外,也同時存放在同一個檔案中時便可使用此語法。
  • 請勿使用底線 (_) 命名: 主機名稱識別以及存放的檔案命名,請勿使用 「底線 _」 進行命名,因為此舉將導致屆時日誌無法寫入指定的檔案中 (建議使用 減號- 代替)。

以此次實作來說修改後的日誌設定檔 /etc/syslog.conf 內容如下:
# vi /etc/syslog.conf         //修改日誌設定檔
 ### For Juniper SSG20 Log    //註解文字
 +ssg20                       //接收 SSG20 傳送過來的日誌
 *.*   /home/log/ssg20.log    //接收所有日誌內容並存放於 /home/log/ssg20.log
 ### For FreeBSD Localhost    //註解文字
 +@                           //本機產生的日誌採用下列方式處理並指定存放處
 *.err;kern.warning;auth.notice;mail.crit                /dev/console
 *.notice;authpriv.none;kern.debug;mail.crit;news.err    /var/log/messages
 ...略...

修改主機服務設定檔 (/etc/rc.conf)
          FreeBSD 系統在預設情況下日誌服務(Syslogd)便會啟動,但啟動時是採用預設的參數 「-s」 (僅處理本機日誌部份,不接收也不允許 Log Client 傳送日誌過來,因此無法成為 Log Server),所以我們透過修改主機服務設定檔 /etc/rc.conf,將啟動日誌服務的參數改為「-a」,並且可以指定 Log Client 的來源網段及 Port 號,以下為參數 –a 相關用法說明:
  • -a 192.168.1.0/24:514: 僅接收 192.168.1.x 網段且來源 Port 號為 514,的 Log Client 日誌訊息。
  • -a 192.168.1.0/24:*: 僅接收 192.168.1.x 網段,但來源 Port 號為 Any,的 Log Client 日誌訊息。
  • -a 0/0:*: 接收所有網段及 Port 號的 Log Client 傳送過來的日誌訊息,適用於必須接收多個 IP 網段需求時,便可採用此參數請配合防火牆進行相關限制。

          以此次實作的 Juniper SSG20 設備為例,啟動該設備的 Syslog 功能後,雖然可以指定 Log Server 的 Port 號為 514,但本身在傳送日誌訊息時卻無法指定 Port 號(為隨機 Port 號),此時 FreeBSD 主機便適合設定上述的第二種參數設定,其中「-4」參數表示僅僅啟動 Syslogd 服務的 IPv4 網路功能即可 (因為預設會同時啟動日誌服務的 IPv4 及 IPv6 網路功能),所以 FreeBSD 主機服務設定檔 /etc/rc.conf,修改後內容如下:
# vi /etc/rc.conf                        //修改主機服務設定檔
 syslogd_enable="YES"                    //啟動 Syslogd 服務
 syslogd_flags="-4 -a 192.168.1.0/24:*"  //加入此行

檢查 FreeBSD 是否可接收 Log Client 日誌訊息
          設定完成後,在重新啟動 syslogd 日誌服務以前,請先建立剛才於日誌設定檔 /etc/syslog.conf 中,指定存放 Log Client 的日誌檔案 (/home/log/ssg20.log),之後便可重新啟動日誌服務(表示開始接收 Log Client 的 Syslog 資訊),並且檢查 syslogd 日誌服務執行序,是否套用新設定的 –a 參數。
# touch /home/log/ssg20.log   //建立空檔
# /etc/rc.d/syslogd restart   //重新啟動日誌服務
# ps aux | grep syslogd       //查看執行序狀態
  root   1554  0.0  0.1  3352  1196  ??  Is   181011    0:05.30
 /usr/sbin/syslogd -4 –a 192.168.1.0/24:*

          日誌服務重新啟動成功後,可以在Log Client (Juniper SSG20) 上進行相關操作,同時檢查 FreeBSD 主機確認是否可以接收到,Log Client (Juniper SSG20) 設備所傳送過來的日誌訊息,從下列操作訊息可知,Log Client 使用隨機 Port 號 21918 來傳送 Syslog 日誌訊息。
# tcpdump -tlni em0 port 514     //確認是否可接收 Log Client 傳送的日誌訊息
 IP 192.168.1.20.21918 > 192.168.1.10.514: SYSLOG local0.notice, length: 431  
 IP 192.168.1.20.21918 > 192.168.1.10.514: SYSLOG local0.notice, length: 431
 IP 192.168.1.20.21918 > 192.168.1.10.514: SYSLOG local0.notice, length: 432
 ...略...


準備 LogAnalyzer 運作環境

          順利將 FreeBSD 主機設定為 Log Server 之後,接著準備 LogAnalyzer 的運作環境,也就是安裝網頁伺服器 Apache 以及 PHP 程式語言,其中必須注意要正確載入 GD、Pcre 這二個 PHP 擴充模組,以免屆時 LogAnalyzer 統計分析圖表發生錯誤,如圖 2 所示便是因為 PHP 擴充模組的 GD 未正確載入(或者未安裝),而造成統計分析圖表無法正確顯示。

圖2、PHP 擴充模組的 GD 未正確載入造成統計分析圖表錯誤

          下列操作為安裝 Apache、PHP、LogAnalyzer 等相關套件,並且於相關安裝套件完成之後,使用「php -m」指令方式,來查看PHP擴充模組(PHP Extension)是否正確載入,並且當 Apache 服務啟動後可建立 test.php 檔案,並於檔案內容中呼叫 PHP 資訊頁面,來詳細查看PHP擴充模組的載入情況以及相關資訊(如圖3所示)。
# cd /usr/ports/www/apache22          //切換至 Apache 套件安裝路徑
# make install clean                  //安裝並清除安裝過程中不必要的檔案
# cd /usr/ports/lang/php5             //切換至 PHP 套件安裝路徑
# make install clean
# cd /usr/ports/lang/php5-extensions  //切換至 PHP 擴充模組安裝路徑
# make install clean
# cd /usr/ports/sysutils/loganalyzer  //切換至 LogAnalyzer 套件安裝路徑
# make install clean
# php -m | grep -E 'gd|pcre'          //查詢 PHP 擴充模組載入情況
 gd
 pcre
# echo 'apache22_enable="YES"' >> /etc/rc.conf  //開機啟動 Apache 服務
# /usr/local/etc/rc.d/apache22 start  //啟動 Apache 服務
 Performing sanity check on apache22 configuration:
 Syntax OK
 Starting apache22.
# vi /home/web/test.php               //建立 PHP 資訊頁面
 <?
  phpinfo();
 ?>

圖3、確認 PHP 擴充模組 GD、Pcre 已正確載入

          接著必須明確指定 PHP 程式語言中 FreeBSD 主機時區,否則屆時 LogAnalyzer 網頁分析圖表也將發生錯誤,如圖4所示便是因為未指定 PHP 程式語言的主機時區,而導致分析圖表無法正確顯示,下列操作為指定 FreeBSD 主機時區為「Asia/Taipei」。
# echo 'date.timezone = "Asia/Taipei"' > /usr/local/etc/php/timezone.ini
圖4、未明確指定 PHP 程式語言主機時區,造成分析圖表無法正確顯示

LogAnalyzer 初始化前置作業
          在準備開始初始化 LogAnalyzer 設定以前,請先進行下列步驟以便後續 LogAnalyzer 初始化順利進行,若不想建立空白設定檔 (config.php),也可以複製「loganalyzer/include/config.sample.php」檔案,至 LogAnalyzer 運作目錄下也是可行的。
# cp -rp /usr/local/www/loganalyzer/* /home/web/  //複製 LogAnalyzer 目錄至您網站根目錄下
# touch /home/web/config.php                      //建立空設定檔 (初始化設定屆時將寫入此檔案)
# chown www /home/web/config.php                  //確定 Web Service 可寫入設定至此檔案


          至此 FreeBSD 平台上的準備作業已經完成,由於 LogAnalyzer 的初始化安裝流程,以及進階設定調整步驟皆相同,因此待 CentOS 平台上準備作業完成後,將一併於下一篇進階設定文章中進行說明。

4、以 CentOS 為實作平台

          接著為 CentOS 作業系統進行設定,使其成為 日誌伺服器(Syslog Log Server)的角色。從 CentOS 6 版本開始,日誌服務由舊版(CentOS 5.x)的 syslog,改為 rsyslog成為預設的日誌服務。

          當您連結到 rsyslog(http://www.rsyslog.com) 首頁後,是否感覺到網頁風格跟 LogAnalyzer首頁很相像? 是的 !! rsyslog 也是由 Adiscon 公司所開發,rsyslog 支援 TCP/UDP 通訊協定,並且除了將主機日誌資訊寫入檔案之外,還能將日誌資訊配合適當設定之後,直接寫入至資料庫中 (例如 MySQL 資料庫),關於 rsyslog 與 MySQL 資料庫,以及搭配 LogAnalyzer 的進階協同作業,在本文當中並不會提到,有興趣的讀者可以參考官網說明http://0rz.tw/YTxsj。

          同樣的 CentOS 在預設的情況下只收集本機的日誌資訊,需要透過調整日誌設定檔內容之後,才能使 CentOS 主機成為 Log Server,以便收集相關設備所傳送過來的 Syslog Log 運作訊息,以下為實作網路環境:

Log Server (CentOS): 負責收集 Log Client 傳送過來的 Syslog
  • 主機名稱: centos.weithenn.org
  • 網卡代號: eth0
  • IP 位址: 192.168.1.10
  • Syslog 服務: UDP 協定 / Port 514
Log Client (Juniper SSG20): 指定將設備產生的 Syslog 傳送至 Syslog Server
  • 主機名稱: ssg20.weithenn.org
  • IP 位址: 192.168.1.20
  • Syslog 服務: UDP 協定 / Port 隨機 (Random)

設定 Log Server (CentOS)

          由於 Log Client (Juniper SSG20) 啟用 Syslog 功能,在剛才 FreeBSD 平台建置時已經說明過因此便略過,緊接著請先修改 CentOS 主機設定檔「/etc/hosts」,以便後續修改日誌設定檔「/etc/rsyslog.conf」時識別設備之用,設定完成後請測試 CentOS 主機,是否可以識別該設備主機名稱 (Log Client Hostname)。
# vi /etc/hosts                            //修改主機名稱設定檔
 192.168.1.20   ssg20 ssg20.weithenn.org   //加入此行
# ping -c2 ssg20                           //確認可解析此主機名稱
 PING ssg20 (192.168.1.20) 56(84) bytes of data.
 64 bytes from ssg20 (192.168.1.20): icmp_seq=1 ttl=64 time=0.136 ms
 64 bytes from ssg20 (192.168.1.20): icmp_seq=2 ttl=64 time=0.183 ms
 --- ssg20 ping statistics ---
 2 packets transmitted, 2 received, 0% packet loss, time 1000ms
 rtt min/avg/max/mdev = 0.136/0.159/0.183/0.026 ms 

修改日誌設定檔 (/etc/rsyslog.conf)
          修改 CentOS 日誌設定檔 /etc/rsyslog.conf,首先將 CentOS 主機啟用 UDP Syslog 功能啟用 (註解二行設定),並且指定屆時收集到 Log Client 傳送過來的 syslog 日誌內容,應該存放於哪個檔案中,以此次實作來說修改後的日誌設定檔 /etc/rsyslog.conf 內容如下:
# vi /etc/rsyslog.conf             //修改日誌設定檔
 # Provides UDP syslog reception  //註解文字
 $ModLoad imudp.so                //取消開頭註解符號 #
 $UDPServerRun 514                //取消開頭註解符號 #
 ### For Juniper SSG20 Log        //註解文字
 +ssg20                           //接收 SSG20 傳送過來的日誌
 *.*   /home/log/ssg20.log        //接收所有日誌內容並存放於 /home/log/ssg20.log

檢查 CentOS 是否可以接收 Log Client 日誌訊息
          設定完成後,在重新載入 rsyslogd 日誌服務以前,請先建立剛才於日誌設定檔 /etc/rsyslog.conf 中,指定存放 Log Client 的日誌檔案 (/home/log/ssg20.log)。若有開啟 IPTables 防火牆功能的話,則記得開啟 UDP 協定 Port 514 的規則,之後便可重新載入日誌服務,載入成功後請查看 CentOS 主機,是否開啟 UDP Port 514,若有開啟則表示設定成功。
# touch /home/log/ssg20.log    //建立空檔
# service rsyslog reload       //重新載入日誌服務
 Reloading system logger...       [  OK  ]
# netstat -tunpl | grep :514   //查看系統是否 Listen UDP Port 514
 udp  0  0 0.0.0.0:514  0.0.0.0:*  1268/rsyslogd

          日誌服務重新載入成功後,便可以在 Log Client (Juniper SSG20) 上進行相關操作,同時檢查 CentOS是否可以接收到 Log Client (Juniper SSG20),所傳送過來的日誌訊息,從下列操作訊息可知,Log Client 使用隨機 Port 號 23754 傳送 Syslog 日誌訊息。
# tcpdump -tlni eth0 port 514     //確認是否可接收 Log Client 傳送的日誌訊息
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
 listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
 IP 192.168.1.20.23754 > 192.168.1.10.syslog: SYSLOG auth.info, length: 110
 IP 192.168.1.20.23754 > 192.168.1.10.syslog: SYSLOG auth.info, length: 132
 IP 192.168.1.20.23754 > 192.168.1.10.syslog: SYSLOG auth.info, length: 420
 ...略...


準備 LogAnalyzer 運作環境

          順利將 CentOS 主機設定為 Log Server 之後,接著準備 LogAnalyzer 的運作環境,也就是安裝網頁伺服器 Apache 以及 PHP 程式語言,下列操作為使用 YUM 套件管理工具,進行安裝 Apache、PHP 等相關套件的動作,並且可以於安裝套件完成後使用「php -m」指令方式,來查看PHP擴充模組(PHP Extension)是否正確載入,或者建立 test.php 檔案,並於檔案內容中呼叫 PHP 資訊頁面,來查看PHP擴充模組的載入情況(如圖 5 所示)。
# yum -y install httpd         //安裝 Apache 套件
# yum -y install php php-gd    //安裝 PHP 及擴充模組
# php -m | grep -E 'pcre|gd'   //確定有安裝 GD 及 PCRE 這二個 PHP Extension
 gd
 pcre
# chkconfig httpd on           //開機啟動 Apache 服務
# service httpd start          //啟動 Apache 服務
 Starting httpd:                    [  OK  ]
# vi /home/web/test.php        //建立 PHP 資訊頁面
 <?php
  phpinfo();
 ?>
圖5、確認 PHP 擴充模組 GD、Pcre 已正確載入

下載 LogAnalyzer 套件及初始化前置作業
          由於 LogAnalyzer 並沒有收錄於, YUM 套件管理工具以及相關軟體套件庫中,因此我們直接由官方網站上,下載最新穩定版本 v3.2.3 (v3-stable),下載完成後請先將 Tarball 檔案解壓縮,接著將解壓縮後的 LogAnalyzer 相關檔案,複製到 Apache 網站根目錄下即可,在準備開始初始化 LogAnalyzer 設定以前,請先進行下列步驟以便後續 LogAnalyzer 初始化順利進行,若不想建立空白設定檔(config.php),也可以複製「src/include/config.sample.php」檔案至 LogAnalyzer 目錄中,並且若 CentOS 主機有啟用 SELinux 安全增強機制,也請記得進行調整 SELinux 檔案權限,以免 LogAnalyzer 初始化環境安裝檔案(install.php)無法運作。
# cd /tmp   //切換路徑
# wget http://download.adiscon.com/loganalyzer/loganalyzer-3.2.3.tar.gz  //下載最新版本
 --2011-11-16 10:35:31--
 http://download.adiscon.com/loganalyzer/loganalyzer-3.2.3.tar.gz
 Resolving download.adiscon.com... 176.9.39.152
 Connecting to download.adiscon.com|176.9.39.152|:80... connected.
 HTTP request sent, awaiting response... 200 OK
 Length: 1009548 (986K) [application/x-gzip]
 Saving to: loganalyzer-3.2.3.tar.gz
 100%[===========================>] 1,009,548    193K/s   in 5.1s
 2011-11-16 10:35:37 (193 KB/s) - loganalyzer-3.2.3.tar.gz
# tar zxvf loganalyzer-3.2.3.tar.gz              //套件解壓縮
# rm -f loganalyzer-3.2.3.tar.gz                 //刪除 Tarball 檔案
# cp -a /tmp/loganalyzer-3.2.3/src/* /home/web/  //複製至網站根目錄下
# touch /home/web/config.php                     //建立空設定檔 (初始化設定屆時將寫入此檔案)
# chown apache /home/web/config.php              //確定 Web Service 可寫入設定至此檔案
# restorecon -Rv /home/web/                      //恢復  SELinux 權限


5、結語

          至此,FreeBSD 以及 CentOS 作業系統平台中,LogAnalyzer 相關運作環境前置準備作業都已經完成,在下一篇文章中首先會說明 LogAnalyzer 的初始化環境安裝流程,以及後續的進階設定調整項目及步驟,例如 關閉 LogAnalyzer 頁面中贊助區塊(Donate)、關閉 Message 自動彈出視窗功能、調整分析頁面筆數及字數截斷功能、LogAnalyzer 網頁中文化...等,以便將 LogAnalyzer 進行客製化,調整為更適合貴公司使用的軟體套件。
文章標籤: , ,