警报关键词 ============== .. role:: example-rule-options 除了动作类型外,还可以在规则体中使用 ``noalert`` 和 ``alert`` 关键词来控制警报行为。此外,警报行为也受 :doc:`thresholding` 机制调控。 noalert ------- 指定了 ``noalert`` 的规则在匹配时不会生成警报,但仍会执行规则动作。 ``noalert`` 常用于为通用模式设置 ``flowbit`` 的规则中。 该选项适用于 ``alert``、``drop``、``reject`` 等明确或隐式包含警报功能的规则动作。 .. container:: example-rule alert http any any -> any any (http.user_agent; content:"Mozilla/5.0"; startwith; endswith; \ flowbits:set,mozilla-ua; :example-rule-options:`noalert;` sid:1;) 此示例在匹配时会设置流标记"mozilla-ua",但由于存在 ``noalert`` 不会生成警报。 .. 注意:: 该选项也可写作 ``flowbits:noalert;``,详见 :doc:`flow-keywords` alert ----- 指定了 ``alert`` 的规则将强制生成警报,即使规则动作本身不包含警报功能。 该关键词可用于实现"警报后放行"的逻辑。 .. container:: example-rule pass http any any -> any any (http.user_agent; content:"Mozilla/5.0"; startwith; endswith; \ :example-rule-options:`alert;` sid:1;) 此示例会放行包含Mozilla/5.0用户代理的HTTP流量,同时为这个"放行"事件生成警报。