讲师中心 微信公众号
AI工具推荐 视频效率加速

Wazuh怎么收集系统日志、文件完整性变化并自动执行主动防御

夏晨姑娘_2198

夏晨姑娘_2198

发布时间:2026-10-30 08:23:38

|

124人浏览过

|

来源于php中文网

原创

Wazuh通过logcollector模块收集日志,需在ossec.conf中显式配置localfile或remote段并指定正确log_format(如syslog、eventlog),否则日志将被丢弃或解析失败;Linux系统日志建议用syslog格式,Windows事件日志须用eventlog或eventchannel格式,路径含空格时Windows需加双引号,轮转日志需配置ignore和frequency,远程syslog需启用manager端syslog接收并开放514端口。

wazuh怎么收集系统日志、文件完整性变化并自动执行主动防御

系统日志收集:确认 logcollector 是否启用并匹配正确格式

Wazuh 默认通过 ossec-logcollector 进程读取日志,但必须在 ossec.conf 中显式配置 <localfile></localfile> 或事件通道才能生效。常见错误是只改了路径却没配 <log_format></log_format>,导致日志被丢弃或解析失败。

Linux 系统日志(如 /var/log/auth.log)建议用 syslog 格式;Windows 事件日志必须用 eventlog(如 Security)或 eventchannel(如 Microsoft-Windows-PowerShell/Operational)。

  • 路径含空格或特殊字符时,Windows 下需用双引号包裹 <location></location> 值
  • 若日志轮转频繁(如 auth.log.1.gz),需额外配置 <maxsize></maxsize> 和 <rotate_interval></rotate_interval>,否则旧文件不会被重读
  • 远程 syslog 接入需在 manager 的 <remote><connection>syslog</connection></remote> 段启用,并确保防火墙放行 UDP/TCP 514 端口

文件完整性监控(FIM):syscheckd 启动后仍无告警的典型原因

FIM 功能由独立进程 ossec-syscheckd 驱动,它不依赖 logcollector。即使 <syscheck></syscheck> 模块已启用,以下情况仍会导致无变更告警:

  • <directories></directories> 路径末尾带斜杠(如 /etc/)会触发递归扫描异常,应写为 /etc
  • Linux 下未启用 who-data 模式时,无法记录修改进程名和用户,且对 inotify 句柄数有硬限制(默认 8192),大目录需调高 /proc/sys/fs/inotify/max_user_watches
  • Windows 下若目标路径在重定向文件夹(如 OneDrive 同步目录),FIM 可能因权限或句柄不可见而静默跳过
  • 首次运行后,基线数据库生成需等待一个完整 <frequency></frequency> 周期(默认 43200 秒),期间仅实时事件有效

主动响应(Active Response):规则匹配后命令不执行的关键检查点

主动响应不是“检测即阻断”,它依赖三要素同时满足:rule 触发、active-response 配置启用、agent 端具备执行权限。最容易忽略的是 agent 侧限制:

  • Linux agent 默认禁用 shell 命令执行,需在 agent 的 ossec.conf 中设 <options><run_commands>yes</run_commands></options>
  • Windows agent 执行 PowerShell 脚本需提前在 GPO 或本地策略中设置 ExecutionPolicy RemoteSigned 或更低限制
  • 响应命令超时默认 5 秒,封禁 IP 类操作(如调用 iptables 或 netsh)若耗时略长会被强制终止,建议加 timeout="10" 属性
  • manager 端定义的 <command></command> 必须与 agent 端 <active-response><command></command></active-response> 名称完全一致,大小写敏感

联动验证:如何确认日志→FIM→响应整条链路跑通

不要等真实攻击发生才测试。最简验证路径是:手动改一个被监控文件 → 查看 agent 日志 → 确认 manager 是否收到 FIM 事件 → 检查是否触发预设 rule → 观察 active-response 命令是否出现在 agent 的 ossec.log 中。

关键日志位置:

  • agent 侧:查看 /var/ossec/logs/ossec.log(Linux)或 C:\Program Files (x86)\ossec-agent\ossec.log(Windows),搜索 syscheck 或 active-response
  • manager 侧:用 wazuh-control status 确保 ossec-analysisd 和 ossec-execd 均在运行;用 tail -f /var/ossec/logs/alerts/alerts.json 实时观察结构化输出
  • 规则调试:临时把目标 rule 的 <level></level> 改为 0 并 reload,可强制触发告警而不进 SIEM,避免被过滤逻辑干扰

真正难的不是配置语法,而是每个模块都运行着但彼此“听不见”——比如 syscheckd 发出的事件没被 analysisd 的规则覆盖,或者 analysisd 匹配成功了,execd 却因权限被 agent 拒绝执行。盯住日志里那几行 timestamp + module + action,比反复改配置有用得多。

热门AI工具

更多
切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

相关专题

更多
Vite 项目如何打包和部署
Vite 项目如何打包和部署

Vite项目打包部署专题汇集生产构建、产物预览、输出目录、资源路径、Nginx与GitHub Pages部署及常见白屏和路由404问题的已审核文章,帮助读者完成上线流程。

60

2026.10.28

Vite 如何搭配 Vue.js
Vite 如何搭配 Vue.js

Vite搭配Vue.js专题汇集创建Vue 3项目、配置开发环境、路径别名、Vue插件、代理、多环境构建与调试的已审核文章,帮助读者完成从初始化到日常开发的配置。

20

2026.10.28

Vite 项目目录怎么看
Vite 项目目录怎么看

Vite项目目录专题汇集入口文件、src源码、public静态资源、路径别名、项目根目录和构建输出目录相关的已审核文章,帮助读者理解各文件夹的用途与引用方式。

40

2026.10.28

Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

140

2026.10.22

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

80

2026.10.22

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

80

2026.10.22

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

40

2026.10.22

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

80

2026.10.22

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

40

2026.10.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
phpMyAdmin 安装文档
phpMyAdmin 安装文档

共0课时 | 0人学习

ubuntu官方总文档
ubuntu官方总文档

共0课时 | 0人学习

phpstorm开发手册
phpstorm开发手册

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn