Blame

b12d86 Mayekkuzu 2024-12-17 15:48:08 1
# Fail2ban
2
d534db Mayekkuzu 2024-12-17 15:50:18 3
![](/Linux/System/Fail2ban/fail2ban.jpeg)
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
```