Шпаргалка по fail2ban
Базовые настройки
Общие настройки демона находятся в файле /etc/fail2ban/fail2ban.local
Настройки правил по которым идет фильтрация в файле /etc/fail2ban/jail.local
(jail - тюрьма)
Содержимое /etc/fail2ban/fail2ban.local
:
[Definition] loglevel = INFO logtarget = /var/log/fail2ban.log
Содержимое /etc/fail2ban/jail.local
:
[DEFAULT] ignoreip = 127.0.0.1/8 192.168.1.0/24 # 4 неудачных попытки за 5 минут - бан на 10минут maxretry = 4 findtime = 300 bantime = 600
Настройки правил
В файле /etc/fail2ban/jail.conf уже перечислено довольно много правил фильтрации, нужно выбрать нужное и включить в /etc/fail2ban/jail.local
например так:
[sshd] enabled = true
Кастомные правила
to be done..
Logrotate
/etc/logrotate.d/fail2ban
/var/log/fail2ban.log { rotate 7 compress missingok notifempty postrotate /usr/bin/fail2ban-client flushlogs >/dev/null || true endscript }
Отладка
Просмотр существующих Jail
fail2ban-client status
Детальный просмотр конкретного Jail
fail2ban-client status sshd
Разблокировка требуемого IP-адреса в указанном Jail
fail2ban-client set proftpd unbanip <IP-address>
Блокировка требуемого IP-адреса в указанном Jail
fail2ban-client set proftpd banip <IP-address>
Отладка фильтра: в файл /tmp/filter вставить нужную строку из лога и запустить парсер:
fail2ban-regex --print-all-match /tmp/filter /etc/fail2ban/filter.d/sshd.conf