我正在修复默认的 php-url-fopen过滤器以允许我在我的系统中使用的一些 GET 查询参数(它不公开,但我仍然想阻止不必要的请求)。问题是我为一个参数名称获得了工作正则表达式,但我无法为两个参数获得工作正则表达式,其中第二个选项由两个名称组合而成。我正在使用fail2ban 0.8.11 - 这是工作(失败)正则表达式:
^<HOST> -.*"(GET|POST).*\?.*(?<!outer)\=http\:\/\/.* HTTP\/.*$
这是不起作用的正则表达式:
^<HOST> -.*"(GET|POST).*\?.*(?<!outer|type\=outer\&url)\=http\:\/\/.* HTTP\/.*$
当我尝试使用非工作正则表达式启动 fail2ban 服务时,我收到以下消息:
ERROR NOK: ('Unable to compile regular expression \'^(?:::f{4,6}:)?(?P<host>[\\w\\-.^_]*\\w) -.*"(GET|POST).*\\?.*(?<!outer|type\\=outer\\&url)\\=http\\:\\/\\/.* HTTP\\/.*$\'',)
任何帮助,将不胜感激。