summaryrefslogtreecommitdiff
path: root/LINUX/Fail2ban - Основы защиты серверов.md
diff options
context:
space:
mode:
Diffstat (limited to 'LINUX/Fail2ban - Основы защиты серверов.md')
-rw-r--r--LINUX/Fail2ban - Основы защиты серверов.md42
1 files changed, 42 insertions, 0 deletions
diff --git a/LINUX/Fail2ban - Основы защиты серверов.md b/LINUX/Fail2ban - Основы защиты серверов.md
new file mode 100644
index 0000000..6f7e476
--- /dev/null
+++ b/LINUX/Fail2ban - Основы защиты серверов.md
@@ -0,0 +1,42 @@
+
+**Fail2ban** — это инструмент, который автоматически блокирует IP-адреса, совершающие подозрительную активность (например, попытки подбора паролей). Он анализирует логи и применяет временные баны через брандмауэр.
+
+`sudo apt install fail2ban
+
+⚙️ **Базовая настройка**
+
+1. Создадим копию конфига:
+`sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
+
+2. Отредактируем `jail.local`. Он поделён на секции, так называемые «изоляторы» (jails), каждая секция отвечает за определённый сервис и тип атаки. Добавим сервис, который нужно защищать, например SSH:
+```sh
+[DEFAULT]
+ignoreip = 127.0.0.1/8
+bantime  = 600
+maxretry = 3
+banaction = iptables-multiport
+
+[ssh]
+enabled  = true
+port     = ssh
+filter   = sshd
+logpath  = /var/log/auth.log
+maxretry = 6
+```
+• maxretry: количество неудачных попыток входа.
+• bantime: время блокировки IP.
+
+Секция [ssh] отвечает за защиту SSH от повторяющихся неудачных попыток авторизации на SSH–сервере, проще говоря, «brute–force».
+
+Параметры из секции [DEFAULT] применяются ко всем остальным секциям, если не будут переопределены.
+
+3. После настройки, запускаем службу:
+`sudo systemctl start fail2ban
+`sudo systemctl enable fail2ban
+
+🔐 **Проверка работы**
+• Посмотреть заблокированные IP:
+`fail2ban-client status
+
+• Увидеть детали конкретного сервиса:
+`fail2ban-client status ssh