Как установить Fail2ban на Ubuntu Server 18.04

Сервер Ubuntu высоко ценится на многих уровнях. Хотя он может быть не таким безопасным из коробки, как, например, CentOS, он может, с некоторыми добавлениями, соответствовать этому конкретному случаю.

Одним из шагов, который вы можете предпринять, чтобы улучшить безопасность Ubuntu Server, является добавление системы обнаружения вторжений. Для этого вы, вероятно, захотите обратиться к Fail2ban. Fail2ban отслеживает определенные файлы журналов (находится в каталоге / var / log) на предмет неудачных попыток входа или автоматических атак. Когда Fail2ban обнаруживает попытку компрометации по IP-адресу, он затем блокирует IP-адрес (добавляя новую цепочку в систему безопасности iptables) от получения доступа (или попытки дальнейшей атаки) к серверу. Давайте установим Fail2ban на платформу Ubuntu Server 18.04.

Что нужно для установки Fail2ban

Все, что вам нужно для успешной установки Fail2ban, — это работающий экземпляр Ubuntu Server 18.04 и учетная запись пользователя с привилегиями sudo. Как установка, так и настройка Fail2ban выполняются через командную строку, поэтому подготовьтесь к вводу.

Обновите Ubuntu перед установкой Fail2ban

Установка Fail2ban очень проста. Однако прежде чем устанавливать пакет, давайте сначала обновим и обновим Ubuntu. Обратите внимание: если этот процесс обновляет ядро, вам нужно будет перезагрузить сервер (чтобы изменения вступили в силу). Поэтому обязательно запускайте процесс обновления / обновления в тот момент, когда возможна перезагрузка.

Чтобы обновить и обновить Ubuntu Server, откройте терминал и введите следующие команды:

sudo apt-get update
sudo apt-get upgrade -y

После завершения обновления перезагрузите сервер (при необходимости) и установите Fail2ban.

Как установить Fail2ban

Теперь пришло время установить Fail2ban. Это можно сделать с помощью одной команды. В окне терминала введите:

sudo apt-get install -y fail2ban

Приведенная выше команда установит все необходимое для запуска и управления Fail2ban (включая команду fail2ban-client, которая необходима для разблокирования IP-адресов — подробнее об этом чуть ниже). После завершения установки вам необходимо запустить и включить Fail2ban с помощью следующих двух команд:

sudo systemctl start fail2ban
sudo systemctl включить fail2ban

Fail2ban теперь работает в системе и готов к настройке.

Настройка Fail2ban

Fail2ban настроен с использованием джейлов. Тюрьма позволяет вам определить, как служба будет отслеживаться и как быстро предпринимать действия против атак. Существует довольно много опций, которые можно настроить для каждой тюрьмы, но мы начнем с малого.

Из коробки система уже довольно безопасна. Тем не менее, это также очень гибкий. Основной файл конфигурации — /etc/fail2ban/jail.conf. Вы не хотите редактировать этот файл. Вместо этого вы создадите новый файл с расширением .local. Fail2ban всегда сначала читает файлы .conf, а затем файлы .local. Любая конфигурация, считанная в файле .local, переопределит аналогичные конфигурации в файле .conf. Допустим, вы хотите создать настраиваемую тюрьму для демона Secure Shell, которая будет:

  • Монитор /var/log/auth.log
  • Использовать фильтр sshd fail2ban по умолчанию
  • Установите порт 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

Сохраните и закройте файл, одновременно нажав Ctrl+Икс клавиши на вашей клавиатуре. После сохранения этого файла перезапустите Fail2ban с помощью команды:

перезапуск sudo systemctl fail2ban

Тестирование Fail2ban

Скриншот Fail2ban, блокирующего IP-адрес.

Чтобы проверить Fail2ban, перейдите на другой компьютер и попытайтесь подключиться к серверу Secure Shell, каждый раз вводя неверный пароль пользователя. После третьего неудачного входа в систему пользователь будет забанен. Вы можете попытаться выполнить SSH обратно на сервер с того же IP-адреса, но вам будет отказано в доступе. Поздравляем, ваша новая тюрьма Fail2ban работает.

Разблокировка IP-адреса

Итак, теперь у вас работает Fail2ban, и вы успешно протестировали SSH-тюрьму. К сожалению, машина, которую вы только что протестировали, теперь заблокирована. Чем ты занимаешься? К счастью, разработчики подумали об этом и включили средства, позволяющие легко разблокировать IP-адрес. Скажем, IP-адрес, который вы использовали для проверки Fail2ban, был 192.168.1.100, и вам все еще нужно использовать этот адрес для получения доступа к серверу. Вы можете разблокировать этот IP с помощью команды fail2ban-client (которая устанавливается вместе с fail2ban) следующим образом:

sudo fail2ban-client set sshd unbanip 192.168.1.100

После выполнения вышеуказанной команды вы сможете снова подключить Secure Shell к серверу, на котором работает Fail2ban.

Ссылка на основную публикацию