Как установить и настроить Fail2ban для еще большей безопасности SSH
Если вы хотите добавить дополнительный уровень безопасности на свой рабочий стол или сервер Linux, Fail2ban — отличный вариант, который поможет предотвратить нежелательные входы в систему SSH.
SSH необходим для многих пользователей Linux, поскольку он позволяет входить на удаленные серверы и рабочие столы для выполнения различных задач администрирования. И хотя SSH значительно более безопасен, чем то, что он заменил (Telnet), сам по себе он не является гарантией.
Например, атака методом перебора будет забивать ваш компьютер попытками входа в систему до тех пор, пока он не получит правильные учетные данные для входа. Вы не хотите, чтобы это произошло.
К счастью, есть программное обеспечение, которое может помочь предотвратить такие проблемы. Программное обеспечение, о котором идет речь, называется Fail2ban и может автоматически блокировать IP-адреса, используемые для нежелательных попыток входа в систему.
Позвольте мне рассказать вам о процессе установки и настройки Fail2ban.
Как установить фаил2бан
Что вам понадобится: я собираюсь продемонстрировать это на рабочем столе под управлением Ubuntu. Если вы используете рабочий стол на базе Fedora, вам нужно будет только изменить команду установки (переключившись с apt-get на dnf).
Итак, вам понадобится работающий экземпляр любого дистрибутива на основе Ubuntu и пользователь с привилегиями sudo. Вот и все. Перейдем к установке.
1. Откройте окно терминала
Fail2ban необходимо устанавливать через окно терминала, поэтому откройте свое любимое приложение для окна терминала и подготовьтесь к установке.
2. Установите приложение
Чтобы установить Fail2ban, введите команду:
sudo apt-get install fail2ban -y
3. Запустите службу
После завершения установки запустите и включите службу Fail2ban с помощью команды:
sudo systemctl enable --now fail2ban
Настройка фаил2бана
Мы собираемся создать новый файл конфигурации, специфичный для SSH, который будет определять порт, фильтр, путь к журналу, количество неудачных попыток, разрешенных до блокировки IP-адреса (maxretry), количество времени между неудачными попытками входа в систему ( findtime), количество секунд, в течение которых IP-адрес заблокирован (bantime), и IP-адрес (адрес обратной связи — 127.0.0.1), который Fail2ban будет игнорировать.
Создайте файл с помощью команды:
sudo nano /etc/fail2ban/jail.local
В этот файл вставьте следующее:
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
findtime = 300
bantime = 28800
ignoreip = 127.0.0.1
Сохраните и закройте файл. Затем перезапустите службу Fail2ban с помощью:
sudo systemctl restart fail2ban
Где IP — запрещенный IP-адрес. Чтобы остановить Fail2ban, перейдите на другой компьютер в нашей сети и попытайтесь войти на компьютер, на котором работает Fail2ban. Введите неправильный пароль три раза, и IP-адрес этого компьютера будет заблокирован. Если вы попытаетесь войти в четвертый раз, это не удастся.
Вы можете разблокировать этот IP-адрес (с компьютера, с которого вы первоначально вошли в систему) с помощью команды:
sudo fail2ban-client set sshd unbanip IP
И это все, что нужно для добавления еще одного уровня безопасности в вашей системе. Теперь вы можете быть уверены, что нежелательные входы в систему SSH будут заблокированы, а те, кто нарушает IP-адреса, заблокированы.