Как сделать IT-инфраструктуру готовой к любым форс-мажорам
В СМИ часто появляются новости об очередных кибератаках, сливах данных, масштабных сбоях. Число угроз для веб-ресурсов постоянно увеличивается. А пользователи становятся требовательнее к скорости работы сервисов. Если сервисы фирмы недоступны, это влечёт финансовые потери, огромные репутационные риски, нарушение бизнес-процессов.
Построение отказоустойчивых систем, которым не страшны никакие киберугрозы и сбои, – очень обширная тема. В одной статье мы не сможем охватить её полностью. В материале поделимся основными правилами, которых должен придерживаться любой онлайн-бизнес.
Готовность к высоким нагрузкам
Представьте, вы запланировали масштабную акцию в Чёрную пятницу. Провели рекламную кампанию, подготовили сайт и рассчитываете на хорошую прибыль. Но в день начала распродажи ваш веб-ресурс внезапно становится недоступен. Клиенты уходят к конкурентам, а бизнес теряет потенциальный доход.
Почему так произошло? Возможно, это была DDoS-атака, организованная зависливыми недоброжелателями. Но довольно часто сервисы в моменты подобных событий «ложатся» не из-за хакеров, а из-за того, что инфраструктура оказалась не готова к такому наплыву посетителей и не выдержала легитимных запросов.
Давайте разбираться, что позволит не допустить подобных ситуаций.
Стресс-тестирование
Для начала нужно проверить, насколько отказоустойчивые ваши системы. Для этого производится стресс-тест.
Что он позволяет понять:
- Какую максимальную нагрузку веб-приложение способно выдержать.
- Как сервисы работают в условиях экстремальных условиях.
- Насколько устойчивы веб-ресурсы к разным типам атак.
- Какие узкие места есть в приложении.
Тестирование может показать, что приложение способно выдержать меньшее количество трафика, чем ожидается, и выявить слабые места в архитектуре.
Проверить отказоустойчивость можно с помощью разных инструментов. Стресс-тест в том числе можно заказать у нас.
Итак, мы проверили свою инфраструктуру на готовность к пиковым скачкам и выявили слабые места. Теперь важно понять, как увеличить стабильность наших сервисов.
Дополнительные вычислительные мощности
Одна из причин, почему инфраструктура может не справляться — недостаточно вычислительных мощностей. Мощностей ваших серверов может не хватать для того, чтобы обработать большие объёмы трафика. Самый очевидный совет в этом случае — переходить на более мощные конфигурации.
Но если наплыв тарифка на ваши ресурсы — это временная ситуация, которая происходит, например, во время распродаж, в остальное время ваши дополнительные мощности должны будут простаивать. А простой нескольких машин — это лишние расходы.
В таких ситуациях лучше переехать в облако. Вы можете подключить дополнительные виртуальные машины буквально за несколько кликов, а когда пиковая активность спадёт, их можно будет так же быстро отключить.
При этом в облаке можно платить только за фактически используемые ресурсы. Мы в EdgeЦентр используем модель PAYG, и наши клиенты платят только за те мощности, которыми пользуются.
Таким образом, в облаке вы не переплачиваете за простои.
Кроме этого, мы советуем проверить, где хранятся данные. Если важна высокая скорость их отдачи, лучше подключить S3-хранилище.
Балансировщики
Может быть так, что вычислительных мощностей у вас достаточно. Но вся нагрузка приходится на один сервер, а остальные простаивают.
В этой ситуации поможет балансировщик.
Они бывают разных видов. Мы в EdgeЦентр, например, предоставляем 2 типа балансировщиков:
1. На уровне приложений L7 (HTTP/HTTPS). Поддерживает маршрутизацию на основе URL-путей. Запросы могут перенаправляться на 1 или несколько портов каждого сервера в кластере. Балансировка определяется содержанием сообщений.
Такой балансировщик необходим, когда критичен вид контента: например, если нужно направить клиентов на правильную языковую версию сайта.
2. На сетевом и транспортном уровне L3, L4 (TCP/UDP). Может обрабатывать до нескольких тысяч запросов в секунду. Не считывает содержимое и более эффективен для простой балансировки на уровне пакетов, быстрой и безопасной передачи данных.
Сеть доставки контента (CDN)
CDN — это множество распределённых серверов, которые кешируют контент с источника и доставляют юзерам кратчайшим маршрутом.
CDN главным образом служит для ускорения работы веб-приложений и повышения их надёжности.
При использовании CDN запросы идут не к серверу-источнику, а к кеширующим CDN-серверам. Таким образом, нагрузка на источник резко снижается.
А при пиковых скачках трафик равномерно распределяется между узлами. Это позволяет сети обрабатывать терабайты информации.
Например, общая ёмкость нашей CDN — 110+ Тбит/с (включая партнёрские сети). Наша отказоустойчивая сеть отлично справляется с доставкой огромных объёмов данных.
Профессиональный DNS-хостинг
Еще один инструмент, который поможет вам избежать проблем со стабильностью — надёжный и быстрый DNS-хостинг.
Он позволяет разместить информацию о ваших доменах на DNS-серверах. Чем больше их у хостинга и чем ближе они расположены к юзерам, тем выше будет скорость и стабильность работы.
Например, на нашем DNS-хостинге мы используем балансировку Anycast. Запросы к DNS распределяются по серверам и отправляются кратчайшим маршрутом. А если один из DNS-серверов выйдет из строя, ваш сайт останется доступным.
Кроме этого, у нашего DNS-хостинга есть функция DNS Failover. Сейчас она работает в режиме бета-тестирования. Она проверяет доступность вашего сайта или сервера. Если функция обнаружит неработающий IP-адрес, она выведет его из ответов DNS. Таким образом, ваш веб-ресурс останется доступен при сбоях.
Защита от кибератак
Любые веб-ресурсы могут быть уязвимы к кибератакам.
Это могут быть DDoS-атаки, организованные недобросовестными конкурентами, взломы с целью украсть персданные или вредоносные боты, которые собирают информацию в пользу конкурентов, замедляют сайт, искажают аналитику и провоцируют нарушение бизнес-процессов.
Количество киберпреступлений растет с каждым годом. Только по итогам первого полугодия 2022 года число кибератак в России выросло в 15 раз.
Отчет о стоимости услуг DDoS-атак в Dark Web от сервиса Privacy Affairs показывает, что в сравнении с прошлым годом эти атаки стали для злоумышленников еще дешевле.
Рассказываем, какие инструменты можно применять против разных типов угроз.
Защита веб-сервисов и инфраструктуры от DDoS-атак
Сейчас большинство DDoS-атак сложные – проходят с применением сразу нескольких методов, чтобы «положить» сайт. Но глобально все атаки можно разделить на три типа:
- Volumetric-атаки (объёмные атаки или флуд). Направляют на сервер большое количество сообщений.
- Protocol-атаки эксплуатируют уязвимости сетевых протоколов и могут вывести веб-ресурс из строя точечными действиями.
- Application-атаки — на уровне приложения, которые направлены непосредственно на веб-сервис.
Чтобы защитить свою инфраструктуру, лучше променять комплексный подход. Сейчас это самый эффективный способ.
- Защита работает на всех уровнях модели OSI.
- Трафик проходит через центры фильтрации, которые анализируют каждый запрос и блокируют вредоносные.
- Весь трафик анализируется с помощью комплекса методов: технического, поведенческого, сигнатурного и статистического анализа.
Такой подход позволяет останавливать любые DDoS-атаки. А доступ к вашим ресурсам получают только настоящие пользователи.
Защита от ботов
Боты могут серьёзно навредить вашему бизнесу:
- Парсить сведенья в пользу конкурентов
- Искажать аналитику на ваших ресурсах
- Взламывать аккаунты клиентов
- Скликивать платную рекламу
- Мешать юзерам делать покупки (например, добавив все товары в корзину)
Чтобы эффективно защититься от них, нужны современные решения, которые должны распознавать и блокировать ботов без капчи и редиректов.
Приведём для примера, как работает наша защита от ботов:
- С помощью комплексного анализа трафика определяет их мгновенно.
- Производит блокировку по сессиям, а не по IP-адресам.
- Поддерживает белые и чёрные списки IP-адресов.
В основе нашего решения лежат алгоритмы машинного обучения. Это позволяет нам определять автоматизированную активность с точностью 99,99%, работать на опережение и блокировать даже неизвестные ранее атаки.
WAF
WAF (Web Application Firewall) — защитный экран для веб-приложений от взлома. Он не позволяет злоумышленникам находить уязвимости в сервисах и эксплуатировать их.
Многие межсетевые экраны работают достаточно грубо — тотально блокируют порты, адреса и протоколы, чтобы остановить вредоносный трафик. Из-за этого под раздачу могут попасть важные легитимные сервисы.
Чтобы избежать таких ситуаций, мы советуем пользоваться более современнми файрволами, которые умеют анализировать содержимое пакетов.
Есть экраны, которые рименяют алгоритмы машинного обучения. Они могут точно определять вредоносный трафик и блокировать неизвестные ранее атаки. При этом у них очень низкий коэффициент ложных срабатываний.
Так, например, работает наш WAF. Коэффициент ложных срабатываний у него не больше 0,01%. При этом он умеет не только блокировать попытки атак, но и находить уязвимости в коде и давать рекомендации по их устранению.
Сохранность информации и непрерывность бизнеса
Даже если вы смогли защититься от кибератак, могут возникнуть и другие непредвиденные обстоятельства. Отключение электроэнергии, сбои на магистральных сетях провайдеров и многое другое — все эти события невозможно предсказать, поэтому нужно быть к ним готовыми. Какой бы отказоустойчивой не была ваша архитектура, должна быть настроена надежная система резервного копирования данных.
Расскажем о ключевых параметрах, рассчитываемых при планировании и настройке системы бэкапов.
Резервное копирование
Чтобы в случае сбоя файлы можно было легко восстановить, обязательно нужны бэкапы.
Здесь очень важно составить план аварийного восстановления (ещё его называют BCDR — план обеспечения непрерывности бизнеса). Для каждой компании правила составления этого плана будут индивидуальны. Всё зависит от специфики вашего проекта.
Два важных параметра, которые обязательно нужно учесть, — целевая точка восстановления (recovery point objective, RPO) и целевое время восстановления (recovery time objective, RTO).
- RPO определяет, какие максимальные потери данных (в единицах времени) допустимы. Грубо говоря, он отвечает на вопрос, когда должно быть последнее сохранение, через какие промежутки времени делаются бэкапы;
- RTO определяет время простоя и показывает, сколько времени займет восстановление работы с момента аварии.
Кроме этого важно определить, что именно будет копироваться. Какие типы данных обязательно нужно сохранить, а что не так страшно потерять.
А ещё понять, где эти бэкапы будут храниться. Разумнее всего их будет хранить отдельно от основных данных, в надёжном хранилище, расположенном в дата-центре не ниже уровня Tier III.
Снапшоты
Снапшот — это снимок состояния всей системы целиком. Если в качестве бэкапа вы можете сохранить какую-то важную информацию, то снапшот фиксирует полную конфигурацию всей машины: ОС, все файлы и их расположение.
От бэкапов прежде всего они отличаются целью. Бэкапы создаются, чтобы информацию можно было восстановить в случае потери. А снапшоты позволяют быстро откатиться к предыдущему состоянию, если что-то пошло не так.
Снапшоты делают перед обновлениями или любыми изменениями в сервисах.
Некоторые облачные провайдеры (в том числе и EdgeЦент) предлагают снапшоты по расписанию. Это удобно — если какое-то изменение неожиданно вызовет сбой, у вас всегда будет версия, к которой можно откатиться.
Подведём итоги
Как сделать инфраструктуру и сервисы готовыми к любым форс-мажорам:
- Проверьте, насколько ваша система готова к высоким нагрузкам.
- Чтобы сделать сервисы более надёжными, размещайте их на мощных серверах, используйте балансировщики. А ещё можно подключить CDN.
- Обезопасьте себя от кибератак. Очень важно обеспечить комплексную защиту от DDoS-атак на всех уровнях модели OSI, а ещё использовать антибот и современный WAF от взломов.
- Обязательно составьте план аварийного восстановления. Продумайте, как часто нужно делать бэкапы, что сохранять и где хранить. А для быстрого отката системы к исходному состоянию можно настроить снапшоты.
Построить действительно надёжную и стабильную инфраструктуру — сложная задача. Но вы можете доверить её профессионалам. Все сервисы, которые мы упоминали в этой статье, вы можете заказать у единого провайдера. EdgeЦентр готов закрыть все ваши технические потребности. А вы сможете сосредоточиться на развитии ваших проектов.