Перейти к содержанию

fail2ban установка и настройка на AstraLinux

Не давно на данном сервере я заметил что кто-то очень долго пытался сбрутить пароль но так и не удалось пока что. Что бы хоть как-то хацкеру усложнить жизнь вспомнил сразу про очень удобную и легкую программу fail2ban.

Установка проста как и на все Debian подобные дистрибутивы

apt-get install fail2ban

Главный конфиг находится по пути /etc/fail2ban/jail.conf, но как почти везде написано и для конфигурации использую все конфиги внутри jail.d

vi /etc/fail2ban/jail.d/default.conf

Пишем туда следующие

[DEFAULT]
maxretry = 4
findtime = 480
bantime = 720
action = iptables
ignoreip = 127.0.0.1/8

[sshd]  
enabled  = true  
findtime = 120  
maxretry = 3  
bantime = 43200

maxretry — количество действий, которые разрешено совершить до бана.
findtime — время в секундах, в течение которого учитывается maxretry;
ignoreip — игнорировать защиту, если запросы приходят с перечисленных адресов.
action — действия, которое будет выполняться, если Fail2ban обнаружит активность, соответствующую критериям поиска;
bantime — время, на которое будет блокироваться IP-адрес;

Тут я думаю вы поняли что означает [DEFAULT] и [sshd], да я должен был отделить sshd, но мне почему-то так нравится(возможна и лень), в принципе основную проблему я решил, но зайдя на dmosk, увидел очень интересные конфиги о том как защитить nginx

Открываем конф

vi /etc/nginx/nginx.conf

В секцию http добавляем

limit_req_zone $binary_remote_addr zone=one:10m rate=20r/s;

Дальше открываем конф виртуального хоста и добавляем в секцию location / {

 limit_req zone=one burst=50 nodelay;

Тут задается лимит запросов в секунду 20 запросов при всплеске 50. Теперь необходимо задать правило в fail2ban

vi /etc/fail2ban/jail.d/nginxDdos.conf

Добавляем следующие

[nginx-ddos]
enabled = true
port = http,https
filter = nginx-limit-req
action = iptables-multiport[name=nginxddos, port="http,https", protocol=tcp]
logpath = /var/log/nginx/error.log

Все рестартим

nginx -s reload
systemctl reload fail2ban

Проверяем

fail2ban-client status
Status
|- Number of jail:      3
`- Jail list:   nginx, nginx-ddos, sshd
Опубликовано в рубрикеLINUX

Оставьте первый коментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *