Вопрос или проблема
Моя проблема в том, что раз в два месяца, именно в тот момент, когда проходит обновление Let’s Encrypt на хостинге, происходит какая-то неизвестная атака, и единственное, что я нахожу после этого, — это огромное количество ошибок (тысячи ошибок, иногда 40 тысяч или даже 200 тысяч ошибок и больше) на индикаторе графика (красная линия) монитора использования ресурсов. Из-за того, как работают дешевые хостинговые компании, нет логов, которые я мог бы изучить для расследования инцидента, а единственный ответ от службы поддержки — это что-то вроде “ваш код плохой”, и когда я прошу показать мне логи с этими 40 тысячами ошибок, ответ звучит: “смотрите красную линию на графике”.
У меня есть WAF от Cloudflare, но, к сожалению, это не помогает.
Я также проверил свой код и на 99.999999999% уверен, что он в порядке.
Что-то я могу с этим сделать? Поскольку установка honeypot не является вариантом в случае дешевого хостинга. Я имею в виду, что знаю, что могу сменить компанию, и это мой текущий план — приобрести VPS.
Для справки, это мой третий хостинг, но впервые сталкиваюсь с такими проблемами, также впервые использую Let’s Encrypt, предустановленный на этом хостинге.
Ответ или решение
Для предотвращения неизвестных атак во время обновления Let’s Encrypt на хостинге, вы можете предпринять несколько шагов, учитывая ограничения вашего текущего хостинга и отсутствие возможности доступа к логам. Вот рекомендации, которые могут помочь вам в этой ситуации:
1. Используйте Cloudflare более эффективно
- Активация режима "Быстрое время": Убедитесь, что ваш сайт находится под защитой Cloudflare. Включите режим "Быстрое время" (Under Attack Mode), который поможет блокировать подозрительные запросы во время обновления.
- Настройка WAF: Пересмотрите настройки Web Application Firewall (WAF), чтобы более строго фильтровать потенциальные атаки. Возможно, вам стоит добавить дополнительные правила или включить режим более строгой фильтрации трафика.
2. Ограничение доступа к вашему веб-серверу
- IP-белый список: Если вы можете ограничить доступ к вашему серверу по IP-адресам, сделайте это. Вы можете настроить сервер так, чтобы он принимал запросы только с определённых адресов.
- Режим "Чтение": Если у вас есть возможность временно перевести сайт в режим "только чтение" или создать страницу с сообщением о профилактических работах в момент обновления Let’s Encrypt, это может помочь уменьшить количество входящих запросов.
3. Упрощение настроек вашего сайта
- Минимизация нагрузки: На время обновления отключите не критически важные функции сайта, чтобы минимизировать нагрузку на сервер. Например, отключите сторонние API, плагины и модули, которые могут вызывать дополнительные запросы.
- Кеширование: Используйте системное кеширование, чтобы сократить количество запросов к серверу. Это также может помочь уменьшить нагрузку и временно ограничить количество выполняемых скриптов.
4. Анализ во время обновления
- Мониторинг: Установите сторонние инструменты для мониторинга производительности вашего сайта, которые могут давать вам больше информации о проблемах, чем просто мониторинг ресурсов. Такие инструменты, как New Relic или Uptime Robot, могут дать вам более полную картину происходящего.
- Изучите сигналы о нападениях: Хотя у вас нет журналов, вы можете обратить внимание на аномалии в используемой памяти, времени ответа и других метриках, чтобы попытаться идентифицировать, когда и какое действие вызывает пиковые нагрузки.
5. Переход на VPS
- Планируйте будущий переход: Если проблема продолжается и вам не хватает контроля над ситуацией, рассмотрите возможность перехода на VPS, который даст вам большую гибкость и доступ к логам. Это не только позволит вам лучше управлять безопасностью, но и возможно улучшит производительность вашего сайта.
6. Консультация со специалистами
Если проблема останется нерешённой, подумайте о привлечении специалистов по безопасности, которые могут провести аудит вашего сайта и хостинга, а также предложить индивидуальные рекомендации.
Эти меры помогут вам минимизировать риски и подготовиться к повторяющимся инцидентам, особенно во время обновлений Let’s Encrypt. Надеюсь, эти рекомендации окажутся полезными, и вы сможете stabilizировать работу вашего сайта.