在CentOS上使用Filebeat進行日志審計的步驟如下:
首先,你需要安裝Filebeat。你可以從Elastic官方網站下載最新版本的Filebeat,并按照以下步驟進行安裝:
# 下載Filebeat
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.15.0-amd64.deb
# 安裝Filebeat
sudo dpkg -i filebeat-7.15.0-amd64.deb
# 啟動Filebeat服務
sudo systemctl start filebeat
# 設置Filebeat開機自啟
sudo systemctl enable filebeat
Filebeat的配置文件通常位于/etc/filebeat/filebeat.yml
。你需要根據你的日志文件路徑和審計需求進行配置。
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
fields:
type: audit
processors:
- add_fields:
targets: ["message"]
fields:
audit_level: "INFO"
output.elasticsearch:
hosts: ["localhost:9200"]
index: "audit-%{+yyyy.MM.dd}"
在這個示例中:
filebeat.inputs
定義了Filebeat要監控的日志文件路徑。processors
部分添加了一個字段audit_level
,你可以根據需要自定義這個字段。output.elasticsearch
定義了Elasticsearch的輸出地址和索引名稱。啟動Filebeat服務并檢查其狀態:
sudo systemctl start filebeat
sudo systemctl status filebeat
你可以通過Kibana或者直接訪問Elasticsearch來驗證日志是否已經發送成功。
http://<your_elasticsearch_host>:5601
)。audit-*
)。你可以使用curl
命令來檢查Elasticsearch中是否有數據:
curl -X GET "localhost:9200/audit-*/_search?pretty" -H 'Content-Type: application/json' -d'
{
"query": {
"match_all": {}
}
}'
為了確保日志文件不會無限增長,你可以設置日志輪轉。CentOS通常使用logrotate
來管理日志文件。
創建一個logrotate
配置文件:
sudo nano /etc/logrotate.d/filebeat
添加以下內容:
/var/log/*.log {
daily
missingok
rotate 7
compress
notifempty
create 640 root root
}
這個配置文件會每天輪轉日志文件,并保留最近7天的日志。
你可以定期檢查Elasticsearch中的日志數據,以確保審計日志的完整性和準確性。你也可以設置警報,當檢測到異常日志時及時通知相關人員。
通過以上步驟,你可以在CentOS上使用Filebeat進行日志審計,并將日志數據發送到Elasticsearch進行進一步的分析和存儲。