ossec实时文件监控只报告第一次更改,但是只有预定的跟进扫描报告了更改

我们目前在Windows上运行一些ossec代理,并实时监控激活的文件 – 在代理站点上进行以下configuration:

<syscheck> <!-- Frequency that syscheck is executed - default to every 2 hours --> <frequency>7200</frequency> <directories check_all="yes" realtime="yes">D:\path1</directories> <directories check_all="yes" realtime="yes">D:\path2</directories> <disabled>no</disabled> <auto_ignore>no</auto_ignore> </syscheck> 

这基本上工作 – 除了只有第一个文件的编辑是实时报告。 同一文件的任何后续更改只能通过计划扫描每7200秒报告一次,但在第一次编辑之后不会触发实时通知。

如果我编辑另一个以前未更改的文件 – 它再次适用于有史以来第一次更改,但不是之后。

是否有任何其他设置可以检查/更改/设置为可靠获取文件更改通知? 可以看看什么来确定这个问题?

这有点令人费解…非常感谢任何input。

答案是:不知何故错过了主要的默认值:

  1. 您必须请求实时监控作为代理端的额外标志
  2. 你必须在服务器端禁用auto_ignore,因为这个默认是yes – >意思是在代理之后忽略来自代理的更多udpates

在debugging级别2中运行代理时; 可以看到所有文件都被监视,检测到变化,数据被发送到服务器。 但服务器默认情况下忽略它们。 即使以这种方式logging,这也有点令人困惑/错过领先! 在实时标志中应该注意到,也必须改变服务器端 – 这两个设置的相互依赖性并不明显!

令人困惑的是:第一个改变的作品,而第二个同样的文件不是! 就是这样了!

也许是显而易见的或者是一个愚蠢的疏忽,但是在代理端添加path2后,OSSEC重新启动了?

如果是这样,ossec.log反映它正确地监视path2目录,即

 2017/02/08 00:58:31 ossec-syscheckd: INFO: Directory set for real time monitoring: '/etc'. 2017/02/08 00:58:31 ossec-syscheckd: INFO: Directory set for real time monitoring: '/usr/bin'. 

日志可能会提供一些线索或其他见解。