Fail2Ban, или о том как боротся с брутфорсом » W R D N

Fail2Ban, или о том как боротся с брутфорсом

Fail2Ban, или о том как боротся с брутфорсом
Интернет
18:00, 02 июня 2023
319
0



Недавно появился Samba сервер, и вскоре появилась нужда в том чтобы он был доступен из сети, но, что делать с брутфорсерами? Тогда я стал лазить по форумам и нашел такую прекрасную утилиту как Fail2Ban.

И так, что-же она делает? Проще говоря, Fail2Ban - это программа для повышения безопасности сервера, которая следит за логами (В моем случае логи Samba сервера) и блокирует IP-адреса, которые пытаются выполнить подозрительные действия, такие как перебор пароля, перебор юзернеймов, и прочее. В общем, она "отсеивает" зловредных пользователей, чтобы защитить наш сервер.

И как же его настроить?

Для начала надо его установить:

sudo apt-get update
sudo apt-get install fail2ban


Потом создаем конфигурационный файл для службы, которую нужно защитить(В нашем случае samba)

sudo nano /etc/fail2ban/filter.d/samba.conf

А в него запихиваем следущее:

[Definition]
#Создаем контекст на что будет реагировать File2Ban, а так-же указываем NT_STATUS_NO_SUCH_USER, т.е если пользователь не существует 
#то клиента который пытался под ним войти будут банить по IP

failregex = NT_STATUS_NO_SUCH_USER.*remoteAddress": "ipv4:<HOST>:
#<HOST> В данном случае означает то где искать IP клиента

Затем создаем второй конфиг файл:

sudo nano /etc/fail2ban/jail.local

И впихиваем в него следущее:

[DEFAULT]
# Каждые 120 сек проверяем лог файлы
findtime = 120 

[samba]
# Собственно включаем правило
enabled = true

# Действие которое нужно выполнить 
# В данном случае баним по IP на всех существующих портах, от 1 до 65535
# И протокол TCP
action = iptables-multiport[name=samba, port="1:65535", protocol=tcp]

# Здесь устанавливаем фильтр(Честно не знаю что он делает, но надо.)
filter = samba

# А здесь сам путь до лог файла самба, у вас он может отличатся!
logpath = /var/log/samba/logs.log

# Макс кол-во попыток
maxretry = 1

# Время через которое истекает бан в секундах (1 неделя)
bantime = 604800

Почти готово! Перезапускаем Fail2Ban:

sudo systemctl restart fail2ban

Все! Теперь сервер защищен! Кстати проверить забаненых можно так:

# Через логи (Кстати если утилита не работает, то можно проверить логи на наличие ошибок)
sudo nano /var/log/fail2ban.log 

# Через специальную команду
sudo fail2ban-client status samba

Собственно вот что мы увидим если кто-то уже пытался вас взломать:

Спасибо за просмотр этой статьи!


Ctrl
Enter
Заметили ошЫбку
Выделите текст и нажмите Ctrl+Enter
Комментарии (0)