Как да инсталирате Fail2ban на Ubuntu Server 18.04

Подобрете Сигурността на Ubuntu Server чрез добавяне на система за откриване на проникване. За това вероятно ще искате да се обърнете към Fail2ban. Fail2ban следи конкретни регистрационни файлове (намерени в /var/log директория) за неуспешни опити за влизане или автоматизирани атаки. Когато Fail2ban открие опит за компрометиране от IP адрес, той блокира IP адреса (чрез добавяне на нова верига към системата за сигурност на iptables) да получи достъп до сървъра.

За да инсталирате Fail2ban, имате нужда от достъп до обвивката на всяка поддържана версия на Ubuntu Server, с акаунт, който има sudo привилегии, позволяващи инсталиране на нови софтуерни пакети.

rv-ключалки
Иракли/Абашидзе/EyeEm/Getty Images

Как да инсталирате Fail2ban

Инсталирайте Fail2ban с помощта на Apt. Най-добре е да извършите инсталацията на прясно актуализирана сървърна платформа и ако версията на ядрото се актуализира, рестартирайте сървъра, преди да инсталирате Fail2ban.

След като инсталацията приключи, стартирайте и активирайте Fail2ban със следните две команди:

sudo systemctl start fail2ban
sudo systemctl активира fail2ban.

Fail2ban вече работи в системата и е готов за конфигуриране.

Конфигурирайте Fail2ban

Fail2ban се конфигурира с помощта на jails. Затворът определя как услугата наблюдава и колко бързо да предприема действия срещу атаки.

Извън кутията системата вече е защитена. Въпреки това, той също е много гъвкав. Основният конфигурационен файл е /etc/fail2ban/jail.conf. Не редактирайте този файл. Вместо това създайте нов файл с разширението на файла .local. Fail2ban винаги чете първо .conf файлове и второ .local файлове. Всяка конфигурация, прочетена във файла .local, ще замени подобни конфигурации във файла .conf.

Примерна конфигурация

Да приемем, че искате да създадете персонализиран затвор за демона Secure Shell, който ще:

  • Наблюдавайте /var/log/auth.log.
  • Използвайте филтъра по подразбиране fail2ban sshd.
  • Задайте SSH порта на 22.
  • Задайте максималния повторен опит на 3.

Ssh персонализациите в .local jail ще заменят всяка подобна конфигурация, намерена в основния конфигурационен файл, jail.conf (например, максималният опит за повторен опит по подразбиране в jail.conf е настроен на 5). С този затвор на място, ако човек (или бот) се провали SSH вход опитайте три пъти, първоначалният IP адрес ще бъде забранен.

За да конфигурирате това, издайте командата:

sudo nano /etc/fail2ban/jail.local. 

В този нов файл поставете следното съдържание:

[sshd]
активирано = вярно
порт = 22
филтър = sshd
logpath = /var/log/auth.log
maxretry = 3.

Запазете и затворете файла, след което рестартирайте Fail2ban с командата:

sudo systemctl рестартиране fail2ban. 

Тест Fail2ban

За да тествате Fail2ban, отидете на друга машина с различен IP адрес и инициирайте сесия на Secure Shell в сървъра, като всеки път въвеждате неправилно потребителската парола. След третото неуспешно влизане този потребителски акаунт става забранен.

Екранна снимка на Fail2ban блокиране на IP адрес.

Дори ако се опитате да върнете SSH обратно към сървъра от същия IP адрес, достъпът все още е отказан.

Деблокирайте IP адрес

Отменете забрана на IP с командата fail2ban-client (която е инсталирана заедно с fail2ban) по следния начин:

sudo fail2ban-client set sshd unbanip 192.168.1.100.