Fail2Ban: защита VPS от брутфорса и автоматических атак

VDS / VPS серверы · 19.04.2026
Fail2Ban: защита VPS от брутфорса и автоматических атак

Fail2Ban — инструмент, который анализирует лог-файлы сервисов и автоматически блокирует IP-адреса, которые совершают слишком много неудачных попыток. Эффективен против brute-force атак на SSH, веб-панели, почтовые серверы.

Установка

sudo apt update
sudo apt install fail2ban -y
sudo systemctl enable --now fail2ban

Создание конфига jail.local

Никогда не редактируйте jail.conf — он перезаписывается при обновлении. Создайте jail.local:

# /etc/fail2ban/jail.local
[DEFAULT]
# Время бана в секундах (3600 = 1 час, -1 = навсегда)
bantime  = 3600
# Время поиска попыток (10 минут)
findtime = 600
# Максимум попыток до бана
maxretry = 5
# Исключить свои IP из бана!
ignoreip = 127.0.0.1/8 YOUR.TRUSTED.IP

[sshd]
enabled  = true
port     = 22
logpath  = %(sshd_log)s
maxretry = 3

[nginx-http-auth]
enabled  = true
port     = http,https
logpath  = /var/log/nginx/error.log
maxretry = 5

[postfix-sasl]
enabled  = true
port     = smtp,submission
logpath  = /var/log/mail.log
maxretry = 5
sudo systemctl restart fail2ban

Управление и мониторинг

# Общий статус
sudo fail2ban-client status

# Статус конкретного jail
sudo fail2ban-client status sshd

# Ручной бан IP
sudo fail2ban-client set sshd banip 192.168.1.100

# Разбанить IP
sudo fail2ban-client set sshd unbanip 192.168.1.100

# Посмотреть забаненные IP в iptables
sudo iptables -L f2b-sshd -n -v

# Логи Fail2Ban
sudo journalctl -u fail2ban -f

Мониторинг атак в реальном времени

# Следить за банами SSH в реальном времени
sudo tail -f /var/log/auth.log | grep "Failed password"

# Топ атакующих IP
sudo grep "Failed password" /var/log/auth.log |     awk '{print $(NF-3)}' | sort | uniq -c | sort -rn | head -20
💡 ignoreip — ОБЯЗАТЕЛЬНО: Добавьте свой домашний/офисный IP в ignoreip ПЕРЕД первым запуском. Иначе рискуете забанить себя при отладке. Всегда проверяйте правило дважды.
⚠️ Fail2Ban ≠ полная защита: Брутфорс с тысяч разных IP (botnet) обойдёт Fail2Ban. Дополнительно ограничивайте доступ к SSH по белому списку IP через UFW, или используйте VPN для доступа к серверу.
← Назад в базу знаний Задать вопрос поддержке