Fail2Ban - відмінна можливість відбити атаки грубої сили на вашому сервері

fail2ban

Одним з найпоширеніших векторів атак на сервери є спроби грубого входу. Тут зловмисники намагаються отримати доступ до вашого сервера, намагаючись нескінченні комбінації імен користувачів та паролів.

Для таких проблем найшвидше та найефективніше рішення - обмежити кількість спроб та заблокувати доступ до користувача або до тієї IP протягом певного часу. Важливо також знати, що для цього існують також програми з відкритим кодом, спеціально розроблені для захисту від цього типу атаки.

У сьогоднішньому дописі Я представляю вам, один називається Fail2Ban. Спочатку розроблений Сірілом Джакіє у 2004 році, Fail2Ban є програмним забезпеченням для запобігання вторгненню, яке захищає сервери від атак грубої сили.

Про Fail2ban

Fail2ban сканує файли журналів (/ var / log / apache / error_log) і забороняє IP-адреси, які демонструють шкідливу активність, як занадто багато несправних паролів та пошук вразливостей тощо.

Загалом Fail2Ban використовується для оновлення правил брандмауера для відхилення IP-адрес протягом певного періоду часу, хоча будь-які інші довільні дії (наприклад, надсилання електронного листа) також можуть бути налаштовані.

Встановлення Fail2Ban на Linux

Fail2Ban міститься у більшості сховищ основних дистрибутивів Linux, а точніше - у найбільш часто використовуваних для використання на серверах, таких як CentOS, RHEL та Ubuntu.

У випадку з Ubuntu просто введіть наступне для встановлення:

sudo apt-get update && sudo apt-get install -y fail2ban

У випадку Centos та RHEL вони повинні ввести наступне:

yum install epel-release
yum install fail2ban fail2ban-systemd

Якщо у вас SELinux, важливо оновити правила за допомогою:

yum update -y selinux-policy*

Як тільки це буде зроблено, вони повинні знати на передньому плані, що файли конфігурації Fail2Ban знаходяться в / etc / fail2ban.

Конфігурація Fail2Ban в основному розділений на два ключові файли; це fail2ban.conf та jail.conf. fail2ban.confes визначає більший файл конфігурації Fail2Ban, де ви можете налаштувати такі параметри, як:

  • Рівень журналу.
  • Файл для входу.
  • Файл сокета процесу.
  • Файл pid.

jail.conf - це місце, де ви налаштовуєте такі параметри, як:

  • Конфігурація служб для захисту.
  • Як довго забороняти, якщо на них слід напасти.
  • Електронна адреса для надсилання звітів.
  • Дія, яку потрібно вжити при виявленні нападу.
  • Заздалегідь визначений набір параметрів, наприклад, SSH.

конфігурація

Тепер ми перейдемо до частини конфігурації, Перше, що ми збираємося зробити, це резервна копія нашого файлу jail.conf із:

cp -pf /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

І ми продовжуємо редагувати зараз за допомогою nano:

nano /etc/fail2ban/jail.local

Всередині ми переходимо до розділу [За замовчуванням], де ми можемо внести деякі корективи.

Тут, у частині "ingoreip", є IP-адреси, які будуть залишені і вони будуть повністю проігноровані Fail2Ban, тобто в основному це IP-адреса сервера (локальний) та інші, які, на вашу думку, слід ігнорувати.

Звідти далі інші IP-адреси, яким не вдалося отримати доступ, будуть заборонені і зачекайте, скільки секунд буде заборонено (за замовчуванням це 3600 секунд) і що fail2ban діє лише після 6 невдалих спроб

Після загальної конфігурації ми зараз вкажемо послугу. У програмі Fail2Ban вже є кілька попередньо визначених фільтрів для різних служб. Тож просто виконайте деякі адаптації. Ось приклад:

[ssh] enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 6

Після внесення відповідних змін вам нарешті доведеться перезавантажити запущений Fail2Ban:

service fail2ban reload
systemctl enable firewalld
systemctl start firewalld

Закінчивши це, давайте швидко перевіримо, чи працює Fail2Ban:

sudo fail2ban-client status

Розблокувати IP

Тепер, коли ми успішно заборонили IP, що робити, якщо ми хочемо заборонити IP? Для цього ми можемо знову використовувати fail2ban-client та сказати йому заборонити певний IP, як у прикладі нижче.

sudo fail2ban-client set ssh unbanip xxx.xxx.xx.xx

Де "ххх ..." Це буде IP-адреса, яку ви вкажете.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.