Регулярное выражение fail2ban Plesk для почтового ящика

Может ли кто-нибудь помочь мне с помощью специального фильтра f2b для отслеживания повторяющихся сбоев входа в систему в определенном почтовом ящике? Я не хочу ограничивать неудачи глобальной постфиксной тюрьмой. Поэтому мне нужен дополнительный фильтр.

Я также думаю, что мне нужно еще несколько регулярных выражений, так как в моей строке с почтовым ящиком нет IP-адреса, верно?

Здесь содержимое:

Sep 14 22:00:28 host01 plesk_saslauthd[7633]: failed mail authentication attempt for user 'office@customer-domain.de' (password len=9)
Sep 14 22:00:28 host01 postfix/smtpd[6772]: warning: SASL authentication failure: Password verification failed
Sep 14 22:00:28 host01 postfix/smtpd[6772]: warning: unknown[190.124.18.242]: SASL PLAIN authentication failed: authentication failure

Тюрьма срабатывает, если

Может ли кто-нибудь помочь мне с помощью специального фильтра f2b для отслеживания повторяющихся сбоев входа в систему в определенном почтовом ящике? Я не хочу ограничивать неудачи глобальной постфиксной тюрьмой. Поэтому мне нужен дополнительный фильтр.

Я также думаю, что мне нужно еще несколько регулярных выражений, так как в моей строке с почтовым ящиком нет IP-адреса, верно?

Здесь содержимое:

Sep 14 22:00:28 host01 plesk_saslauthd[7633]: failed mail authentication attempt for user 'office@customer-domain.de' (password len=9)
Sep 14 22:00:28 host01 postfix/smtpd[6772]: warning: SASL authentication failure: Password verification failed
Sep 14 22:00:28 host01 postfix/smtpd[6772]: warning: unknown[190.124.18.242]: SASL PLAIN authentication failed: authentication failure

Тюрьма срабатывает, если

Может ли кто-нибудь помочь мне с помощью специального фильтра f2b для отслеживания повторяющихся сбоев входа в систему в определенном почтовом ящике? Я не хочу ограничивать неудачи глобальной постфиксной тюрьмой. Поэтому мне нужен дополнительный фильтр.

Я также думаю, что мне нужно еще несколько регулярных выражений, так как в моей строке с почтовым ящиком нет IP-адреса, верно?

Здесь содержимое:

Sep 14 22:00:28 host01 plesk_saslauthd[7633]: failed mail authentication attempt for user 'office@customer-domain.de' (password len=9)
Sep 14 22:00:28 host01 postfix/smtpd[6772]: warning: SASL authentication failure: Password verification failed
Sep 14 22:00:28 host01 postfix/smtpd[6772]: warning: unknown[190.124.18.242]: SASL PLAIN authentication failed: authentication failure

Тюрьма срабатывает, еслиoffice@customer-domain.de завершился ошибкой, но ему, вероятно, нужен IP-адрес из строки 3?!

Мне это нужно, потому что злоумышленник запускает только один раз ложный пароль, а затем переходит на другой IP-адрес. Я хочу отследить это только для одного почтового ящика, чтобы его забанили после 1 сбоя. Изменить глобальный постфиксный триггер только на один сбой - это слишком сильно и плохо для реальных пользователей.

Вот Postfix Jail:

[INCLUDES]
before = common.conf

[Definition]
_daemon = postfix(-\w+)?/(?:submission/|smtps/)?smtp[ds]
failregex = ^%(__prefix_line)swarning: [-._\w]+\[<HOST>\]: SASL ((?i)LOGIN|PLAIN|(?:CRAM|DIGEST)-MD5) authentication failed(:[ A-Za-z0-9+/:]*={0,2})?\s*$
ignoreregex = authentication failed: Connection lost to authentication server$

[Init]
journalmatch = _SYSTEMD_UNIT=postfix.service
0
задан 15 September 2018 в 12:46
1 ответ

Существующее правило соответствует третьей строке в вашем примере. В этой строке нет почтового ящика, поэтому нельзя написать правило регулярного выражения, включающее его.

Надежные многострочные правила невозможны, потому что нет надежного способа сопоставить строку ошибки postfix / smtpd с первая строка журнала, в которой упоминается почтовый ящик.

0
ответ дан 5 December 2019 в 05:17

Теги

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