Могу ли я использовать регулярное выражение в fail2ban logpath?

Я использую CETNOS 7 , yum install fail2ban , в / и т. д. /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

Это нормально?

3
задан 12 October 2018 в 16:36
1 ответ

Fail2Ban logpath не использует регулярные выражения, но glob сопоставление с шаблоном имени файла Unix .

jail.conf (5) , путь к журналу

имена файлов журналов, которые необходимо отслеживать, разделенные новым линий. Globs - можно использовать пути, содержащие * и ? или [0-9] однако только те файлы, которые существуют при запуске, соответствуют этому глобу будет рассмотрен шаблон.

Правила:

  • * соответствует любому количеству любых символов (включая ни одного)
  • ? соответствует любому одиночному символу
  • [abc] соответствует одному из перечисленных символов
  • .
  • [az] соответствует одному символу в (зависящем от локали) диапазоне символов
  • внутри скобок, ! может использоваться для отрицания (системы POSIX)
  • символы разделителя пути, то есть / , никогда не совпадают .

Следовательно, / home / sites / * / log / errorlog подойдет.

2
ответ дан 3 December 2019 в 06:54

Теги

Похожие вопросы