2.4.1.2.7. Захист від флуду (I'm Under Attack)

Примітки:

  • Перевірка не виконується для IP-адрес, які додані в білий список Firewall.
  • Захист не заважає запитам від сервісів, які публікують списки своїх IP-адрес, наприклад Google, Bing, OpenAI тощо.
    • Відстежувати сервіси, які не публікують свої IP-адреси, неможливо, тому у разі спрацювання захисту для запитів від такого сервісу достатньо додати його IP до білого списку Firewall.
  • Якщо перевірка не пройдена, повертається відповідь 429.

На хостингу доступна система захисту від флуду, яка дає змогу відсіювати небажані запити під час атак на сайт.

Коли захист увімкнений, у браузері відвідувача сайту спочатку виконується простий JS-скрипт, який визначає, чи є відвідувач людиною. Якщо скрипт виконується успішно, сайт завантажується у звичайному режимі, якщо ні — замість завантаження сайту виводиться повідомлення, що для його перегляду в браузері необхідно увімкнути JavaScript. Для звичайних відвідувачів така перевірка проходить практично непомітно.

flowchart LR request@{ shape: stadium, label: "➡️ Запит" } whitelist@{ shape: rounded, label: "🧱 Режим
обмеженого
доступу" } blacklist@{ shape: rounded, label: "📋 Чорний
список IP" } firewall@{ shape: rounded, label: "🔥 Firewall" } bots@{ shape: rounded, label: "🤖 Боти" } countries@{ shape: rounded, label: "🌎 Країни" } suspicious@{ shape: rounded, label: "🔍 Підозрілі IP" } subgraph iam [🛡️ I'm Under Attack] enabled@{ shape: diamond, label: "Захист
увімкнено?" } passed@{ shape: diamond, label: "Захист
пройдено?" } end site@{ shape: stadium, label: "✅ Сайт" } error_429@{ shape: stadium, label: "🚫 Помилка 429" } request-->whitelist request-->blacklist whitelist-->firewall blacklist-->firewall firewall-->bots bots-->countries countries-->suspicious suspicious-->enabled firewall-.->site enabled-->|❌|site enabled-->|✅|passed passed-->|✅|site passed-.->|❌|error_429

У ланцюжку всіх етапів захисту сайту I'm Under Attack йде після режиму обмеженого доступу, чорного списку IP, Firewall, захисту від ботів, обмеження доступу за країнами і перевірки підозрілих IP.

Захист налаштовується індивідуально для кожного сайту в розділі «Захист сайту» на вкладці «Основні налаштування» за допомогою параметра «I'm Under Attack»:

Захист може бути в одному з чотирьох режимів:

  • Захист вимкнений і автоматично вмикатиметься при флуді — автоматичний режим, захист вмикається при перевищенні ліміту одночасних запитів (див. нижче).
  • Захист вимкнений і не буде автоматично вмикатися при флуді — захист повністю вимкнений.
  • Захист увімкнений і не буде автоматично вимикатися — захист завжди увімкнений.
  • Захист увімкнено автоматично і буде автоматично вимкнено при завершенні флуду — система помітила флуд й увімкнула захист.
    • Опція може вмикатися тільки автоматично при виявленні флуду нашою системою. Увімкнути її вручну не можна, можна тільки перемкнути на іншу опцію (наприклад, коли є підозра на хибне спрацьовування або для сайту вжито інших методів захисту).

У полі «Ліміт одночасних запитів» вказується кількість одночасних запитів, при перевищенні якої автоматично вмикається I'm Under Attack. Мінімальне значення дорівнює 10, максимальне на віртуальному хостингу дорівнює 100, на бізнес-хостингу — 200. Якщо захист повністю вимкнений, ліміт ні на що не впливає.

Сайт з увімкненим захистом позначається в розділі «Мої сайти» іконкою щита 🛡️.

Зміст

    (6)