Как защитить сайт от DDoS-атак

В 1 части руководства о DDoS-атаках мы рассказали о том, что это, и какие бывают атаки.

Сегодня расскажем о том, как защищаться от DDoS-атак и как сделать сайт устойчивым к ним.

Защита от ddos-атак: как сделать сайт устойчивым

Как защититься от DDoS-атак

Активируйте файрвол для веб-приложений

Файрвол прикладного уровня — посредник между трафиком и сайтом. Он перехватывает все запросы, проверяет их допустимость, и только тогда устанавливает соединение.

Файрвол не будет пропускать зловредный трафик на сайт и защитит вас от атак.

Блокируйте отдельные страны

Большинство DDoS-атак идет из определенных стран — Китая, Турции.

Вы можете включить опцию блокировки IP отдельных стран в файрволе. Пользователи из этих стран смогут просматривать контент сайта, но не смогут регистрироваться, оставлять комментарии, заходить в интерфейс сайта.

Мониторьте трафик

Важно мониторить трафик сайта, чтобы знать о пиках трафика и предупреждать DDoS-атаки. Если вы видите, что количество исходящего трафика значительно выросло, это скорее всего говорит о DDoS-атаке. Мы рекомендуем вам использовать инструменты мониторинга и проверять логи сервера.

Когда на сайте уже есть одна DDoS-атака, ищите другие

DDoS-атаки могут также отвлекать внимание от других, более серьезных атак. Например, пока все разбираются с DDoS-атакой, злоумышленники в это время могут красть данные.

Как сделать сайт устойчивым к DDoS-атакам

Хотя хороший файрвол может автоматически отразить более 90% DDoS-атак, некоторые сайты особенно уязвимы перед этой угрозой.

Следуйте рекомендациям, чтобы ваш сайт мог справиться с пиковым трафиком.
Во время атаки тысячи устройств будут загружать каждый байт данных миллионы раз.

Первый шаг к более мощному сайту — это сделать его легче.

Удалите или оптимизируйте:

Картинки и шрифты

Почти у каждой платформы есть плагины или модули, чтобы оптимизировать или уменьшить картинки. Это существенно уменьшит размер сайта.

Некоторые виды картинок можно заменить иконками, превратить в формат SVG или объединить в одну картинку. Картинки также можно подгружать не всегда, а по запросу.

Не вставляйте много шрифтов — используйте только нужные стили.

Видео

Видео занимают большую часть диска и замедляют резервное копирование. Поэтому их стоит переформатировать в более удобный формат.

Используйте профессиональные сервисы такие, как Vimeo, Youtube, Wistia. В них встроены специальные фильтры, которые предупреждают атаки на видео. Кроме этого, в таких сервисах видео проигрываются гораздо быстрее даже при медленном интернете.

CSS и JavaScript

Если вы уменьшаете размер исходного кода, вы убираете ненужные данные из файлов.

Если у вас не получается избавиться от файлов или подключить их из внешних источников, попытайтесь найти более легкие альтернативы.

Виджеты и плавающие фреймы

Ограничьте тех, кто может использовать плавающие фреймы на сайте и старайтесь не использовать слишком много виджетов.

Виджеты соцсетей можно заменить обычными картинками.

Поиск, комментарии и систему чатов

Не используйте внутренние системы для чатов, поиска и комментирования. Именно эти элементы сайта часто атакуют. Используйте сторонние системы и инструменты — они уже протестированы в бою и могут защитить себя от атак.

Также помните о том, что добавлять любой сторонний код на сайт опасно, поэтому используйте только проверенные источники.

Если вы все же используете свою систему, поставьте капчу, чтобы на сайт не валился трафик ботов.

POST и WebSockets

Запросы POST и WebSockets отнимают много ресурсов сервера, поэтому используйте их только при надобности.

Например, у CMS WooCommerce есть классная функция Cart Fragments AJAX. Она обновляет сумму корзины, не обновляя страницу.

Но если вы отключите эту функцию, сервер будет потреблять меньше ресурсов, а скорость сайта увеличится. То же самое можно сделать для WordPress Heartbeat API в некоторых случаях.

Будьте аккуратны при отключении запросов POST и WebSockets, чтобы не поломать сайт.

Загрузки

Старайтесь не размещать загруженные файлы на сервере, или хотя бы сделайте ссылку на загрузку файлов временной по IP-адресу посетителя.

Редиректы

Избегайте цепочек редиректов.

Например, ваш сайт использует субдомен www и SSL-сертификат. Перенаправляйте http://yourdomain.com сразу на https://www.yourdomain.com, не сначала на безопасную версию https: https://yourdomain.com”, а потом уже на версию с www: https://www.yourdomain.com.

Это лучше и для пользователя, который может быстрее открыть сайт, и для сервера, которому не надо обрабатывать кучу редиректов.

Шпаргалка для защиты сайта от DDoS-атак

  • Активируйте файрвол для веб-приложений.
  • Блокируйте IP отдельных стран.
  • Следите за трафиком с помощью инструментов мониторинга.
  • Когда на сайте уже есть одна атака, ищите другие.

Шпаргалка для повышения устойчивости сайта к DDoS-атакам

Удалите или оптимизируйте:

  • Картинки и видео
  • CSS и JavaScript
  • Шрифты
  • Виджеты и плавающие фреймы
  • Поиск, комментарии и систему чатов
  • Запросы POST и WebSockets
  • Загрузки и редиректы

Валерия

Руковожу контент-направлением, работаю в сфере маркетинга и редактуры 4 года.