我正在使用CETNOS 7
,,yum install fail2ban
在/etc/fail2ban/jail.local
,我想要设置:
[DEFAULT]
apache_error_log = /var/log/httpd/*error_log
/home/websites/.*?/log/errorlog
表达:
[DEFAULT]
apache_error_log = /var/log/httpd/*error_log
/home/websites/site1/log/errorlog
/home/websites/site2/log/errorlog
然后,我可以按如下方式 %(apache_error_log)s
使用:/etc/fail2ban/jail.local
[apache-noscript]
port = http,https
logpath = %(apache_error_log)s
这个可以吗?
答案1
Fail2Banlogpath
不使用正则表达式,但是全局Unix 文件名模式匹配。
jail.conf (5),
logpath
要监视的日志文件的文件名,以换行符分隔。可以使用包含
*
和?
或的glob -- 路径[0-9]
,但是,只有启动时存在的与此 glob 模式匹配的文件才会被考虑。
规则:
*
匹配任意数量的任意字符(包括无)?
匹配任意单个字符[abc]
匹配列出的字符之一[a-z]
匹配(与语言环境相关的)字符范围中的一个字符- 括号内,
!
可用于否定(POSIX 系统) - 路径分隔符 ie
/
永远不会匹配。
因此,/home/websites/*/log/errorlog
就这么做。