Como adicionar um jail para IPs específicos no fail2ban?

1

Eu gostaria de adicionar uma lista específica de IPs para os quais gostaria de receber um email do Fail2ban depois que eles fizessem algumas solicitações "GET".

O padrão a ser procurado nos logs de acesso do apache é ^ 1.2.3.4 -. * $, mas fail2ban-regex falha (e não posso culpar) dizendo:

Não é possível remover a expressão regular. O índice 0 não é válido Nenhum grupo 'host' em ^ 1.2.3.4 -. * $

Existe alguma maneira que eu possa definir a variável "HOST" em filtros / cadeias personalizadas?

    
por manjiki 18.06.2013 / 17:05

1 resposta

3

O regex precisa ter um agrupamento (parênteses) para o endereço IP, então fail2ban sabe qual IP proibir :

In every line of failregex, the part that matches the host name or IP address must be wrapped in a (?P<host> ... ) sandwich. This is a Python-specific regex extension that assigns the contents of the match to the name <host>. The <host> tag is how you tell fail2ban which host was connecting, so it has to be present in every line of failregex. If it's not, fail2ban will issue an error message about "No 'host' group".

No seu caso, o seu regex deve ser

^(?P<host>1.2.3.4) - .*$
    
por 18.06.2013 / 17:45

Tags