Техническое задание: Внедрение защиты от DDoS-атак
Цель проекта
Организовать эффективную защиту веб-инфраструктуры от распределённых атак типа "отказ в обслуживании" (DDoS) с поэтапным внедрением и минимальным временем простоя.
Текущая инфраструктура
- Операционная система: Debian
- Оркестрация и развертывание: Docker, Ansible
- Веб-сервер и среда выполнения: FrankenPHP (развернут в двух контейнерах: основной веб-сайт и отдельный контейнер с API для сторонних сервисов)
- Базы данных и кэш: Redis, MariaDB
- Система контроля версий: Git (все изменения вносятся исключительно через Git)
Известные особенности
- После перезапуска сервисов (Redis/MariaDB) веб-сайт может восстанавливать работу с задержкой.
План внедрения (этапы)
-
Этап 1: Тестовый сервер
- Развернуть и настроить выбранное решение для защиты от DDoS в тестовой среде.
- Провести интеграцию с текущим стеком технологий (Docker, FrankenPHP).
- Выполнить тестирование функциональности и нагрузки, убедиться в отсутствии конфликтов.
-
Этап 2: Производственный сервер (Prod)
- Перенос проверенной конфигурации на боевые серверы.
- Обеспечить плавный переход с минимальным временем простоя.
- Настроить мониторинг и оповещения о атаках.
Ключевые требования к исполнителю
- Уверенные практические знания Docker и его сетевых моделей.
- Опыт работы и настройки FrankenPHP или аналогичных PHP-решений в контейнерах.
- Понимание принципов работы DDoS-атак и методов защиты на уровне приложения и сети.
- Умение работать с инструментами оркестрации (Ansible).
- Следование процессу: все изменения инфраструктуры должны быть описаны в конфигурационных файлах и зафиксированы в Git.