
Olá, estou tentando corresponder à seguinte linha de log:
E/Sun, 04 Mar 2018 21:40:32 +0100: Error logging in from RemoteIP: 1.2.3.4
E depois de muitas horas eu finalmente consegui um regex que funciona em debuggerex, regextester, etc. Mas não consigo fazer com que o fail2ban corresponda a ele.
Minha regex no fail2ban é a seguinte:
^E\/(Mon|Tue|Wed|Thu|Fri|Sat|Sun), ([0-1][0-9]) (\w\w\w) (\d\d\d\d) (00|[0-9]|1[0-9]|2[0-3]):([0-9]|[0-5][0-9]):([0-9]|[0-5][0-9]) (\+[0-9][0-9][0-9][0-9]): Error logging in from RemoteIP: <HOST>$
Estou faltando algo básico aqui ou o quê?
Responder1
Como não consigo identificar o seu problema, aqui está o método geral para corrigir um regex de correspondência fail2ban.
- Verifique se você possui um arquivo que contém a correspondência desejada, por exemplo
/var/log/foo.log
- Chamar
fail2ban-regex /var/log/foo.log 'substring of regex'
- Se não corresponder, remova algumas palavras da sua regex e vá para 2.
- Se corresponder, acrescente algumas palavras do seu regex original e vá para 2, ou:
- Se a partir de 3. e 4. você identificou qual palavra está errada, corrija-a.
- Se após a correção o regex completo ainda não corresponder, repita todo o processo com o regex fixo.