Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
linux:f2b [2021/04/29 15:18] admin |
linux:f2b [2022/06/26 04:42] (текущий) admin |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
====== Fail2Ban ====== | ====== Fail2Ban ====== | ||
+ | Служба для отслеживания и блокирования брутфорса.\\ | ||
+ | Для проверки анализирует журналы авторизации, | ||
+ | Для блокировки используется системный **firewall**. Правила поведения можно гибко настраивать скриптами.\\ | ||
- | ===== ===== | + | ===== Конфигурация |
+ | Стандартная конфигурация прописана в файле **/ | ||
- | В конфигах имеют | + | Собственные правила можно создавать в отдельных файлах или в общем, правила все равно **разбиваются на секции**.\\ |
+ | Общие для всех правил параметры, | ||
+ | Для работы нужно активировать как **минимум одну** секцию, не считая дефолтной.\\ | ||
- | После бана, | + | В файле **/etc/fail2ban/ |
+ | Время и часовой пояс, на сервере, | ||
+ | ===== Управление ===== | ||
+ | Если после бана вручную удалить IP-адрес из файервола, | ||
+ | Для разблокировки хоста следующая команда: | ||
+ | <code bash># fail2ban-client set [name-jail] unbanip [ip-addr]</ | ||
- | ==== ==== | + | Посмотреть перечень установленных " |
- | + | <code bash># fail2ban-client status</ | |
- | ==== ==== | + | |
- | ==== ==== | + | Результаты своей работы служба пишет в свой лог, обычно- **/ |
+ | |||
+ | |||
+ | ===== Пример конфигурации | ||
+ | Время указывается **в секундах**, | ||
+ | Для вечного бана нужно указать **-1**. | ||
+ | |||
+ | < | ||
+ | < | ||
+ | <code bash> | ||
+ | [DEFAULT] | ||
+ | maxretry = 3 | ||
+ | findtime = 480 | ||
+ | bantime = -1 | ||
+ | action = iptables-allports | ||
+ | # ignoreip = 127.0.0.1 # исключение, | ||
+ | |||
+ | [sshd] | ||
+ | enabled = true | ||
+ | port = ssh | ||
+ | filter = sshd | ||
+ | action = iptables[name=sshd, | ||
+ | logpath = / | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | < | ||
+ | <code bash> | ||
+ | [DEFAULT] | ||
+ | maxretry = 3 | ||
+ | findtime = 480 | ||
+ | bantime = -1 | ||
+ | action = iptables-allports | ||
+ | ignoreip = 92.124.136.88 | ||
+ | |||
+ | [sshd] | ||
+ | enabled = true | ||
+ | port = ssh | ||
+ | filter = sshd | ||
+ | action = iptables[name=sshd, | ||
+ | logpath = / | ||
+ | |||
+ | [apache] | ||
+ | enabled = true | ||
+ | port = http, | ||
+ | filter = apache-auth | ||
+ | action = iptables[name=apache-auth, | ||
+ | logpath = / | ||
+ | |||
+ | [apache-overflows] | ||
+ | enabled = true | ||
+ | port = http, | ||
+ | filter = apache-overflows | ||
+ | action = iptables[name=apache-overflows, | ||
+ | logpath = / | ||
+ | |||
+ | [apache-badbots] | ||
+ | enabled = true | ||
+ | port = http, | ||
+ | filter = apache-badbots | ||
+ | action = iptables[name=apache-badbots, | ||
+ | logpath = / | ||
+ | </ | ||
+ | </ | ||
- | ===== ===== |