Что такое Fail2Ban
Fail2Ban — это инструмент защиты сервера, который анализирует логи системы и автоматически блокирует IP-адреса, совершающие подозрительные действия (например, попытки подбора паролей).
Установка Fail2Ban
- Обновление системы:
sudo apt update sudo apt upgrade
- Установка Fail2Ban:
sudo apt install fail2ban
- Проверка установки:
fail2ban-client -V
Базовая настройка
- Создание конфигурационного файла:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
- Открытие файла для редактирования:
sudo nano /etc/fail2ban/jail.local
Основные параметры конфигурации
- bantime — время блокировки IP (по умолчанию 1 час = 3600 секунд)
- findtime — период учета неудачных попыток (по умолчанию 10 минут = 600 секунд)
- maxretry — количество неудачных попыток до блокировки (рекомендуется 3-5)
- ignoreip — IP-адреса, которые не будут блокироваться
Создаем файл /etc/fail2ban/jail.d/shh.conf в котором прописываем:
[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 3
ignoreip = 127.0.0.1 1.2.3.4
[nextcloud]
enabled = true
port = 80,443
filter = nextcloud
logpath = /var/log/nextcloud.log
maxretry = 3
bantime = 3600
findtime = 300
action = iptables-multiport
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 300
findtime = 600
action = iptables-multiport
Даю 3 попытки в течении 5 минут и отправляет в бан, кроме адресов.
Управление сервисом
- Запуск сервиса:
sudo systemctl start fail2ban
- Автозапуск при загрузке:
sudo systemctl enable fail2ban
- Проверка статуса:
sudo systemctl status fail2ban
Полезные команды
- Просмотр статуса всех jail:
sudo fail2ban-client status
- Блокировка IP вручную:
sudo fail2ban-client set <jail> banip <ip-адрес>
- Разблокировка IP:
Если вам нужно разблокировать определенные IP-адреса (1.2.3.4 в данном примере), вы можете сделать это с помощью команды:
sudo fail2ban-client unban 1.2.3.4
Рекомендации по безопасности
- Регулярно проверяйте логи Fail2Ban (/var/log/fail2ban.log)
- Настройте исключения для доверенных IP-адресов
- При необходимости увеличьте время блокировки для особо важных сервисов
- Следите за ложными блокировками
После выполнения всех шагов Fail2Ban будет автоматически защищать ваш сервер от попыток подбора паролей и других атак.
Comments powered by CComment