Сервер: Ubuntu 16.04 / Nginx
Сценарий: я пытаюсь заблокировать IP-адреса на основании нескольких запросов 404 на моем сервере.
Я создал фильтр в /etc/fail2ban/filter.d/banbadrequest.conf
[definition]
failregex = ^<HOST> - .* "(GET|POST|HEAD).*HTTP.*" 404 .*$
ignoreregex =.*(robots.txt|favicon.ico|jpg|png)
добавил новую тюрьму в локации /etc/fail2ban/jail.conf
[banbadrequest]
enabled = true
port = http,https
filter = banbadrequest
logpath = /var/log/nginx/error.log
logpath = /var/log/nginx/access.log
bantime = 3600
findtime = 600
maxretry = 5
Но когда я перезапускаю службу fail2ban, она не запускается и закрывается. Может ли кто-нибудь указать, что я здесь делаю не так?
Эта конфигурация не препятствует перезапуску fail2ban на моем сервере, но попробуйте эти изменения. Это может помочь.
Используйте капитал D
в [Definition]
Добавить действие в тюрьму
action = iptables-multiport[name=banbadrequests, port="http,https", protocol=tcp]
Используйте путь к журналу, как это
logpath = /var/log/nginx/error.log
/var/log/nginx/access.log
Добавьте свои собственные тюрьмы в jail.local
не jail.conf
Надеюсь, поможет