我正在尝试创建一个正则表达式来匹配 Xen 的 XAPI 日志。问题是 IP 存储在第一行,失败消息存储在第二行。这是一个例子:
Jan 8 23:07:42 myserver stunnel: LOG5[6732:3073162128]: xapi connected from 1.1.1.1:55002
Jan 8 23:07:42 myserver xapi: pam_unix(xapi:auth): authentication failure; logname= uid=0 euid=0 tty= ruser= rhost= user=root
我的正则表达式是:
^.*xapi connected from <HOST>:[0-9]*\n.*xapi: pam_unix.xapi:auth.: authentication failure;.*$
这在 VI 中可以正常工作(显然没有 ),但在 fail2ban 中不行。我的测试似乎表明问题出在 \n. 这可能与fail2ban吗?
我发现这篇 Stackoverflow 文章:Can regex match be based on two line of text? . 我只是将换行视为一个字符。有没有人开发了支持多行信息的 Fail2Ban 过滤器?(我正在使用 Fail2Ban v0.8.4。如果重要的话)