Snort 性能监控

Snort 性能监控

使用 snort 版本 2.8.6,我尝试收集应用程序性能统计数据,例如

  • 数据包数量不是由于应用程序超载而处理
  • 处理层(预处理器、重组、模式匹配等)的时间百分比
  • 处理的数据包数量
  • ETC

我目前正在使用 perfmonitor 预处理器转储性能统计数据,并通过 SNMP 调用绘制其中一些值的图表。关于此预处理器的文档相当有限,并且没有很好地解释这些字段的实际含义,或者这些数字是在什么时间范围内计算的。

为了获得这些类型的绩效指标,需要哪些字段应该我正在看,这些领域是如何测量的?

答案1

现在您已启用性能“监控”,但您想启用性能和规则“分析”。性能配置文件将提供有关 preproc snort 所花费时间的统计数据。

将以下几行添加到 snort:

config profile_rules: print 100, sort total_ticks, filename /tmp/rules_out
config profile_preprocs: print 10, sort total_ticks, filename /tmp/preproc_out

让 snort 运行一段时间,然后当你退出时你就可以看到输出文件。

有关详细信息,请参阅 Snort 手册第 107 页
http://www.snort.org/assets/166/snort_manual.pdf

答案2

苏里卡塔是 Snort 的替代品,实际上会加载 VRF 和 EmergingThreat 规则集。它是多线程的,显然比 Snort 快得多。我的同事说它有比 Snort 更好的 Debian 软件包。

以下是您可以从 Suricata 获取的引擎统计数据的链接:

https://redmine.openinfosecfoundation.org/projects/suricata/wiki/Performance_Statistics

性能统计有两个基本组成部分。首先,模块实际上会计算项目,例如,流模块会计算每秒的新流数。其次,模块会收集所有这些统计数据并以某种方式(日志、snmp 消息等)提供给管理员。

相关内容