跳轉到內容

叢集手冊/序曲

來自華夏公益教科書,開放書籍,開放世界

序曲是一個基於感測器的監控系統,由於它的管理器模組,它是監控叢集的完美選擇。本指南解釋了序曲是什麼以及如何在虛擬 Ubuntu 系統中安裝它。

什麼是序曲?

[編輯 | 編輯原始碼]

序曲是一個所謂的“入侵檢測系統”(IDS)。入侵檢測系統分為“主機”和“網路”兩種。HIDS 直接在作業系統上保護和控制活動,它負責日誌和核心檔案以及登錄檔。另一方面,NIDS 負責網路監控系統。序曲結合了這兩種方法,因此屬於“混合入侵檢測系統”的類別。

管理器

[編輯 | 編輯原始碼]
圖 10.1:管理器和感測器之間的互動

序曲管理器是軟體的核心,所有感測器的訊息都彙集到一起,然後寫入資料庫。感測器可以觀察不同的位置,例如各種日誌或核心本身。這樣,為每個相關的介面設定一個感測器,然後連線到管理器。管理器收集、排序和規範化傳入資料,並以 **IDMEF** 格式儲存在建立的資料庫中。

除了序曲自帶的感測器外,還可以將第三方感測器註冊到管理器。

圖 10.2:可能的第三方感測器

軟體包

[編輯 | 編輯原始碼]

為了使序曲順利執行,有必要在系統上安裝一些軟體包。

  • prelude-manager: 序曲管理器正如前面所述,是軟體的核心。所有來自感測器的訊息都匯聚在這裡。
  • prelude-lml: 序曲日誌監控助手讀取各種日誌檔案,並將它們提供給管理器作為輸入。在本例中,我們稍後將從 auth.log 檔案中讀取,這將向我們提供有關係統中登入嘗試的資訊。
  • prewikka: Prewikka 以圖形方式準備管理器寫入資料庫的資料,以便我們也可以從瀏覽器中檢索它。
  • apache2: 我們需要一個 Apache Web 伺服器來開啟 Prewikka 提供的網站。
  • postgresql-9.1: 我們總共需要兩個資料庫,在這種情況下,建議使用 PostgreSQl 而不是 mySQL,稍後會詳細說明。管理器和 Prewikka 各自需要一個數據庫。

Shell 命令可以透過以下方案識別

# nano /etc/hosts

此安裝已在一個包含一個主節點和多個工作節點的虛擬系統上測試。所有機器上都使用 Ubuntu Server 的 64 位版本。為了方便安裝,建議使用命令
# sudo su
一次性授予適當的“root”許可權。

分步安裝

[編輯 | 編輯原始碼]
步驟 1

安裝所有軟體包:(所有軟體包僅安裝在主節點上)

# apt-get install prelude-lml prelude-manager prelude-correlator prelude-notify apache2 postgresql-9.1 prewikka

最終會詢問使用者是否要使用嚮導設定資料庫,這裡建議沒有經驗的使用者使用嚮導。
步驟 2

現在必須設定各種配置檔案。我們從序曲配置開始。

# nano /etc/prelude/default/global.conf
圖 10.3:重要提示,[節點地址] 必須被註釋掉。

在這裡,必須輸入“節點名稱”和正確的地址。在虛擬機器上,對於本地環境,請使用以下地址“127.0.0.1”。重要的是,[節點地址] 也必須在這裡被註釋掉!

步驟 3

啟動序曲管理器:
# /etc/init.d/prelude-manager start

在這裡,我們將被告知序曲管理器尚未啟用。錯誤訊息中給出了相應的匹配檔案。

序曲管理器已停用,請根據您的需要調整配置 * 然後在 /etc/default/prelude-manager 中將 RUN 設定為“yes”以啟用它。

在以下檔案中啟用序曲管理器後,我們使用上面的命令再次啟動它。

# nano /etc/default/prelude-manager
步驟 4

必須在管理器中註冊序曲感測器,以便它們可以相互通訊。為此,我們在這一步中將序曲 - LML 感測器註冊到管理器。在管理器上,我們執行以下命令來註冊 prelude-lml 感測器。

# prelude-admin register prelude-lml ’idmef:w admin:r’ 127.0.0.1 –uid 0 –gid 0
圖 10.4:管理器現在正在等待密碼

