Назад да блога
Май 23, 2026Кіраўніцтва

Як усталяваць і наладзіць Fail2ban на Linux

Абараніце свой VPS ад нападаў грубай сілы, усталяваўшы Fail2ban з турмамі SSH і Nginx.

Як усталяваць і наладзіць Fail2ban на Linux

Fail2ban адсочвае файлы часопісаў і часова забараняе IP-адрасы, якія дэманструюць шкоднасныя паводзіны — напрыклад, паўторныя няўдалыя ўваходы ў сістэму SSH. Гэта адзін з першых інструментаў бяспекі для ўстаноўкі на новы Hiddence VPS.

Ўстаноўка 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):

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-адрасы, якія выклікаюць занадта шмат памылак 404 або аўтэнтыфікацыі:

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-адрас вашага офіса ў fail2ban ignoreip пры неабходнасці
  • Рэгулярна кантралюйце /var/log/fail2ban.log
  • Камбінуйце Fail2ban з UFW або Firewalld