Fail2ban

fail2ban - служба которая банит всех (смотря как настроить) хитрожопых любителей поперебирать пароли к сервису или серверу. Чаще всего используется для защиты сервера от ботов, которые пытаются подобрать пароль к твоей VPSке

Защищаем SSH

Ну для начала надо понимать, а нужен ли тебе доступ к серверу от рута? Если нет то закрой. Далее ставим любым пакетным менеджером пакет fail2ban, в моем случае это Debian

sudo apt install fail2ban

Копируем конфиг для ssh

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Открываем /etc/fail2ban/jail.local и приводим блок [sshd] к такому виду:

[sshd]  
enabled  = true 
findtime = 180                # Время, в которое служба отсчитывает попытки входа по ssh
maxretry = 3                  # Три попытки - дальше бан  
bantime = 50400               # Время бана в секундах
filter   = sshd
logpath  = /var/log/auth.log  # Фаил логов куда пишутся попытки авторизации

Рестартим сервис и ставим в автозагрузку. Смотрим что сервис запущен

sudo systemctl restart fail2ban
sudo systemctl enable fail2ban
sudo systemctl status fail2ban

Смотреть список забаненых можно так:

mayekkuzu@host:~$ sudo fail2ban-client status sshd
Status for the jail: sshd
|- Filter
|  |- Currently failed: 1
|  |- Total failed:     4
|  `- Journal matches:  _SYSTEMD_UNIT=ssh.service + _COMM=sshd
`- Actions
   |- Currently banned: 3
   |- Total banned:     3
   `- Banned IP list:   185.147.124.54 77.242.225.38 185.147.124.182
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9