close
1.3.2. Nagios安裝 Nagios過程中,請依序執行以下步驟: .建立Nagios帳號 轉換權限為root帳號 su –l 建立名為nagios的新帳號並設定密碼 /usr/sbin/useradd –m nagios passwd nagios 建立名為nagcmd的新群組帳號,以允許外部指令可以經由Web介面傳送, 並將系統的nagios與apache帳號,加進此群組。指令如下: /usr/sbin/groupadd nagcmd /usr/sbin/usermod –a –G nagcmd nagios /usr/sbin/usermod –a –G nagcmd apache .下載Nagios原始檔與相關外掛附件(Plugins) 建立存放Nagios與Plugins的目錄,例如: mkdir ~/downloads cd ~/downloads 下載Nagios及其Plugins,目前最新穩定版本分別為3.0.6與1.4.13,指令如下: wget http://osdn.dl.sourceforge.net/s ... nagios-3.0.6.tar.gz wget http://osdn.dl.sourceforge.net/s ... ugins-1.4.13.tar.gz .下載Nagios之NRPE addon 為了讓Nagios伺服器可以監看遠端Linux主機,需要額外安裝NRPE套件。 (被監看的Linux主機亦須安裝,詳如後述)。下載方式為: wget http://osdn.dl.sourceforge.net/s ... os/nrpe-2.12.tar.gz .編譯與安裝Nagios 解壓縮Nagios原始檔: cd ~/downloads tar xzf nagios-3.0.6.tar.gz cd nagios-3.0.6 執行Nagios安裝設定程式,並提供nagios群組名稱nagcmd作為輸入參數: ./configure --with-command-group=nagcmd 編譯Nagios原始檔: make all 分別安裝Nagios Binary程式、初始程序init script、設定範例檔及設定外部指令存放目錄之權限, 指令分別如下: make install make install-init make install-config make install-commandmode .客製化設定值 Nagios安裝完成後,一併安裝的設定範例檔位於/usr/local/nagios/etc,一般而言可正常運作。 另/usr/local/nagios/etc/objects/contacts.cfg設定檔中,需將nagiosadmin改成實際接收訊息的Email帳號。詳見圖4。 圖4:變更Nagios訊息接收帳號 .設定Nagios Web介面 首先安裝Nagios之Web設定值到Apache conf.d目錄下: make install-webconf 替Nagios之Web介面進行身分驗證保護,使用HTTP Basic Authentication方式: htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin 此代表將系統詢問的密碼,存放於/usr/local/nagios/etc/htpasswd.users,而使用此密碼的帳號 為nagiosadmin。詳見圖5。 圖5:設定Apache Basic Authentication密碼 接著請重新啟動Apache以套用新的設定值。 service httpd restart .編譯與安裝Nagios之外掛附件(Plugins) 編譯與安裝Nagios之Plugins時,同樣進入下載目錄,並依照前述安裝Nagios之方式進行安裝: cd ~/downloads tar xzf nagios-plugins-1.4.13.tar.gz cd nagios-plugins-1.4.13 編譯與安裝Nagios之Plugins。 ./configure --with-nagios-user=nagios --with-nagios-group=nagios make make install .編譯與安裝NRPE cd ~/downloads tar xzf nrpe-2.12.tar.gz cd nrpe-2.12 ./configure make all make install-plugin .啟動Nagios 將Nagios服務登錄到系統服務列表中: chkconfig add nagios chkconfig nagios on 檢驗Nagios之設定值是否正確: /usr/local/nagios/bin/nagios –v /usr/local/nagios/etc/nagios.cfg 詳見圖6。 圖6:檢查Nagios主設定檔正確性 之後請啟動Nagios。 service nagios start .修改SELinux設定 Fedora作業系統存在SELinux (Security Enchanced Linux)機制,由於SELinux造成Nagios Web介面 ”Internal Server Error”錯誤訊息。因此需要將SELinux之狀態改為Permissive mode, 首先檢查目前SELinux狀態: getenforce 並將SELinux改為Permissive mode setenforence 0 以上的方式僅套用於本次開機情況,若想將此設定設為永久,以避免重開機後未保留情況。 必須修改/etc/selinux/config並重開機。此外,如果不想或不適合變更SELinux模式情況下, 則可執行以下指令,讓Nagios在SELinux的Enforcing mode進行設定。 chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/ chcon -R -t httpd_sys_content_t /usr/local/nagios/share/ .登入Nagios Web介面 此階段應可正常使用Nagios之Web介面。請使用瀏覽器登入下列URL: http://localhost/nagios/ 首先系統會要求輸入帳號/密碼,請輸入前面htpasswd所設定的密碼,詳見圖7。 圖7:Nagios Web介面登入 可看到Nagios首頁,詳見圖8。 圖8:Nagios Web介面首頁 .其他調整 最後檢查主機是否可接受HTTP連線,如是否使用本機防火牆阻擋連線,若阻擋則請重新設定允許連線。 1.4. 安裝Linux主機之Nagios Agent 有關Nagios監看Linux主機,常見方式為使用Nagios的NRPE套件協助,此外尚需要Nagios Plugins, 相關步驟依序如下: .建立Nagios帳號 轉換權限為root帳號 su –l 建立名為nagios的新帳號並設定密碼 /usr/sbin/useradd –m nagios passwd nagios .下載NRPE與Nagios Plugins 目前最新版為2.12與1.4.13。指令如下: wget http://osdn.dl.sourceforge.net/s ... os/nrpe-2.12.tar.gz wget http://osdn.dl.sourceforge.net/s ... ugins-1.4.13.tar.gz 假設下載後存放的目錄為~/downloads。 .編譯與安裝Nagios Plugins cd ~/downloads tar xzf nagios-plugins-1.4.13.tar.gz cd nagios-plugins-1.4.13 ./configure --with-nagios-user=nagios --with-nagios-group=nagios make make install nagios 3.3.1裝到這裡就可以了 .編譯與安裝NRPE cd ~/downloads tar xzf nrpe-2.12.tar.gz cd nrpe-2.12 ./configure make all make install-plugin make install-daemon make install-daemon-config make install-xinetd .設定NRPE為系統服務 如果無法編譯成功 yum -y install openssl-devel –限定可連線之監看主機IP 修改/etc/xinetd.d/nrpe,限定僅有設定之Nagios監看主機。 如圖1所示的10.3.89.17,主要修改only_from設定值,將其改為: only_from = 127.0.0.1 10.3.89.17 其中兩個IP以空白鍵區別。詳見圖12。 圖12:Xinetd NRPE設定 –指定NRPE欲使用之系統通訊埠 修改/etc/service,使NRPE可以接收監看主機的連線需求。 在此假定NRPE所用的通訊埠為TCP 5666,即增加下行於檔案中: nrpe 5666/tcp # nrpe daemon –啟動xinetd服務 service xinetd start 由於Fedora主機可能預設無安裝xinetd套件,所以系統出現無法辨識xinetd服務時, 請執行以下指令: yum install xinetd 啟動服務 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d –檢查NRPE服務是否正常 /usr/local/nagios/libexec/check_nrpe -H localhost 若回應的訊息為NRPE及其版本資訊,即代表安裝成功。 .修改NRPE設定檔 NRPE主要設定檔為位於/usr/local/nagios/etc/nrpe.cfg,其中包含用來檢查的指令, 如下列為檢查使用者的check_users,與檢查負載的check_load指令。 -w代表Warning;-c代表Critical,分別表示訊息嚴重等級。如check_users。 若系統同時使用者達到5個,則送出Warning等級訊息;若達到10個,就送出Critical等級訊息。 詳見圖13。 圖13:NRPE設定檔(nrpe.cfg)設定 另外值得注意的是,有關nrpe.cfg內的指令,都是可以直接在終端機執行。若系統目前使用者到達6人 ,則當執行nrpe.cfg內的check_users設定內容的話,將會出現Warning訊息。詳見圖14。 圖14:NRPE check_users指令展示 此外在command[xxxx]中,其中xxxx代表可透過chek_nrpe指令,呼叫相關檢查指令,請依序進行檢查: /usr/local/nagios/libexec/check_nrpe -H localhost -c check_users /usr/local/nagios/libexec/check_nrpe -H localhost -c check_load /usr/local/nagios/libexec/check_nrpe -H localhost -c check_hda1 /usr/local/nagios/libexec/check_nrpe -H localhost -c check_total_procs /usr/local/nagios/libexec/check_nrpe -H localhost -c check_zombie_procs 若回應預期訊息,代表功能正常;反之,回應找不到指令的錯誤訊息,代表在”-c”後, 所接的指令名稱有誤,或該指令名稱,對應/usr/local/nagios/etc/nrpe.cfg的設定值有誤, 請再檢查排除。 例如在check_hda1設定,由於NRPE預設是IDE介面硬碟機/dev/hda1, 假如系統實際使用的硬碟機,為SCSI介面的(/dev/sda1), 則請將/usr/local/nagios/etc/nrpe.cfg 的 command[check_hda1]=/usr/local/nagios/libexec/check_disk –w 20% -c 10% -p /dev/hda1 改為 command[check_sda1]=/usr/local/nagios/libexec/check_disk –w 20% -c 10% -p /dev/sda1 將/dev/hda1改為/dev/sda1。 另外command[check_hda1]改為command[check_sda1]僅為方便識別,可自行決定是否變更, 或改為通用名稱,如將hda1改為disk1。 1.5. Nagios伺服器與用戶端串連設定 1.5.1. Linux受監看主機連結設定 在Nagios伺服器與Linux主機用戶端的連結,採用NRPE進行資訊溝通。 當Nagios伺服器安裝NRPE後,即可使用check_nrpe指令測試,指令為: /usr/local/nagios/libexec/check_nrpe –H 10.3.89.34 若順利回應NRPE V2.12訊息資訊,代表測試結果正常。 另亦可使用下列指令,檢查遠端Linux主機的使用者數量。 /usr/local/nagios/libexec/check_nrpe -H 10.3.89.34 -c check_users 修改/usr/local/nagios/etc/objects/commands.cfg,增加check_nrpe設定,詳見圖17。 圖17:commands設定檔設定 以類似設定Windows主機監看的方式,在/usr/local/nagios/etc/objects/增加名為linux.cfg的檔案, 詳如圖18。檔案內容與Windows主機相似。 須注意的是,在check_command後的設定值,check_nrpe!為固定的。 遠端被監看Linux主機/usr/local/nagios/etc/nrpe.cfg的檢查指令,如check_load與check_users。 host_name名稱,重複出現的地方,請務必設定相同。 address的IP,請設定遠端被監看Linux主機的IP位址。 圖18:linux.cfg設定檔設定 1.5.2. 檢查與啟動 請以下方式檢查NRPE設定是否正確: /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 之後重新啟動Nagios,方式為: service nagios restart 如果無錯誤出現,當再次檢視Nagios Web介面時,將出現圖19之畫面。 圖19:Nagios監看結果 可看出Service Detail選項中,出現3台主機,分別為Linux、Windows 2000與localhost,其中前2台分別為被監看的Linux與Windows主機名稱,以及分別在windows.cfg與linux.cfg所設定的host_name,而localhost則是Nagios安裝後,包含本機監看項目。在Linux主機項目的使用者數量,由於目前的使用者超過5人,所以顯示Status為WARNING。 最後關於Nagios操作,圖形化介面相當簡便,功能項目亦十分直覺,使用上不成問題,安裝完成後可自行嘗試使用。 3. 結語 本文所呈現的是,系統監看中有名的Nagios工具之安裝說明,所採用的架構為:1台Linux主機作為監看伺服器,對Windows與Linux 2台主機進行監看。文中簡介3台主機分別需要安裝與設定的項目,並且經過筆者實際測試。依文中步驟,應可正常完成簡易監看環境之建立。若文中有不足或讀者想進一步深入了解Nagios之額外應用,建議參考官方網站之參考手冊[4]、[5],筆者提到的許多設定,在官方手冊上亦可找到。 而在本文所介紹的架構,尚有可加強之部分,如針對安全性之增強,讀者可參考Nagios官方手冊,使用SSL或SSH加密方式,增加Nagios伺服器與遠端主機資訊傳遞之安全,或參考筆者前幾期技術專欄所提的 OpenVPN加密通道建立方式,同樣可增加傳遞資料的安全防護。最後感謝讀者花時間閱讀本期專欄,也期望本文對您有所幫助。 4. 參考資料 [1]Nagios官方網站, http://www.nagios.org/ [2]Nagios Monitoring Windows Machines, http://nagios.sourceforge.net/docs/3_0/monitoring-windows.html [3]Nagios Monitoring Linux/Unix Machines, http://nagios.sourceforge.net/docs/3_0/monitoring-linux.html [4]Nagios Official Document, http://nagios.sourceforge.net/docs/3_0/ [5]Nagios NRPE Official Document, http://nagios.sourceforge.net/docs/nrpe/NRPE.pdf |
創作者介紹
NetYea 網頁設計 發表在 痞客邦 留言(0) 人氣()
留言列表