Обратно към блога
Май 23, 2026Ръководства

Как да инсталирате и конфигурирате Fail2ban в Linux

Защитете VPS от brute-force атаки с Fail2ban за SSH и Nginx.

Как да инсталирате и конфигурирате Fail2ban в Linux

Fail2ban следи log файлове и временно блокира 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 или auth грешки:

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 порта само заедно с firewall правила
  • Добавете офис IP в ignoreip при нужда
  • Следете редовно /var/log/fail2ban.log
  • Комбинирайте Fail2ban с UFW или Firewalld