Назад | Перейти на главную страницу

Как я могу обновить Fail2Ban в Ubuntu 12.04.5 LTS, чтобы установить «рецидивирующий» фильтр?

Основной вопрос.

Как я могу установить обновленную версию Fail2Ban на моем Ubuntu 12.04.5 LTS (Precise Pangolin), чтобы я мог recidive набор фильтров. Ubuntu 12.04.5 LTS устанавливает Fail2Ban 0.8.6, и мне нужен Fail2Ban 0.8.7 для использования recidive фильтр.

Подробнее.

Я управляю кучей серверов Ubuntu 12.04.5 LTS (Precise Pangolin) и установил Fail2Ban специально для блокировки повторяющихся попыток перебора SSH. Эти атаки нацелены на root и root пользователь отключен во всех этих системах, но я просто хочу добавить еще один уровень защиты к моему миксу, а также сократить добавленный «шум», связанный с необходимостью просеивать неудачные попытки входа в мой SSH auth.log.

В любом случае, версия Fail2Ban - версия 0.8.6 - которая устанавливается для Ubuntu 12.04.5 LTS из репозиториев по умолчанию, по большей части отлично работает. Но, похоже, отсутствует поддержка для блокировки повторных правонарушений. И эти серверы определенно получают много постоянных попыток перебора. Поэтому я хочу убедиться, что эти клоуны заблокированы на более длительное время.

Я проверил это сообщение в блоге под названием, «Постоянно запрещать повторных нарушителей с помощью fail2ban (ОБНОВЛЕНО)» и рекомендует использовать recidive фильтр. Остальная часть этого сообщения показывает, как настроить индивидуальный эквивалент recidive но у меня нет никакого желания использовать индивидуальное решение, если встроенное решение, такое как recidive существуют.

Но когда я пытаюсь установить recidive filter в Fail2Ban 0.8.6 и перезапустите службу, он не скажет фильтр recidive не существует.

Когда я проверьте журнал изменений Fail2Ban на GitHub Я это вижу recidive поддержка была добавлена ​​около версии 0.8.7:

Tom Hendrikx
 * [f94a121..] 'recidive' filter/jail to monitor fail2ban.conf to ban
   repeated offenders. Close gh-19

Ну, разве нет ничего особенного. Я использую 0.8.6, а версия 0.8.7 это поддерживает.

Итак, как мне легко установить что-то новее, чем Fail2Ban 0.8.6 на Ubuntu 12.04.5 LTS? Я попытался установить версию 0.9.3, клонировав репозиторий GitHub, переключившись на ветку Debian (поскольку Ubuntu основан на Debian), и, похоже, это сработало. Но служба запуска не работала, и также кажется, что 0.9.3 не будет работать с версией IPTables, которую я установил в Ubuntu 12.04.5 LTS, если я не настрою некоторые файлы конфигурации или, возможно, не обновлю сам IPTables.

Возможно, есть способ настроить все это для работы с Ubuntu 12.04.5 LTS, но у меня нет времени или желания заниматься этим, поскольку все, что я хочу, это recidive поддерживать и не заботиться ни о чем другом. Что я могу сделать?

После того, как я разочаровался при попытке установить Fail2Ban 0.9.3 из исходного кода, я поискал собственный PPA и не нашел его. Но потом наткнулся на официальную страницу пакета Ubuntu для Fail2Ban и это дало мне идею. Официальный пакет Ubuntu 14.10 (Utopic Unicorn) для Fail2Ban имеет версию 0.8.13. Почему бы не установить это?

Итак, я избавился от установки Fail2Ban в Ubuntu 12.04.5 следующим образом:

sudo aptitude purge fail2ban

Затем я вручную установил некоторые зависимости Fail2Ban, например:

sudo aptitude install gamin libgamin0 python-central python-gamin python-support

Сделав это, я взял исходный код Ubuntu. .deb архив для Fail2Ban 0.8.13 вот так:

