通過(guò)Auditbeat收集系統(tǒng)審計(jì)數(shù)據(jù)并監(jiān)控文件更改
本文介紹如何通過(guò)阿里云Auditbeat收集Linux系統(tǒng)的審計(jì)框架數(shù)據(jù),監(jiān)控系統(tǒng)文件的更改情況,并生成可視化圖表。
背景信息
Auditbeat是輕量型的審計(jì)日志采集器,可以收集Linux審計(jì)框架的數(shù)據(jù),并監(jiān)控文件完整性。例如使用Auditbeat從Linux Audit Framework收集和集中審核事件,以及檢測(cè)對(duì)關(guān)鍵文件(如二進(jìn)制文件和配置文件)的更改,并確定潛在的安全策略沖突,生成標(biāo)準(zhǔn)的結(jié)構(gòu)化數(shù)據(jù),方便分析。而且Auditbeat能夠與Logstash、Elasticsearch和Kibana無(wú)縫集成。
Auditbeat支持兩種模塊:
Auditd
Auditd模塊接收來(lái)自Linux審計(jì)框架的審計(jì)事件,審計(jì)框架是Linux內(nèi)核的一部分。Auditd模塊可以建立對(duì)內(nèi)核的訂閱,以便在事件發(fā)生時(shí)接收它們,詳情請(qǐng)參見(jiàn)官方Auditd文檔。
重要在啟用Auditd模塊的情況下運(yùn)行Auditbeat時(shí),您可能會(huì)發(fā)現(xiàn)其他監(jiān)控工具會(huì)干擾Auditbeat。例如,如果注冊(cè)了另一個(gè)進(jìn)程(例如auditd)來(lái)從Linux Audit Framework接收數(shù)據(jù),則可能會(huì)遇到錯(cuò)誤。此時(shí)可以使用
service auditd stop
命令停止該進(jìn)程。File Integrity
File Integrity模塊可以實(shí)時(shí)監(jiān)控指定目錄下的文件的更改情況。如果要在Linux系統(tǒng)中使用File Integrity,請(qǐng)確保Linux內(nèi)核支持inotify(2.6.13以上內(nèi)核均已安裝inotify),詳情請(qǐng)參見(jiàn)官方File Integrity文檔。
說(shuō)明目前官方Auditbeat System模塊還處于實(shí)驗(yàn)階段,將來(lái)的版本中可能刪除或者更改,建議不要使用。更多模塊詳情請(qǐng)參見(jiàn)modules。
前提條件
您已完成以下操作:
創(chuàng)建阿里云Elasticsearch實(shí)例。
詳情請(qǐng)參見(jiàn)創(chuàng)建阿里云Elasticsearch實(shí)例。
開(kāi)啟阿里云ES實(shí)例的自動(dòng)創(chuàng)建索引功能。
出于安全考慮,阿里云ES默認(rèn)不允許自動(dòng)創(chuàng)建索引。但是Beats目前依賴該功能,因此如果采集器Output選擇為Elasticsearch,需要開(kāi)啟自動(dòng)創(chuàng)建索引功能,詳情請(qǐng)參見(jiàn)快速訪問(wèn)與配置。
創(chuàng)建阿里云ECS實(shí)例,且該ECS實(shí)例與阿里云ES實(shí)例處于同一專有網(wǎng)絡(luò)VPC(Virtual Private Cloud)下。
詳情請(qǐng)參見(jiàn)自定義購(gòu)買實(shí)例。
重要Beats目前僅支持Alibaba Cloud Linux (Alinux)、RedHat和CentOS這三種操作系統(tǒng)。
在目標(biāo)ECS實(shí)例上安裝云助手和Docker服務(wù)。
詳情請(qǐng)參見(jiàn)安裝云助手客戶端和部署并使用Docker(Alibaba Cloud Linux 2)。
操作步驟
- 登錄阿里云Elasticsearch控制臺(tái)。
在左側(cè)導(dǎo)航欄,單擊Beats數(shù)據(jù)采集中心。
在創(chuàng)建采集器區(qū)域中,單擊Auditbeat。
安裝并配置采集器。
詳情請(qǐng)參見(jiàn)采集ECS服務(wù)日志和采集器YML配置,本文使用的配置如下。
說(shuō)明勾選啟用Monitoring,系統(tǒng)會(huì)在Kibana控制臺(tái)開(kāi)啟Auditbeat服務(wù)的監(jiān)控。
勾選啟用Kibana Dashboard,系統(tǒng)會(huì)在Kibana控制臺(tái)中生成圖表,無(wú)需額外配置Yml。由于阿里云Kibana配置在VPC內(nèi),因此需要先在Kibana配置頁(yè)面開(kāi)通Kibana私網(wǎng)訪問(wèn)功能,詳情請(qǐng)參見(jiàn)配置Kibana公網(wǎng)或私網(wǎng)訪問(wèn)白名單。
本文使用默認(rèn)的auditbeat.yml配置文件,無(wú)需更改。相關(guān)模塊配置說(shuō)明如下:
Auditd模塊配置
- module: auditd # Load audit rules from separate files. Same format as audit.rules(7). audit_rule_files: [ '${path.config}/audit.rules.d/*.conf' ] audit_rules: |
audit_rule_files
:指定加載的審計(jì)規(guī)則文件,支持通配符,默認(rèn)提供了32位和64位兩種,請(qǐng)根據(jù)您的系統(tǒng)選擇其一。audit_rules
:定義審計(jì)規(guī)則??蛇B接ECS,執(zhí)行./auditbeat show auditd-rules
命令,查看默認(rèn)的審計(jì)規(guī)則。-a never,exit -S all -F pid=26253 -a always,exit -F arch=b32 -S all -F key=32bit-abi -a always,exit -F arch=b64 -S execve,execveat -F key=exec -a always,exit -F arch=b64 -S connect,accept,bind -F key=external-access -w /etc/group -p wa -k identity -w /etc/passwd -p wa -k identity -w /etc/gshadow -p wa -k identity -a always,exit -F arch=b64 -S open,truncate,ftruncate,create,openat,open_by_handle_at -F exit=-EACCES -F key=access -a always,exit -F arch=b64 -S open,truncate,ftruncate,create,openat,open_by_handle_at -F exit=-EPERM -F key=access
說(shuō)明一般情況下默認(rèn)規(guī)則就可以滿足審計(jì)需求。如果需要自定義審計(jì)規(guī)則,可修改audit.rules.d目錄下的審計(jì)規(guī)則文件。
File Integrity模塊配置
- module: file_integrity paths: - /bin - /usr/bin - /sbin - /usr/sbin - /etc
paths
:指定被監(jiān)控文件的路徑,默認(rèn)監(jiān)控的路徑包括/bin
、/usr/bin
、/sbin
、/usr/sbin
、/etc
。
選擇采集器安裝的ECS實(shí)例。
啟動(dòng)并查看采集器安裝情況。
單擊啟動(dòng)。
啟動(dòng)成功后,系統(tǒng)彈出啟動(dòng)成功對(duì)話框。
單擊前往采集中心查看,返回Beats數(shù)據(jù)采集中心頁(yè)面,在采集器管理區(qū)域中,查看啟動(dòng)成功的Auditbeat采集器。
等待采集器狀態(tài)變?yōu)?b data-tag="uicontrol" id="uicontrol-k8q-ivi-ve0" class="uicontrol">已生效1/1后,單擊右側(cè)操作欄下的查看運(yùn)行實(shí)例。
在查看運(yùn)行實(shí)例頁(yè)面,查看采集器安裝情況,當(dāng)顯示為心跳正常時(shí),說(shuō)明采集器安裝成功。
查看結(jié)果
登錄目標(biāo)阿里云ES實(shí)例的Kibana控制臺(tái)。
登錄控制臺(tái)的具體步驟請(qǐng)參見(jiàn)登錄Kibana控制臺(tái)。
在左側(cè)導(dǎo)航欄,單擊Discover,選擇預(yù)定義的auditbeat-*模式,并選擇一個(gè)時(shí)間段,查看對(duì)應(yīng)時(shí)間段內(nèi)的Auditbeat收集的數(shù)據(jù)。
在左側(cè)導(dǎo)航欄,單擊Dashboard。
在Dashboard列表中,單擊[Auditbeat File Integrity] Overview,然后選擇一個(gè)時(shí)間段,查看該時(shí)間段內(nèi)監(jiān)控文件的更改情況。