Blame
b12d86 | Mayekkuzu | 2024-12-17 15:48:08 | 1 | # Fail2ban |
2 | ||||
d534db | Mayekkuzu | 2024-12-17 15:50:18 | 3 |  |
4 | ||||
b12d86 | Mayekkuzu | 2024-12-17 15:48:08 | 5 | fail2ban - служба которая банит всех (смотря как настроить) хитрожопых любителей поперебирать пароли к сервису или серверу. Чаще всего используется для защиты сервера от ботов, которые пытаются подобрать пароль к твоей VPSке |
6 | ||||
7 | ## Защищаем SSH |
|||
8 | Ну для начала надо понимать, а нужен ли тебе доступ к серверу от рута? Если нет то закрой. |
|||
9 | Далее ставим любым пакетным менеджером пакет `fail2ban`, в моем случае это Debian |
|||
10 | ```bash |
|||
11 | sudo apt install fail2ban |
|||
12 | ``` |
|||
13 | Копируем конфиг для ssh |
|||
14 | ```bash |
|||
15 | sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local |
|||
16 | ``` |
|||
17 | Открываем `/etc/fail2ban/jail.local` и приводим блок `[sshd]` к такому виду: |
|||
18 | ``` |
|||
19 | [sshd] |
|||
20 | enabled = true |
|||
21 | findtime = 180 # Время, в которое служба отсчитывает попытки входа по ssh |
|||
22 | maxretry = 3 # Три попытки - дальше бан |
|||
23 | bantime = 50400 # Время бана в секундах |
|||
24 | filter = sshd |
|||
25 | logpath = /var/log/auth.log # Фаил логов куда пишутся попытки авторизации |
|||
26 | ``` |
|||
27 | ||||
28 | Рестартим сервис и ставим в автозагрузку. Смотрим что сервис запущен |
|||
29 | ```bash |
|||
30 | sudo systemctl restart fail2ban |
|||
31 | sudo systemctl enable fail2ban |
|||
32 | sudo systemctl status fail2ban |
|||
33 | ``` |
|||
34 | Смотреть список забаненых можно так: |
|||
35 | ```bash |
|||
36 | mayekkuzu@host:~$ sudo fail2ban-client status sshd |
|||
37 | Status for the jail: sshd |
|||
38 | |- Filter |
|||
39 | | |- Currently failed: 1 |
|||
40 | | |- Total failed: 4 |
|||
41 | | `- Journal matches: _SYSTEMD_UNIT=ssh.service + _COMM=sshd |
|||
42 | `- Actions |
|||
43 | |- Currently banned: 3 |
|||
44 | |- Total banned: 3 |
|||
45 | `- Banned IP list: 185.147.124.54 77.242.225.38 185.147.124.182 |
|||
46 | ``` |