Добавьте систему обнаружения вторжений в Ubuntu для большей безопасности.
Сервер 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 enable 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]
enabled = true
port = 22
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
Сохраните и закройте файл, одновременно нажав клавиши Ctrl и X на клавиатуре. После сохранения этого файла перезапустите Fail2ban с помощью команды:
sudo systemctl restart fail2ban
Тестирование Fail2ban
Чтобы проверить 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.