我已经安装了fail2ban,我正在尝试将它设置为阻止出现在syslog中的特定消息中的IP地址。syslog中的消息是:
racoon: ERROR: Invalid exchange type 243 from 103.14.62.181[11950]
通常每条消息都有不同的IP地址和括号中的数字(端口?)也不一样。看起来,通过执行以下操作,我可以创建一个自定义过滤器:
racoon: ERROR: Invalid exchange type 243 from <HOST>
但我的问题是,我是否可以停下来,fail2ban会做它的事情,或者我是否需要指定这样的东西:
racoon: ERROR: Invalid exchange type 243 from <HOST>[IDONTKNOWWHATGOESHERE]
如果我需要指定类似的内容,那么方括号中应该显示的有效通配符是什么?关于fail2ban的OpenVPN文档(最近的例子)显示如下:
http://www.fail2ban.org/wiki/index.php/OpenVPN
* <HOST>:[0-9]{4,5} Connection reset, restarting \[[0-9]{1,2}\]
看起来他们使用0-9{4,5}作为端口号的通配符。这在我的情况下管用吗,还是不行?
我是否完全偏离了我的例子为我的过滤器?
这里的最终目标是将任何有243交换错误的失败添加到带有DROP标志的IP表。我可能会有更多的问题,我的过滤器和什么不是在我得到最初的问题答案。
发布于 2014-03-04 07:16:14
是的,你可以停在那里,fail2ban会做这件事的。您可以使用fail2ban-regex(1)实用程序对此进行测试。摘要是
fail2ban-regex [OPTIONS] <LOG> <REGEX> [IGNOREREGEX]因此,使用您所做的工作(注意,我必须向您提供的日志条目的开始添加一个日期时间,否则它会抱怨)。
fail2ban-regex "Mar 3 07:36:19 racoon: ERROR: Invalid exchange type 243 from 103.14.62.181[11950]" "racoon: ERROR: Invalid exchange type 243 from <HOST>"
Running tests
=============
Use regex line : racoon: ERROR: Invalid exchange type 243 from <HOST>
Use single line: Mar 3 07:36:19 racoon: ERROR: Invalid exchange ty...
Matched time template MONTH Day Hour:Minute:Second
Got time using template MONTH Day Hour:Minute:Second
Results
=======
Failregex: 1 total
|- #) [# of hits] regular expression
| 1) [1] racoon: ERROR: Invalid exchange type 243 from <HOST>
`-
Ignoreregex: 0 total
Summary
=======
Addresses found:
[1]
103.14.62.181 (Mon Mar 03 07:36:19 2014)
Date template hits:
2 hit(s): MONTH Day Hour:Minute:Second
Success, the total number of match is 1https://serverfault.com/questions/579648
复制相似问题