現在它正在等待伺服器生成的密碼的輸入。由於我們的 Prelude-lml 工具執行在與管理器相同的伺服器上,因此應使用第二個終端視窗。

# prelude-admin registration-server prelude-manager

圖 10.5:現在必須在管理器中輸入感測器生成的密碼

此命令為我們的感測器生成一個密碼,該密碼是註冊時所需的。在管理器中成功輸入密碼後,必須再次確認註冊。現在管理器和感測器(Prelude-lml)相互連線。

圖 10.6:註冊成功!

步驟 5

我們已經在步驟 2 中配置了管理器,現在必須設定感測器(Prelude-lml)。為此,我們編輯以下檔案

# nano /etc/prelude-lml/prelude-lml.conf

這裡需要註釋掉兩行程式碼,以便感測器設定正確的伺服器地址。

[prelude]

server-addr = 127.0.0.1
步驟 6

序曲現在已經完全可以使用了,但我們仍然缺乏結果的圖形表示,我們可以透過在瀏覽器中顯示 Prewikka 來獲得。因此,再次建議檢查資料庫。

# nano /etc/prewikka/prewikka.conf
清單 10.1 資料庫名稱和使用者(示例)
type: pgsql
 host: localhost
 user: prelude
 pass: prelude
 name: prelude

 [database]
 type: pgsql
 host: localhost
 user: prewikka
 pass: prewikka
 name: prewikka
步驟 7

最後,可以配置 Apache 伺服器,以便它也從 Prewikka 獲取必要的檔案。

# nano /etc/apache2/apache2.conf

在該檔案的末尾,必須新增以下程式碼
清單 10.2 Apache 的 Prewikka 配置

{{TT block Alias /prewikka/prewikka/ /usr/share/prewikka/htdocs/ScriptAlias /prewikka/ /usr/share/prewikka/cgi-bin/prewikka.cgi<Directory /usr/share/prewikka/htdocs/> Options None AllowOverride None Order allow,deny Allow from all </Directory> <Directory /usr/share/prewikka/cgi-bin/> AllowOverride None Options ExecCGI <IfModule mod_mime.c> AddHandler cgi-script .cgi </IfModule> Order allow,deny Allow from all </Directory> }} 重新配置後,必須重新啟動 Apache。

# /etc/init.d/apache2 restart

步驟 8

必須使用以下守護程序啟動 Prewikka(在每次重啟後)

# /usr/bin/prewikka-httpd
步驟 9

現在可以在瀏覽器中訪問 Prewikka。(當然,請用您的 eth0 inet 地址替換 IP 地址)
192.168.178.56/prewikka/
名稱:admin
密碼:admin

安裝過程中的問題

[編輯 | 編輯原始碼]

在安裝過程中,可能會出現一些問題,以下是我想簡要討論的一些問題。

步驟 8 中缺乏訪問許可權

[編輯 | 編輯原始碼]

在第 8 步啟動 Prewikka 時,最終會出現一個錯誤,報告 prewikka.conf 檔案許可權不足。如果出現此錯誤,則必須使用以下命令再次調整該檔案的許可權。

# chmod 755 /etc/prewikka/prewikka.conf

PreSQL 而不是 mySQL

[編輯 | 編輯原始碼]

我們使用 PreSQL 而不是 mySQL 的原因是 Prelude 使用過時的資料庫設定。它使用過時的命令“TYPE = InnoDB”,但是 mySQL 5.0+ 只接受命令“ENGINE = InnoDB”。這確實可以在以下檔案中進行修正

# nano /usr/share/libpreludedb/classic/mysql.sql

它也接受了這個檔案,但隨後由於 libpreludedb 中的錯誤,無法從 prelude-manager 啟動。
因此,建議為 Prelude 使用 PreSQL 資料庫。

我們使用 Prewikka,以便我們從所有感測器收集的資料,Prelude Manager 都能以圖形化的 Web 介面清晰地顯示出來。在這裡,我們獲得了所有必要的資訊,這些資訊也可以在 Prelude Manager 資料庫中找到。在本例中,我們只註冊了 Prelude Manager 和 Prelude-LML 感測器,它當前讀取系統的 auth.log 檔案。

圖 10.7:在 Web 介面中,我們看到了使用的感測器和管理器
圖 10.6:在 Web 介面中,我們看到了 auth.log 檔案提供的所有訊息。

有用網站

[編輯 | 編輯原始碼]
華夏公益教科書