Fail2ban est un logiciel qui va lire les logs et qui va bannir les ip (ipv4 et ipv6) qui abusent ou qui font des actions qui vont correspondre à certains motifs pour lesquelles on va les bannir.

https://fr.wikipedia.org/wiki/Fail2ban

je trouve dommage que certaines erreur (http 400 par exemple) ne soient pas bannies par defaut

voici mes fichiers:

les prisons

extrait de /etc/fail2ban/jail.local (qui est une copie de /etc/fail2ban/jail.conf)

[nginx-3xx]
enabled = true
port    = http,https
logpath = /var/log/nginx/access.log
backend = polling

bantime = 180000
#findtime = 10
#maxretry = 10


<code>
[nginx-4xx]
enabled = true
port    = http,https
logpath = /var/log/nginx/access.log
backend = polling

bantime = 180000
#findtime = 10
#maxretry = 10


[nginx-400]
enabled = true
port    = http,https
logpath = /var/log/nginx/access.log
backend = polling

bantime = 180000
#findtime = 10
maxretry = 0

les filtres

fichier complet pour /etc/fail2ban/filter.d/nginx-3xx.conf

[Definition]

failregex = ^<HOST>.*"(GET|POST|HEAD).*" (301|302) .*$

ignoreregex =

fichier complet pour /etc/fail2ban/filter.d/nginx-4xx.conf

[Definition]

failregex = ^<HOST>.*"(GET|POST|HEAD).*" (404|444|403|405) .*$

ignoreregex =

fichier complet pour /etc/fail2ban/filter.d/nginx-400.conf

[Definition]


failregex = ^<HOST>.*".*" (400) .*$

ignoreregex =