Краткий ответ: Установите пакет (apt install fail2ban или dnf install fail2ban с EPEL), создайте /etc/fail2ban/jail.local с включённым jail sshd и запустите службу. Fail2ban читает ваши логи и временно банит IP, которые раз за разом не могут войти, — перебор падает почти до нуля.
Обзор
Fail2ban следит за логами на повторные неудачи (SSH, панели, почта, веб-логины), а затем добавляет правила файрвола, банящие IP-нарушителя на настроенное время. Он дополняет — а не заменяет — SSH только по ключам: даже забаненные боты стоят вам шума в логах и CPU, пока Fail2ban их не заглушит.
Что нужно иметь
- Root/sudo-доступ.
- Рабочий бэкенд файрвола (nftables/iptables — установлены по умолчанию на поддерживаемых дистрибутивах).
- Знание собственного IP, чтобы добавить его в белый список.
Пошаговая инструкция
- Установите:
apt install fail2ban -y # Ubuntu/Debian dnf install epel-release -y && dnf install fail2ban -y # Alma/Rocky - Никогда не редактируйте
jail.conf— создайте/etc/fail2ban/jail.local:[DEFAULT] bantime = 1h findtime = 10m maxretry = 5 ignoreip = 127.0.0.1/8 YOUR.HOME.IP.HERE [sshd] enabled = true - Запустите и добавьте в автозапуск:
systemctl enable --now fail2ban - Проверьте статус и баны:
fail2ban-client status fail2ban-client status sshd - Если вы сменили порт SSH, задайте
port = 2222в секции[sshd].
Типичные проблемы
- Забанили самого себя: разбаньте командой
fail2ban-client set sshd unbanip YOUR.IP(через KVM Console при необходимости) и добавьте свой IP вignoreip. - Jail не стартует на Alma/Rocky: убедитесь, что бэкенд логов совпадает — с journald задайте
backend = systemdвjail.local. - Баны не появляются: проверьте, что
fail2ban-client status sshdпоказывает правильный путь к логу/порт и что неудачи действительно попадают в лог.
Когда обращаться в поддержку
Fail2ban — часть ОС, которой управляете вы. Обращайтесь в поддержку Cloud2Y, если заблокированы без доступа к KVM Console или если неудачные входы продолжаются в масштабе, похожем на распределённую атаку (как сообщить о DDoS-атаке).
Частые вопросы
Что именно делает Fail2ban?
Он следит за логами на повторные неудачные аутентификации и временно банит IP-источник правилом файрвола, обычно на час, — после чего кампании перебора становятся бесполезными.
Почему редактировать jail.local, а не jail.conf?
Обновления пакета перезаписывают jail.conf и молча уничтожают ваши настройки. Всё, что вы кладёте в jail.local, переопределяет jail.conf и переживает каждое обновление Fail2ban.
Забанил собственный IP через Fail2ban — как восстановить доступ?
Войдите через KVM Console и выполните fail2ban-client set sshd unbanip с вашим адресом, а затем добавьте свой IP в список ignoreip в jail.local, чтобы это не повторилось.
Похожие статьи
- Как защититься от brute-force атак
- Как защитить SSH-доступ
- Как читать логи аутентификации
- Как настроить файрвол
Нужна помощь? Связаться с поддержкой Cloud2Y →
