在CentOS系统上,可通过包管理器(推荐)或手动下载RPM包安装Filebeat:
sudo yum install -y filebeat
filebeat-7.14.0-x86_64.rpm
),执行安装:wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.14.0-x86_64.rpm
sudo rpm -ivh filebeat-7.14.0-x86_64.rpm
编辑/etc/filebeat/filebeat.yml
(主配置文件),重点设置以下模块:
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/secure # CentOS认证日志(SSH登录、sudo使用等)
- /var/log/messages # 系统级日志(内核、服务消息)
- /var/log/*.log # 应用层通用日志
exclude_lines: ["DBG"] # 排除调试信息(减少噪音)
exclude_files: [".gz"] # 忽略压缩归档文件
output.elasticsearch:
hosts: ["localhost:9200"] # Elasticsearch地址
username: "elastic" # 认证用户名(默认elastic)
password: "your_password" # 认证密码
index: "centos-audit-logs-%{+yyyy.MM.dd}" # 索引命名规则(按日期分割)
dissect
处理器解析/var/log/secure
中的SSH登录日志):filebeat.inputs:
- type: log
paths: ["/var/log/secure"]
processors:
- dissect:
tokenizer: "%{timestamp} %{loglevel} %{message}"
field: "message"
target_prefix: ""
配置完成后,启动Filebeat并设置为开机自启:
sudo systemctl daemon-reload # 重新加载系统服务配置
sudo systemctl start filebeat # 启动Filebeat服务
sudo systemctl enable filebeat # 设置开机自启
sudo systemctl status filebeat
若输出显示Active: active (running)
,则表示服务已启动。sudo tail -f /var/log/filebeat/filebeat
_cat/indices
API查看是否生成对应的索引(如centos-audit-logs-2025.09.22
)。elkuser
),避免使用root运行。sudo chown -R elkuser:elkgroup /var/log/secure /var/log/messages
sudo chmod -R 640 /var/log/secure /var/log/messages
output.elasticsearch
中配置ssl.certificate_authorities
(指定CA证书路径),并使用https
协议。centos-audit-logs-*
索引模式。Filebeat内置auditd
模块(针对Linux审计框架)、system
模块(针对系统日志)等,可简化安全审计配置:
system
模块(监控系统日志):sudo filebeat modules enable system
/etc/filebeat/modules.d/system.yml
,调整监控的日志文件及字段映射。sudo filebeat setup --index-management
此命令会自动创建适合系统日志的索引模板,优化日志存储与查询性能。通过以上步骤,即可在CentOS上通过Filebeat实现日志审计,收集、传输并分析系统安全日志,为安全事件排查提供数据支持。