Новое Распределяем каналы MAX по категориям и территориям. Читать новость

Новости5 мин чтенияПросмотры: 1

Защита от DDoS-атак: сайт datool.ru и данные под защитой

Сайт datool.ru и данные сервиса под защитой от DDoS-атак: фильтрация трафика на уровне сети, CDN и кеш против всплесков нагрузки, лимиты запросов к API и входу, закрытые серверы и зашифрованные копии.

Иконка щита с галочкой — защита сайта datool.ru и данных пользователей от DDoS-атак и взлома

Сайт datool.ru и все данные сервиса теперь под защитой от DDoS-атак. Входящий трафик проходит фильтрацию на уровне сети: паразитные потоки запросов отсекаются ещё до того, как доходят до наших серверов. Каталог каналов MAX, статистика, кабинет и API остаются доступны, даже если кто-то пытается завалить сайт запросами.

Защита на уровне сети — только первый слой. Сам сайт устроен так, чтобы выдерживать всплески нагрузки и не пускать посторонних туда, где им нечего делать: картинки отдаются через CDN, тяжёлые страницы — из кеша, у запросов есть лимиты частоты, серверы закрыты файрволом, а базы данных доступны только нашим собственным серверам. Ниже рассказываем, из чего состоит защита и что она значит для вас.

Защита от DDoS на уровне сети

DDoS-атака — это попытка вывести сайт из строя, отправив ему больше запросов, чем он способен обработать. Обычно такие запросы идут одновременно с тысяч заражённых устройств. Против этого бесполезно просто «поставить сервер помощнее»: лишний трафик нужно отсеивать ещё на подходе.

Теперь весь трафик datool.ru проходит через сетевую защиту от DDoS-атак. Она отделяет обычных посетителей и клиентов API от мусорного потока и пропускает к сайту только нормальные запросы. Для вас ничего не меняется: адреса сайта, вход в кабинет и ключи API работают как прежде.

Сайт выдерживает всплески нагрузки

Даже если поток запросов законный — например, ссылку на канал опубликовало крупное СМИ, — сайт не должен падать. Для этого:

  • Картинки — через CDN. Аватары каналов и картинки постов отдаёт сеть доставки контента, а не наш сервер. Картинки — самая тяжёлая часть трафика страниц, и CDN принимает её на себя.
  • Тяжёлые страницы — из кеша. Готовые вкладки страницы канала хранятся в отдельном кеше: когда срок истёк, посетитель сразу видит прошлый ответ, а свежий считается в фоне. Наплыв посетителей на один канал не превращается в сотни одинаковых расчётов.
  • Рейтинги, подборки, «Сегодня в MAX» и «Статистика MAX» считаются заранее, раз в час, а не при каждом открытии страницы.
  • Медленные запросы не держат сайт. У запроса есть срок: заголовки должны прийти за секунды, а тело — за разумное время. Размер тела запроса ограничен, а приходящие данные сначала целиком принимает прокси-сервер и только потом передаёт сайту. Поэтому намеренно растянутые «медленные» запросы не занимают процессы сайта.
  • Каждая часть системы — в своих пределах памяти. Если какой-то сервис перегружен, перезапускается только он сам, а не сайт рядом с ним.

Лимиты частоты запросов

Ещё один слой защиты — ограничения на то, сколько запросов можно отправить за единицу времени.

  • API. У каждого тарифа API своя частота запросов в секунду и свой месячный объём. При превышении API отвечает кодом 429 с понятной причиной (rate_limited или quota_exceeded) и подсказкой, через сколько секунд повторить запрос. Подробности — в разделе «Лимиты и расход» документации.
  • Подбор ключей. Неудачные попытки войти в API с неверным ключом считаются по адресу отправителя. После нескольких десятков ошибок в минуту следующие запросы с этого адреса сразу получают 429, а ключ даже не ищется в базе.
  • Запросы без ключа (схема API, интерактивная документация) тоже ограничены по адресу.
  • Вход на сайт. Число неудачных попыток входа и запросов на восстановление пароля ограничено, так что подбирать пароли бессмысленно.
  • Дорогие действия. Добавление новых каналов в каталог, срочные копии картинок, выгрузки файлов и другие операции, которые запускают работу в фоне, ограничены по числу в минуту или в час. Часть из них — одновременно на посетителя и на весь сайт.

Серверы закрыты от лишнего

  • Файрвол на всех серверах. Снаружи открыто только то, что нужно для работы сайта. Серверы фоновых задач и сервер базы данных снаружи недоступны посетителям вовсе.
  • Вход на серверы — только по ключу. Вход по паролю отключён полностью. Ещё до этого решения за одни сутки на свежий сервер было почти 6 000 попыток подбора пароля, теперь они бесполезны.
  • fail2ban. Три ошибки входа за десять минут — бан адреса на час. Каждый следующий бан вдвое дольше, а повторных нарушителей блокируют на неделю.
  • Базы данных и Redis — только для своих. Они принимают подключения только от наших серверов, через внутреннюю сеть или файрвол, и только по зашифрованному соединению с проверкой сертификата. Подключиться к ним из интернета нельзя.
  • Только HTTPS. Все поддомены работают по защищённому соединению, а браузер запоминает это на год (HSTS).

Обновления без простоя

Обновления безопасности операционной системы ставятся на серверы автоматически. Исправления ядра применяются без перезагрузки: серверам не нужно останавливаться, чтобы закрыть найденную уязвимость. Раз в неделю отдельная проверка сообщает команде о новых версиях базы данных, пакетов и системы, а мониторинг круглосуточно следит за доступностью сайта, баз и фоновых задач.

Что это значит для вас

  • Пользователям — сайт и кабинет доступны, а данные организации, избранное, подписки и ключи API надёжно защищены.
  • Клиентам API — предсказуемые лимиты и понятные ответы 429 вместо неожиданных сбоев.
  • Владельцам каналов — статистика канала и подтверждение владельца не зависят от того, атакует ли кто-то сайт.

Частые вопросы

Что будет, если сайт атакуют?

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

Почему API ответил 429?

Код 429 значит, что превышена частота запросов тарифа или его месячный объём. В ответе есть машинный код причины и время до повтора. Лимиты тарифов описаны на странице API.Max.

Где хранятся мои данные?

На серверах в Москве, файлы — в хранилище в Санкт-Петербурге. Резервные копии зашифрованы и хранятся в закрытом хранилище.

Нужно ли мне что-то менять в своих настройках?

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

Безопасность — это не одна кнопка, а много слоёв: от фильтрации трафика до шифрования резервных копий. Пользуйтесь аналитикой каналов MAX спокойно: мы следим, чтобы сайт работал и данные были в сохранности.

Евгений Химич
Поделиться

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти