Linux

Установите и настройте Fail2ban в Debian 10

Установите и настройте Fail2ban в Debian 10

Все серверы, доступные из Интернета, подвержены риску атак вредоносных программ. Например, если у вас есть приложение, доступное из общедоступной сети, злоумышленники могут использовать попытки грубой силы, чтобы получить доступ к приложению.

Fail2ban - это инструмент, который помогает защитить ваш Linux-компьютер от грубого перебора и других автоматических атак, отслеживая журналы служб на предмет вредоносной активности. Он использует регулярные выражения для сканирования файлов журнала. Подсчитываются все записи, соответствующие шаблонам, и когда их количество достигает определенного предопределенного порога, Fail2ban блокирует нарушающий IP-адрес с помощью системного брандмауэра на определенный период времени. По истечении срока бана IP-адрес удаляется из списка банов.

В этой статье объясняется, как установить и настроить Fail2ban в Debian 10.

Установка Fail2ban на Debian #

Пакет Fail2ban включен в репозитории Debian 10 по умолчанию. Чтобы установить его, выполните следующую команду от имени пользователя root или пользователя с привилегиями sudo:

sudo apt updatesudo apt установить fail2ban

После завершения служба Fail2ban запустится автоматически. В этом можно убедиться, проверив статус услуги:

sudo systemctl статус fail2ban

Результат будет выглядеть так:

● fail2ban.service - Fail2Ban Сервис загружен: загружен (/ lib / systemd / system / fail2ban.услуга; включено; предустановка поставщика: включена) Активно: активна (работает) с 10.03.2021 18:57:32 UTC; 47с назад… 

это оно. На этом этапе у вас есть Fail2Ban, работающий на вашем сервере Debian.

Конфигурация Fail2ban #

Стандартная установка Fail2ban включает два файла конфигурации, / и т.д. / fail2ban / тюрьма.conf а также / и т.д. / fail2ban / тюрьма.г / по умолчанию-дебиан.conf. Вы не должны изменять эти файлы, так как они могут быть перезаписаны при обновлении пакета.

Fail2ban читает файлы конфигурации в следующем порядке. Каждый .местный файл отменяет настройки из .conf файл:

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

Создать .местный файл конфигурации, скопировав значение по умолчанию тюрьма.conf файл:

sudo cp / etc / fail2ban / тюрьма.conf, local

Чтобы начать настройку сервера Fail2ban, откройте тюрьма.местный файл в текстовом редакторе:

Судо нано / и т. д. / fail2ban / тюрьма.местный

Файл включает комментарии, описывающие, что делает каждый параметр конфигурации. В этом примере мы изменим основные настройки.

Внесение IP-адресов в белый список #

IP-адреса, диапазоны IP-адресов или хосты, которые вы хотите исключить из блокировки, могут быть добавлены в игнорировать директива. Здесь вы должны добавить IP-адрес вашего локального ПК и все другие машины, которые вы хотите добавить в белый список.

Раскомментируйте строку, начинающуюся с игнорировать и добавьте свои IP-адреса через пробел:

/ и т.д. / fail2ban / тюрьма.местный
ignoreip = 127.0.0.1/8 :: 1 123.123.123.123 192.168.1.0/24 

Настройки бана #

бантайм, время поиска, а также максретри опции устанавливают время бана и условия бана.

бантайм это срок, на который IP заблокирован. Если суффикс не указан, по умолчанию используются секунды. По умолчанию бантайм значение установлено на 10 минут. Большинство пользователей предпочитают устанавливать более длительное время блокировки. Измените значение по своему вкусу:

/ и т.д. / fail2ban / тюрьма.местный
bantime = 1d 

Чтобы навсегда заблокировать IP, используйте отрицательное число.

время поиска это промежуток времени между количеством сбоев до того, как будет установлен запрет. Например, если Fail2ban настроен на блокировку IP-адреса после пяти сбоев (максретри, см. ниже), эти сбои должны происходить в время поиска продолжительность.

/ и т.д. / fail2ban / тюрьма.местный
findtime = 10 мин 

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

/ и т.д. / fail2ban / тюрьма.местный
maxretry = 5 

Уведомления по электронной почте #

Fail2ban может отправлять оповещения по электронной почте, когда IP-адрес заблокирован. Чтобы получать электронные письма, вам необходимо установить SMTP на вашем сервере и изменить действие по умолчанию, которое запрещает только IP-адрес % (action_mw) s, как показано ниже:

/ и т.д. / fail2ban / тюрьма.местный
действие =% (action_mw) s 

% (action_mw) s банит оскорбительный IP и отправляет электронное письмо с отчетом whois. Если вы хотите включить соответствующие журналы в электронное письмо, установите для действия значение % (action_mwl) s.

Вы также можете изменить адреса электронной почты отправителя и получателя:

/ и т.д. / fail2ban / тюрьма.местный
destemail = админ @ linuxize.com отправитель = корень @ linuxize.ком 

Fail2ban тюрьмы #

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

Fail2ban поставляется с несколькими тюрьмами для разных сервисов. Вы также можете создавать свои собственные конфигурации тюрьмы. По умолчанию включен только ssh jail.

Для включения джейла нужно добавить enabled = true после названия тюрьмы. В следующем примере показано, как включить постфиксную тюрьму:

/ и т.д. / fail2ban / тюрьма.местный
[postfix] enabled = true port = smtp, ssmtp filter = postfix logpath = / var / log / mail.бревно 

Параметры, которые мы обсуждали в предыдущем разделе, могут быть установлены для каждой тюрьмы. Вот пример:

/ и т.д. / fail2ban / тюрьма.местный
[sshd] enabled = true maxretry = 3 findtime = 1d bantime = 4w ignoreip = 127.0.0.1/8 11.22.33.44 год 

Фильтры расположены в / и т.д. / fail2ban / фильтр.d каталог, хранящийся в файле с тем же именем, что и тюрьма. Если у вас есть индивидуальная настройка и опыт работы с регулярными выражениями, вы можете настроить фильтры.

Каждый раз при изменении файла конфигурации необходимо перезапускать службу Fail2ban, чтобы изменения вступили в силу:

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

Клиент Fail2ban #

Fail2ban поставляется с инструментом командной строки под названием fail2ban-клиент который вы можете использовать для взаимодействия с сервисом Fail2ban.

Чтобы просмотреть все доступные параметры, вызовите команду с -час вариант:

fail2ban-client -h

Этот инструмент можно использовать для блокировки / разблокировки IP-адресов, изменения настроек, перезапуска службы и т. Д. Вот несколько примеров:

Заключение #

Мы показали вам, как установить и настроить Fail2ban в Debian 10.

Для получения дополнительной информации по этой теме посетите документацию Fail2ban .

Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Бесплатные движки с открытым исходным кодом для разработки игр для Linux
В этой статье будет рассмотрен список бесплатных игровых движков с открытым исходным кодом, которые можно использовать для разработки 2D- и 3D-игр в L...
Shadow of the Tomb Raider для Linux Учебное пособие
Shadow of the Tomb Raider - двенадцатое дополнение к серии Tomb Raider - франшизе приключенческой игры, созданной Eidos Montreal. Игра была очень хоро...
Как увеличить FPS в Linux?
FPS означает Кадров в секунду. Задача FPS - измерить частоту кадров при воспроизведении видео или во время игры. Проще говоря, количество непрерывных ...