Назад до блогу
Травень 23, 2026Посібники

Як встановити та налаштувати Fail2ban у Linux

Захист VPS від перебору паролів: встановлення Fail2ban і правил блокування для SSH та Nginx.

Як встановити та налаштувати Fail2ban у Linux

Fail2ban аналізує журнали й тимчасово блокує IP-адреси при підозрілій активності — наприклад, численних невдалих входах по SSH. Це одна з перших утиліт безпеки на новому VPS Hiddence.

Встановлення Fail2ban

bash
# Ubuntu / Debian
sudo apt update
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

# CentOS / RHEL / Alma / Rocky
sudo yum install epel-release -y
sudo yum install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

Захист SSH

Створіть локальний конфіг (не редагуйте jail.conf напряму — використовуйте jail.local):

bash
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
bantime = 3600
findtime = 600

sudo systemctl restart fail2ban

Захист Nginx (опційно)

Блокування IP при частих помилках авторизації або скануванні:

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

[nginx-noscript]
enabled = true
port = http,https
filter = nginx-noscript
logpath = /var/log/nginx/access.log
maxretry = 6

Перевірка заблокованих IP

bash
sudo fail2ban-client status
sudo fail2ban-client status sshd

# Unban an IP if needed:
sudo fail2ban-client set sshd unbanip 1.2.3.4

Рекомендації

  • Використовуйте SSH-ключі замість паролів
  • Зміна порту SSH — лише разом із правилами брандмауера
  • За потреби додайте свій IP до ignoreip
  • Стежте за /var/log/fail2ban.log
  • Поєднуйте Fail2ban з UFW або Firewalld