diff --git a/fail2ban/filter.d/nginx-json-gitea.conf b/fail2ban/filter.d/nginx-json-gitea.conf new file mode 100644 index 0000000..af736b1 --- /dev/null +++ b/fail2ban/filter.d/nginx-json-gitea.conf @@ -0,0 +1,7 @@ +# /etc/fail2ban/filter.d/nginx-json-gitea.conf +[Definition] +# Regra 1: Deteta múltiplas requisições POST para a página de login. +failregex = ^.*"remote_addr":"".*"method":"POST".*"uri":"/user/login".*$ + # Regra 2: Deteta erros 404. + ^.*"remote_addr":"".*"status":404,.*$ +ignoreregex = diff --git a/fail2ban/jail.local b/fail2ban/jail.local index 8391edf..b53a9bd 100644 --- a/fail2ban/jail.local +++ b/fail2ban/jail.local @@ -45,3 +45,12 @@ banaction = %(banaction_allports)s bantime = 1w findtime = 1d maxretry = 3 + +[gitea] +enabled = true +port = http,https +filter = nginx-json-gitea +logpath = /var/log/nginx/access.log +maxretry = 5 +findtime = 5m +bantime = 1h