在CentOS上配置基於主機的入侵檢測系統(IDS)

  • 阿里雲  >  教程中心   >  linux教程  >  在CentOS上配置基於主機的入侵檢測系統(IDS)  
  • 在CentOS上配置基於主機的入侵檢測系統(IDS)
  • 發佈時間:2018-01-19 來源:網絡 上傳者:用戶html

    關鍵字: 檢測 主機linux

    發表文章
  • 摘要:全部系統管理員想要在他們生產服務器上首先要部署的安全手段之一,就是檢測文件篡改的機制——不只僅是文件內容,並且也包括它們的屬性。AIDE(「高級入侵檢測環境」的簡稱)是一個開源的基於主機的入侵檢測系統。AIDE經過檢查大量文件屬性的不一致性來檢查系統二進制文件和基本配置文件的完整性,這些文件屬性包括權限、文件類型、索引節點、連接數、連接名、用戶、組、文件大小、塊計數、修改時間、添加時間、建立時間、acl、SELinux安全上下文、xattrs,以及md5/sha校驗值在內的各
  • 全部系統管理員想要在他們生產服務器上首先要部署的安全手段之一,就是檢測文件篡改的機制——不只僅是文件內容,並且也包括它們的屬性。正則表達式

    在CentOS上配置基於主機的入侵檢測系統(IDS)

    AIDE (「高級入侵檢測環境」的簡稱)是一個開源的基於主機的入侵檢測系統。AIDE經過檢查大量文件屬性的不一致性來檢查系統二進制文件和基本配置文件的完整性,這些文件屬性包括權限、文件類型、索引節點、連接數、連接名、用戶、組、文件大小、塊計數、修改時間、添加時間、建立時間、acl、SELinux安全上下文、xattrs,以及md5/sha校驗值在內的各類特徵。數據庫

    AIDE經過掃描一臺(未被篡改)的Linux服務器的文件系統來構建文件屬性數據庫,之後將服務器文件屬性與數據庫中的進行校對,而後在服務器運行時對被修改的索引了的文件發出警告。出於這個緣由,AIDE必須在系統更新後或其配置文件進行合法修改後從新對受保護的文件作索引。centos

    對於某些客戶,他們可能會根據他們的安全策略在他們的服務器上強制安裝某種入侵檢測系統。可是,無論客戶是否要求,系統管理員都應該部署一個入侵檢測系統,這一般是一個很好的作法。安全

    在 CentOS或RHEL 上安裝AIDE

    AIDE的初始安裝(同時是首次運行)最好是在系統剛安裝完後,而且沒有任何服務暴露在互聯網甚至局域網時。在這個早期階段,咱們能夠未來自外部的一切闖入和破壞風險降到最低限度。事實上,這也是確保系統在AIDE構建其初始數據庫時保持乾淨的惟一途徑。(LCTT 譯註:固然,若是你的安裝源自己就存在安全隱患,則沒法創建可信的數據記錄)服務器

    出於上面的緣由,在安裝完系統後,咱們能夠執行下面的命令安裝AIDE:網絡

    # yum install aide

    咱們須要將咱們的機器從網絡斷開,並實施下面所述的一些基本配置任務。app

    配置AIDE

    默認配置文件是/etc/aide.conf,該文件介紹了幾個示例保護規則(如FIPSR,NORMAL,DIR,DATAONLY),各個規則後面跟着一個等號以及要檢查的文件屬性列表,或者某些預約義的規則(由+分隔)。你也可使用此種格式自定義規則。ide

    在CentOS上配置基於主機的入侵檢測系統(IDS)

    FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256NORMAL = FIPSR+sha512

    例如,上面的例子說明,NORMAL規則將檢查下列屬性的不一致性:權限(p)、索引節點(i)、連接數(n)、用戶(u)、組(g)、大小(s)、修改時間(m)、建立時間(c)、ACL(acl)、SELinux(selinux)、xattrs(xattr)、SHA256/SHA512校驗和(sha256和sha512)。

    定義的規則可靈活地用於不一樣的目錄和文件(用正則表達式表示)。

    在CentOS上配置基於主機的入侵檢測系統(IDS)

    條目以前的感嘆號(!)告訴AIDE忽略子目錄(或目錄中的文件),對於這些能夠另外定義規則。

    在上面的例子中,PERMS是用於/etc機器子目錄和文件的默認規則。然而,對於/etc中的備份文件(如/etc/.*~)則不該用任何規則,也沒有規則用於/etc/mtab文件。對於/etc中的其它一些選定的子目錄或文件,使用NORMAL規則替代默認規則PERMS。

    定義並應用正確的規則到系統中正確的位置,是使用AIDE最難的一部分,但做一個好的判斷是一個良好的開始。做爲首要的一條規則,不要檢查沒必要要的屬性。例如,檢查/var/log或/var/spool裏頭的文件的修改時間將致使大量誤報,由於許多的應用程序和守護進程常常會寫入內容到該位置,而這些內容都沒有問題。此外,檢查多個校驗值可能會增強安全性,但隨之而來的是AIDE的運行時間的增長。

    可選的,若是你使用MAILTO變量指定電子郵件地址,就能夠將檢查結果發送到你的郵箱。將下面這一行放到/etc/aide.conf中的任何位置便可。

    aliyunzixun@xxx.com 首次運行AIDE

    運行如下命令來初始化AIDE數據庫:

    # aide --init

    在CentOS上配置基於主機的入侵檢測系統(IDS)

    根據/etc/aide.conf生成的/var/lib/aide/aide.db.new.gz文件須要被重命名爲/var/lib/aide/aide.db.gz,以便AIDE能讀取它:

    # mv /var/lib/aide/aide.db.new.gz /var/lib/aide.db.gz

    如今,是時候來將咱們的系統與數據庫進行第一次校對了。任務很簡單,只需運行:

    # aide

    在沒有選項時,AIDE假定使用了--check選項。

    若是在數據庫建立後沒有對系統作過任何修改,AIDE將會以OK信息來結束本次校對。

    在CentOS上配置基於主機的入侵檢測系統(IDS)

    生產環境中管理AIDE

    在構建了一個初始AIDE數據庫後,做爲不斷進行的系統管理活動,你經常須要由於某些合法的理由更新受保護的服務器。每次服務器更新後,你必須從新構建AIDE數據庫,以更新數據庫內容。要完成該任務,請執行如下命令:

    # aide --update

    要使用AIDE保護生產系統,可能最好經過任務計劃調用AIDE來週期性檢查不一致性。例如,要讓AIDE天天運行一次,並將結果發送到郵箱:

    # crontab -e0 0 * * * /usr/sbin/aide --check | /usr/bin/mail -s "AIDE run for $HOSTNAME" aliyunzixun@xxx.com 測試AIDE檢查文件篡改

    下面的測試環境將演示AIDE是如何來檢查文件的完整性的。

    測試環境 1

    讓咱們添加一個新文件(如/etc/fake)。

    # cat /dev/null > /etc/fake

    在CentOS上配置基於主機的入侵檢測系統(IDS)

    測試環境 2

    讓咱們修改文件權限,而後看看它是否被檢測到。

    # chmod 644 /etc/aide.conf

    測試環境 3

    最後,讓咱們修改文件內容(如,添加一個註釋行到/etc/aide.conf)。

    echo "#This is a comment" >> /etc/aide.conf

    在CentOS上配置基於主機的入侵檢測系統(IDS)

    上面的截圖中,第一欄顯示了文件的屬性,第二欄是AIDE數據庫中的值,而第三欄是更新後的值。第三欄中空白部分表示該屬性沒有改動(如本例中的ACL)。

    結尾

    更新數據庫

    若是是合法的修改,那麼也會被檢測出有問題。此時就須要更新數據了。

    [root@A app]# aide -c /etc/aide.conf --update       #更新數據庫

    若是你曾經發現你本身有很好的理由確信系統被入侵了,可是第一眼又不能肯定到底哪些東西被改動了,那麼像AIDE這樣一個基於主機的入侵檢測系統就會頗有幫助了,由於它能夠幫助你很快識別出哪些東西被改動過,而不是經過猜想來浪費寶貴的時間。

    via: http://xmodulo.com/host-intrusion-detection-system-centos.html

    做者:Gabriel Cánepa 譯者:GOLinux 校對:wxy

    本文由 LCTT 原創翻譯,Linux中國 榮譽推出

    原文: http://xmodulo.com/host-intrusion-detection-system-centos.html 做者: Gabriel Cánepa 
    譯文: LCTT http://linux.cn/article-4242-1.html 譯者: GOLinux

  • 以上是在CentOS上配置基於主機的入侵檢測系統(IDS)的內容,更多 檢測 主機 的內容,請您使用右上方搜索功能獲取相關信息。
相關文章
相關標籤/搜索