Fail2Ban

Защита SSH (22 порт): баны по IP через Fail2Ban.

Fail2Ban автоматически блокирует брутфорс по SSH и пишет баны в iptables.

Используйте для базовой защиты сервера и ручного управления банами.

Установка

Команды
sudo apt update
sudo apt install fail2ban

Проверка

Команда
fail2ban-client status

Базовая настройка

Создаём локальный конфиг:

Команда
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Открываем файл:

Команда
sudo nano /etc/fail2ban/jail.local

Минимально нужное для SSH:

Конфиг
[sshd]
enabled  = true
port     = 22
filter   = sshd
logpath  = /var/log/auth.log
maxretry = 5
bantime  = 1h
findtime = 10m

Применение настроек

Команда
sudo systemctl restart fail2ban

Проверка jail sshd

Команда
sudo fail2ban-client status sshd

Как проверить IP в бане

Посмотрите строку Banned IP list в выводе команды:

Команда
sudo fail2ban-client status sshd

Управление банами

Разбанить IP
sudo fail2ban-client set sshd unbanip 1.2.3.4
Забанить вручную
sudo fail2ban-client set sshd banip 1.2.3.4

Полезные замечания

Fail2Ban не заменяет смену порта и ключи SSH.

Лучше отключить вход по паролю: PasswordAuthentication no.

После изменений
sudo systemctl restart ssh