Установка Fail2ban
Щоб встановити програму Fail2ban, виконайте такі команди:
- Для установки на Ubuntu, Debian:
sudo apt-get update
sudo apt-get install fail2ban
- Для встановлення на CentOS:
yum update
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install fail2ban
Визначення
Перед початком роботи важливо уточнити деякі терміни, які використовуються в наступних розділах:
- filter – фільтр визначає регулярний вираз, який має відповідати шаблону, що відповідає помилці входу в систему або будь-якому іншому виразу
- action – дія визначає кілька команд, які виконуються у різні моменти часу
- jail – джейл (досл. англ. «в'язниця») – це комбінація одного фільтра та однієї або кількох дій. Fail2ban може обробляти кілька фільтрів одночасно
- client – відноситься до скрипту fail2ban-client
- server – відноситься до скрипту fail2ban-server
Сервер
Fail2ban складається з двох частин: клієнта та сервера. Сервер багатопотоковий і прослуховує в сокеті Unix-команди. Сам сервер нічого не знає про конфігураційні файли. Таким чином, під час запуску сервер перебуває в стані «за замовчуванням», у якому не визначено жодних джейлів. Для сервера fail2ban доступні такі опції:
**-b** Почати у фоновому режимі
**-f** Почати на передньому плані
**-s** Шлях до сокету
**-x** Примусово виконати сервер
**-h, —help** Показувати це довідкове повідомлення
**-V, —version** Надрукувати версію
Fail2ban-server не повинен використовуватись безпосередньо, за винятком випадків налагодження. Опція -s
Fail2ban-client є інтерфейс Fail2ban. Він підключається до файлу сокета сервера та відправляє команди для налаштування та керування сервером. Клієнт може прочитати конфігураційні файли або просто використовуватися для відправки однієї команди на сервер за допомогою командного рядка або інтерактивного режиму (який активується опцією -i). Fail2ban-client також може запустити сервер. Для fail2ban-клієнта доступні такі параметри:
**-c** Каталог конфігурації
**-s** Шлях до сокету
**-d** Дамп конфігурації. Для налагодження
**-i** Інтерактивний режим
**-v** Збільшити кількість подробиць
**—q** Зменшувати подробиці
**-x** Примусово виконати сервер
**-h, —help** Показувати це довідкове повідомлення
**-V**, —version Надрукувати версію
Усі налаштування у файлах конфігурації можна настроїти вручну. Конфігурація – це простий та ефективний спосіб налаштування сервера. Fail2ban-client переводить конфігурацію до набору команд. Проте fail2ban-client має ще дві команди для внутрішнього використання. Перша – це старт. При введенні команди $fail2ban-client start клієнт спочатку спробує розгорнути екземпляр сервера. Потім клієнт очікує запуску сервера, надіславши запити ping. Як тільки сервер відповідає на ці запити, fail2ban-клієнт аналізує конфігурацію та надсилає відповідні команди на сервер.
Друга команда – перезавантаження. Здійснюється введенням команди: $fail2ban-client reload
Загальні налаштування
Файл fail2ban.conf містить загальні параметри для демону fail2ban-сервера, такі як рівень ведення журналу та цільовий об'єкт. Тут також можна вказати шлях сокету, який використовується для зв'язку між клієнтом та сервером.