curl -O -L http://old-releases.ubuntu.com/ubuntu/pool/universe/f/fail2ban/fail2ban_0.8.13-1_all.deb

А потом я установил его с помощью dpkg как это:

sudo dpkg -i fail2ban_0.8.13-1_all.deb

Когда это было сделано, я проверил версию установленного оборудования следующим образом:

fail2ban-client --version

И это сработало!

Fail2Ban v0.8.13

Copyright (c) 2004-2008 Cyril Jaquier, 2008- Fail2Ban Contributors
Copyright of modifications held by their respective authors.
Licensed under the GNU General Public License v2 (GPL).

Written by Cyril Jaquier <cyril.jaquier@fail2ban.org>.
Many contributions by Yaroslav O. Halchenko <debian@onerussian.com>.

С Fail2Ban 0.8.13 теперь я могу добавить recidive фильтровать в /etc/fail2ban/jail.local и все работает как положено.

НОТА: Обратите внимание, что, хотя все это, похоже, работает - и поскольку это вопрос, на который отвечает сам человек, - если кто-нибудь верит или подозревает, что подобная установка пакета Ubuntu 14.10 в Ubuntu 12.04.5 является проблемой, ожидающей своего решения. , пожалуйста, дай мне знать. Поскольку Fail2Ban полностью основан на Python и, похоже, теперь работает должным образом, я подозреваю, что этот пакет был достаточно легким, чтобы не столкнуться с какими-либо проблемами. Но дайте мне знать, если мое предположение неверно.

У меня была аналогичная проблема. Я использую Ubu 14.04.05 64-бит с версией репо Fail2ban v0.8.11.

Требуется версия 0.8.14, которая указана как "очень стабильная" на главном сайте Fail2ban.

Оказывается, вы можете просто загрузить более позднюю версию и запустить ее setup.py, чтобы перезаписать v0.8.11. Там есть не нужно удалять (удалить) v0.8.11, и вам не нужно устанавливать другие зависимости. Однако есть одна ошибка, которую я опишу ниже.

В любом случае вот мое решение:

Установите Fail2ban из репо, если вы еще этого не сделали

apt-get update && apt-get upgrade -y
apt-get install build-essential -y
apt-get install fail2ban

Проверьте версию Fail2ban, затем остановите ее

fail2ban-client --version
fail2ban-client stop

Скачать v0.8.14 с Github, распаковать

wget https://github.com/fail2ban/fail2ban/archive/0.8.14.tar.gz
tar -xzf 0.8.14.*

ВАЖНО, НЕ ПРОПУСТИТЕ ЭТО: Скопируйте текущие fail2ban.conf и jail.conf из / etc / fail2ban в безопасное место. При необходимости создайте новую папку. Не беспокойтесь о jail.local.

cp /etc/fail2ban/fail2ban.conf SOME_OTHER_FOLDER
cp /etc/fail2ban/jail.conf SOME_OTHER_FOLDER

Запустите setup.py для v0.8.14.

cd fail2ban-0.8.14
python setup.py install

Переместите два файла .conf, которые вы скопировали ранее, обратно в / etc / fail2ban, перезаписав те, которые были созданы при установке v0.8.14.

mv SOME_OTHER_FOLDER/fail2ban.conf /etc/fail2ban 
mv SOME_OTHER_FOLDER/jail.conf /etc/fail2ban 

Запустите fail2ban, проверьте версию

fail2ban-client start
fail2ban-client --version

Поскольку мы не выполняли «удаление» Fail2ban, нет необходимости возиться со сценариями инициализации или запуска; Fail2ban все равно будет запускаться при перезагрузке.

Резервное копирование файлов .conf важно, поскольку v0.8.14 setup.py может генерировать недопустимые файлы .conf, из-за которых Fail2ban не запускается. (Скорее всего, он завершится с ошибкой «Не найдено ни одного файла журнала»)