<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    安全注意事項

    介紹

    本文旨在簡要概述在安裝Nagios時應記住的一些事情,以便以安全的方式進行設置。

    您的監視框應視為其他系統的后門。在許多情況下,可能允許Nagios服務器通過防火墻訪問,以監視遠程服務器。在大多數情況下,都可以向那些遠程服務器查詢各種信息。為了查詢遠程系統,始終為監視服務器提供一定級別的信任。這為潛在的攻擊者提供了誘人的系統后門。如果攻擊者首先破壞監視服務器,則他們可能會更輕松地進入您的其他系統。如果您使用共享的SSH密鑰來監視遠程系統,則尤其如此。

    如果入侵者能夠將檢查結果或外部命令提交給Nagios守護程序,則它們有可能提交偽造的監視數據,用偽造的通知使您發瘋,或者觸發事件處理程序腳本。如果您具有重新啟動服務,重啟電源等事件處理程序腳本,那么這可能會特別成問題。

    另一個值得關注的領域是入侵者在通過網絡嗅探監視數據(狀態信息)的能力。如果通信通道未加密,攻擊者可以通過查看監視信息來獲取有價值的信息。以以下情況為例:攻擊者在一段時間內捕獲了網絡上的監視數據,并分析了系統的典型CPU和磁盤負載使用情況以及通常登錄到系統中的用戶數量。然后,攻擊者可以在不被察覺的情況下確定入侵系統并使用其資源(CPU等)的最佳時間。

    以下是一些技巧,可幫助確保在實施基于Nagios的監視解決方案時確保系統安全…

    最佳實踐

    1. 使用專用的監視框

      。我建議您在專門用于監視(可能還有其他管理任務)的服務器上安裝Nagios。保護您的監視服務器,使其成為網絡上最重要的服務器之一。將運行的服務保持在最低水平,并通過TCP包裝程序,防火墻等鎖定對它的訪問。由于Nagios服務器被允許與您的服務器通信,并且可能能夠刺穿您的防火墻,因此允許用戶訪問您的監視服務器。安全風險。請記住,如果您的機器上裝有本地帳戶,通過系統安全漏洞獲得root用戶訪問權限總是比較容易的。

      監控箱

    2. 不要把Nagios當作根源。Nagios不需要以root用戶身份運行,所以不要這樣做。您可以使用主配置文件中的nagios_usernagios_group指令,告訴Nagios啟動后放棄特權并以另一個用戶/組的身份運行。如果需要執行需要root訪問權限的事件處理程序或插件,則可能需要嘗試使用sudo

    3. 鎖定檢查結果目錄。確保只有nagios用戶才能在檢查結果路徑中進行讀取/寫入。如果除nagios(或root)以外的用戶能夠寫入此目錄,他們可以將虛假的主機/服務檢查結果發送到Nagios守護程序。這可能導致煩惱(虛假通知)或安全問題(啟動事件處理程序)。

    4. 鎖定外部命令文件。如果啟用外部命令,請確保在/ usr / local / nagios / var / rw目錄上設置適當的權限。您只需要Nagios用戶(通常為nagios)和Web服務器用戶(通常為nonehttpdapache2www-data))具有寫入命令文件的權限。如果將Nagios安裝在專用于監視和管理任務且不用于公共帳戶的計算機上,那應該沒問題。如果已將其安裝在公共或多用戶計算機上(不建議使用),則允許Web服務器用戶對命令文件具有寫權限可能是一個安全問題。畢竟,您不希望您系統上的任何用戶都可以通過外部命令文件控制Nagios。在這種情況下,我建議只授予對命令文件的寫訪問Nagios的用戶和使用類似的cgiwrap運行的CGI的Nagios的用戶,而不是

    5. 在CGI中要求身份驗證。我強烈建議您要求身份驗證才能訪問CGI。完成此操作后,請閱讀有關經過身份驗證的聯系人具有的默認權限的文檔,并且僅在必要時才授權特定聯系人獲得其他權限。可以在此處找到有關設置身份驗證和配置授權權限的說明。如果您在CGI配置文件中使用use_authentication指令禁用了CGI身份驗證功能,則命令CGI將拒絕將任何命令寫入外部命令文件。畢竟,您不希望世界能夠控制Nagios嗎?

    6. 實施增強的CGI安全措施。我強烈建議您考慮按此處所述對CGI實施增強的安全措施。這些措施可以幫助確保您用于訪問Nagios Web界面的用戶名/密碼不會被第三方攔截。

    7. 在命令定義中使用完整路徑。定義命令時,請確保指定要執行的任何腳本或二進制文件的完整路徑(而不是相對路徑)。

    8. 使用$ USERn $宏隱藏敏感信息。CGI讀取主配置文件對象配置文件,因此您不想在其中保留任何敏感信息(用戶名,密碼等)。如果需要在命令定義中指定用戶名和/或密碼,請使用$ USERn $ 將其隱藏。$ USERn $宏在一個或多個資源文件中定義。CGI不會嘗試讀取資源文件的內容,因此您可以對它們設置更多的限制性權限(600或660)。有關如何定義$ USERn $宏的示例,請參見Nagios發行版基礎中的示例resource.cfg文件。

    9. 從宏中刪除危險字符。在通知中使用宏之前,請使用invalidate_macro_output_chars指令從$ HOSTOUTPUT $,$ SERVICEOUTPUT $,$ HOSTPERFDATA $和$ SERVICEPERFDATA $宏中刪除危險字符,然后再將它們用于通知等。危險字符可以是shell可能解釋的任何東西,從而打開一個安全孔。這樣的一個示例是$ HOSTOUTPUT $,$ SERVICEOUTPUT $,$ HOSTPERFDATA $和/或$ SERVICEPERFDATA $宏中存在反引號(`)字符,這可以使攻擊者以nagios用戶的身份執行任意命令(一個很好的理由是不要以root用戶身份運行Nagios。

    10. 對遠程代理的安全訪問

      。確保使用防火墻,訪問列表等鎖定對遠程系統上的代理(NRPE,NSClient,SNMP等)的訪問。您不希望每個人都能在系統中查詢狀態信息。攻擊者可能會使用此信息來執行遠程事件處理程序腳本或確定不被注意的最佳時間。

      遠程代理

    11. 安全的通信渠道

      。確保盡可能對不同Nagios安裝之間以及Nagios服務器與監視代理之間的通信通道進行加密。您不希望某人能夠嗅探整個網絡中的狀態信息。攻擊者可以使用此信息來確定不被注意的最佳時間。

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类