BitVPS
Что на самом деле означает «VPS с защитой от DDoS» — scrubbing, null-route и мелкий шрифт
Сетевой разбор

Что на самом деле означает «VPS с защитой от DDoS» — scrubbing, null-route и мелкий шрифт

Каждый хост на этом рынке печатает на тарифной карточке «защита от DDoS». Мало кто её определяет, а сами определения различаются на три порядка — от scrubbing-фабрики, поглощающей флуд в 600 Gbps так, что игроки ничего не замечают, до скрипта, который выводит ваш IP из таблицы маршрутизации на двадцать четыре часа при первом же превышении порога входящего трафика. И то, и другое продаётся под одними и теми же двумя словами. Вот как отличить одно от другого до того, как вы заплатите.

Никакого KYC — никогда DMCA игнорируется Без журналов трафика Готов за 60 секунд

Два слова, два противоположных поведения

Когда приходит флуд, хост может сделать одно из двух, и индустрия продаёт оба варианта под названием «защита от DDoS». Первый — поглощение: трафик затягивается в scrubbing-слой выше по потоку от вашего сервера, атакующие пакеты отбрасываются там же, легитимные пакеты идут дальше, и ваш сервис остаётся доступным на всём протяжении атаки. Второй — blackholing — также называемый null-routing, или RTBH согласно RFC 5635, — когда ваш IP-адрес выводится из таблицы маршрутизации, так что до него вообще ничего не доходит. Флуд перестаёт попадать в дата-центр. Как и ваши пользователи, ваш мониторинг и ваша SSH-сессия. Атакующий получает ровно тот результат, за который заплатил.

Оба варианта — реальная инженерия, и ни один из них не является обманом сам по себе. Blackholing существует потому, что поглощение крупного флуда стоит реальных денег — транзит тарифицируется, scrubbing-мощности закупаются и разворачиваются заранее, — и бюджетный хост, ставящий одного клиента на null-route ради того, чтобы четыреста остальных остались онлайн, принимает вполне защитимое решение. Хитрость — в местоимении. «Защита от DDoS» верна в обоих случаях; разница в том, чей сервис на самом деле защищают. Читайте каждую тарифную карточку, держа этот вопрос в голове.

РеакцияТрафик атакиВаш сервисОбычно описывается как
Scrubbing / поглощениеФильтруется выше по потоку, отбрасывается на edgeОстаётся онлайн, обычно без заметных изменений«Постоянная митигация», «anycast scrubbing»
Blackhole / null-routeОтбрасывается вместе с вашим легитимным трафикомОфлайн на всё время атаки — обычно 1–24 h«Защита до X Gbps», «временная приостановка IP»
Только rate-limit на edgeЧастично отбрасывается, частично случайноДеградация — реальные пользователи видят потери пакетов«Базовая защита включена»
Ничего (решает оператор)Доходит до стойки, пока апстрим не заблокирует префикс через blackholeОфлайн, как и ваши соседи по стойке«Доступна защита от DDoS»

Читаем мелкий шрифт до оплаты

Формулировки выдают всё сами. «Защита до 10 Gbps» — это потолок, и следующее предложение — то, что про трафик сверх лимита, — и есть пункт про null-route. «Защищённый IP доступен как дополнение» означает, что адрес, который вы получаете по умолчанию, не защищён. «Per-incident» означает, что счёт придёт уже после атаки. «Fair use», привязанное к митигации, означает квоту атак в месяц, после которой вы остаётесь один на один с проблемой. Ни одна из этих формулировок не ложь — их просто пишут так, чтобы их пробежали глазами не задумываясь.

Конкретный, публично задокументированный пример — потому что это официальная политика, а не слухи: BuyVM продаёт отфильтрованные от DDoS адреса как отдельное дополнение за $3/month за IP, а нефильтрованные адреса уходят на null-route на время атаки. Мы описываем это почти без комментариев на нашей странице сравнения с BuyVM, потому что дешёвый нефильтрованный IP — вполне разумный продукт, если вы знаете, что именно покупаете. Провальный сценарий — узнать об этом в 03:00, когда против вас работает booter.

Четыре вопроса, которые стоит задать пресейл-отделу до первого счёта. Какова ёмкость митигации — и это суммарная цифра или доступная в одной точке присутствия? «Сеть на 2 Tbps», которая сходится в одном scrubbing-центре, имеет всего одну трубу, которую можно заполнить. Митигация включена в тариф или это дополнение? Есть ли плата за инцидент или месячная квота митигированных событий? При каком пороге вы отправляете на null-route и на какой срок? Хост, отвечающий на последний вопрос цифрой, стоит больше, чем тот, что отвечает прилагательными.

Три уровня — и почему именно уровень определяет, кто может это исправить

L3/L4 объёмные атаки. SYN-флуды, UDP-флуды, отражение и амплификация через открытые сервисы NTP, DNS, memcached, CLDAP и SSDP. Атакующий тратит немного полосы у себя и получает обратно кратно больше, направленное на вас. Это проблема пропускной способности и pps, и она принципиально нерешаема на вашем сервере: к моменту, когда ваше ядро могло бы отбросить пакет, труба, по которой он идёт, уже забита. Здесь вас не спасёт ничего в nftables. Спасает только ёмкость выше вас по потоку.

L4 — исчерпание состояний. SYN-, ACK- и флуды соединений, рассчитанные не на то, чтобы забить трубу, а на то, чтобы забить таблицу — SYN backlog ядра, таблицу conntrack, accept-очередь вашего приложения. Полоса при этом может быть тривиальной: пары сотен Mbps хватит, чтобы положить ненастроенный сервер, пока график на стороне хоста будет выглядеть как тихий день. Этот уровень — действительно наполовину ваша зона ответственности: он переживаем с tcp_syncookies, разумно выставленным nf_conntrack_max и лимитами по источнику, и не переживаем без них.

L7 — уровень приложения. HTTP-флуды из по отдельности валидных запросов — реальные TLS-рукопожатия, правдоподобные строки User-Agent, иногда настоящие браузеры — нацеленные на то, что на вашем сайте дорого стоит: поиск, логин, корзину, страницу листинга, завязанную на базу данных. Класс атак HTTP/2 Rapid Reset показал, как мало мегабит для этого нужно, когда каждый запрос обходится серверу дороже, чем клиенту. Scrubbing-устройство не видит содержимого TLS-сессии, которую само не терминирует, поэтому этот уровень закрывается либо правилами на edge, либо вашим собственным reverse proxy — но никогда сырой объёмной ёмкостью.

УровеньТипичная атакаТипичный размерГде это нужно остановитьМожно исправить на вашем сервере?
L3/L4 объёмнаяUDP-флуд, амплификация DNS/NTP/memcached5 Gbps – 1+ TbpsВыше по потоку, на edgeНет — труба забивается раньше
L4, исчерпание состоянийSYN/ACK-флуд, исчерпание conntrack0.1 – 10 GbpsEdge плюс настройка ядраЧастично — syncookies, размер conntrack
L7, уровень приложенияФлуд HTTP(S)-запросов, slow POST, Rapid ResetЧасто меньше 1 GbpsПравила на edge или ваш reverse proxyДа — rate-limit, challenge, кэш

Насколько велика реальная атака — если честно?

Примерно девять атак из десяти, долетающих до небольшого оффшорного сервера, приходят от booter или stresser — сервиса по подписке за $10–30 в месяц, перепродающего ёмкость амплификации по минутам. Они выдают что-то между 5 и 50 Gbps всплесками по несколько минут, и именно с этим на практике сталкивается Minecraft-сервер, сеть IRC, Tor-релей, форум с обиженным экс-модератором или лобби в соревновательной игре. Этот диапазон полностью переживаем — и его же полностью достаточно, чтобы положить незащищённый VPS за $5.

Следующая ступень — 100–400 Gbps от арендованного ботнета — это то, что прилетает, когда у кого-то есть конкретная обида и бюджет. Против мелких целей это редкость, против гемблинга, стриминга и adult-проектов — рутина. Выше находятся рекордные события, о которых отчитываются крупные вендоры митигации, — теперь это уже многие терабиты в секунду и сотни миллионов запросов в секунду; обычный публичный ориентир — квартальные данные на Cloudflare Radar. Вы почти наверняка не являетесь целью подобной атаки.

Но пострадать от такой атаки вы всё равно можете — и этого не пишут ни на одной тарифной карточке: сопутствующий ущерб распространяется по префиксу. Если хост делает blackholing с гранулярностью /24 — а многие так и делают, потому что это наименьший префикс, который большинство операторов примут для RTBH, — то атака на один адрес в вашей подсети кладёт все адреса в ней. Ваш аптайм зависит от врагов совершенно постороннего человека. Именно запас ёмкости избавляет от необходимости когда-либо принимать это решение.

Наши собственные цифры — для ориентира, а не для хвастовства: 1 Tbps anycast-scrubbing на L3/L4, распределённых по четырём точкам присутствия, каждая из которых способна в одиночку поглотить около 300 Gbps, с автоматическим детектированием за две секунды. Самое крупное событие, которое мы поглотили для клиента, было выше 600 Gbps против игрового сервера, и соединения игроков не оборвались. Архитектура подробно описана на странице о сети.

Включено, per-incident или квота — коммерческая модель имеет значение

Митигацию продают тремя способами, и счета у них получаются очень разные. Включено: стоимость заложена в тариф, и атака никак не меняет то, что вы платите. Per-incident: с вас берут плату за каждое митигированное событие, иногда — за час митигации. Квота: определённое число событий в месяц или пункт про «fair use», позволяющий хосту самому решать, когда с вас достаточно.

Модель per-incident — не разводка. Отфильтровываемый трафик всё равно проходит через транзит хоста, прежде чем его отбросят, а транзит тарифицируется по 95-му перцентилю или по законтрактованной ставке — затяжная кампания против одного клиента становится реальной строкой в чьём-то счёте. Проблема не в справедливости, а в предсказуемости: при двухнедельной кампании хост с моделью per-incident превращает атаку на вас в счёт для вас — это вторая атака, только с дополнительными шагами. Уточните, какая модель применяется, до того, как это станет вам жизненно необходимо знать.

Наша позиция, сформулированная прямо, чтобы её можно было проверить: защита включена по умолчанию на каждом тарифе — от Starter за $8.50 до Citadel за $299.50, без opt-in, без платы за инцидент, без месячной квоты и без пункта про «fair use», привязанного к митигации. Это одна и та же фабрика — что на самом дешёвом VPS, что на самом крупном выделенном сервере, см. тарифы VPS и уровни выделенных серверов. С тарифом масштабируется аплинк и опциональный набор правил L7, а не сам факт того, защищены вы или нет.

Рассеивание через anycast — и почему скорость детектирования важнее заявленной ёмкости

У одного scrubbing-центра есть жёсткий потолок: транзит в это единственное здание. У него есть и цена в виде задержки, потому что во время митигации весь трафик сначала тащат именно туда, — поэтому у некоторых хостов заметно растёт задержка для европейских пользователей в момент начала атаки, и остаётся такой до её окончания.

Anycast меняет арифметику ещё до того, как в дело вступает железо. Один и тот же префикс анонсируется из каждой точки присутствия, поэтому глобально распределённый ботнет разбивается по этим точкам одной лишь топологией интернета: атака на 600 Gbps, идущая отовсюду, приходит как примерно 150 Gbps в четырёх местах, а не 600 Gbps в одном. Основную работу делает само рассеивание; scrubbing-оборудованию остаётся обработать лишь то, что осталось после того, как география уже всё поделила.

Скорость детектирования — недооцененная цифра. Митигация, включающаяся за две секунды, незаметна для TCP-сессии; митигация, включающаяся за шестьдесят секунд, срабатывает уже после того, как ваши пользователи дважды перезагрузили страницу и ушли, а игровое лобби опустело. Если хост называет ёмкость, но не время детектирования, спросите вторую цифру — именно она решает, заметят ли вообще что-то ваши пользователи.

Если вы приходите со своим префиксом, blackholing превращается в скальпель у вас в руках, а не в то, что делают с вами. Наши BGP-community покрывают депреференс по отдельному оператору (cs:100:carrier), региональный prepend (cs:200:region) и выборочный blackhole (cs:666:prefix), так что вы можете отправить на null-route один адрес под атакой, пока остальная часть вашей аллокации продолжает работать. Вот это — blackholing, применённый правильно: хирургически точно, кратко и по вашему собственному решению.

Оффшорное осложнение: US-прокси спереди сводит на нет весь смысл

Стандартный совет на любом форуме — «просто поставьте за Cloudflare, бесплатного тарифа хватит». Для обычного сайта это хороший совет. Но если вы выбрали оффшорный хостинг по юрисдикционным причинам, этот совет тихо возвращает всё, от чего вы уходили: компания, зарегистрированная в США, теперь терминирует ваш TLS и видит ваш открытый трафик, принимает жалобы на злоупотребления и авторские права и действует по ним согласно собственной политике, ведёт аккаунт, привязанный к email и обычно к способу оплаты, и может получить американское судебное требование. То, что ваш хостинг игнорирует уведомление DMCA, стоит очень мало, если ваш CDN его исполняет — механика описана в разборе DMCA-ignored, а юрисдикционные риски — в гиде по 14 Eyes.

Прокси также не скрывает ваш origin-сервер, если вы не ограничите его файрволом только префиксами прокси — и не будете поддерживать это постоянно. Но даже тогда адрес утекает через историю пассивного DNS, через логи certificate transparency, если origin когда-либо отвечал по TLS на собственное имя, через почту, отправленную напрямую с сервера, через старую A-запись, которую забыли удалить, и через любую страницу ошибки, эхом выдающую собственный hostname сервера. Прямые обращения к origin — вот как «защищённые» сайты всё равно кладут. Плейбук анонимного хостинга разбирает всю поверхность утечки целиком.

Если нужен слой прокси без юрисдикционной цены, разворачивайте его сами: второй небольшой инстанс в той же или совместимой юрисдикции, терминирующий TLS под вашим собственным ключом, при этом файрвол origin-сервера принимает только этот адрес и ничего больше. Вы сохраняете кэширование и фильтрацию запросов, и в цепочку доверия не входит никакая третья сторона. Обе машины стоят за одной и той же scrubbing-фабрикой, так что прокси не становится новой мягкой мишенью.

Что по-прежнему остаётся вашей задачей — на самом сервере

Scrubbing выше по потоку защищает трубу. Он не настраивает ваше ядро, а диапазон исчерпания состояний — это как раз то место, где ненастроенный сервер умирает от атаки, которую сеть едва зарегистрировала. Короткий список, в порядке отдачи: включите net.ipv4.tcp_syncookies и увеличьте net.ipv4.tcp_max_syn_backlog (параметры описаны в справочнике ip-sysctl ядра); выставьте nf_conntrack_max под реально ожидаемое число соединений, либо используйте notrack для высокоинтенсивного UDP-трафика игр, чтобы таблица вообще не задействовалась; добавьте лимиты по источнику в nftables, а не рассчитывайте, что edge сработает хирургически точно.

На стороне приложения limit_req и limit_conn в nginx ничего не стоят и останавливают большинство L7-флудов, специально не замаскированных под человека. Кэшируйте всё, что можно кэшировать, потому что лучшая цель для атакующего — всегда та единственная страница, которую вы генерируете из базы данных при каждом запросе. Держите SSH и любую панель управления вне адреса, обслуживающего публичную нагрузку, либо за allowlist.

Одно направление, о котором часто забывают: не станьте отражателем сами. Открытый DNS-резолвер, ненастроенный демон NTP или доступный извне memcached на вашем сервере делает вас частью чужой атаки амплификации, а к исходящим злоупотреблениям относятся куда жёстче, чем к входящим — заявленное время реакции в нашем AUP — это null-route и приостановка в течение двух часов. Входящий флуд — это то, что происходит с вами; исходящий флуд — это то, за что отвечаете вы сами.

Чек-лист, который стоит пройти до покупки

Девять вопросов — в порядке, который быстрее всего отсеивает хостов. Какова ёмкость митигации, и это на точку присутствия или суммарно? Она включена в цену тарифа или продаётся отдельно за IP? Есть ли плата за инцидент или месячная квота митигированных событий? Какова задержка детектирования? Доступна ли вообще фильтрация L7 и на каких тарифах? При каком пороге и на какой срок вы отправляете на null-route, и сообщают ли вам об этом? Меняет ли митигация мою маршрутизацию или задержку, пока она активна? Защищён ли адрес, который я получаю по умолчанию? И — вопрос, который почти никто не задаёт, — что сохраняется о моём трафике, пока идёт митигация?

Этот последний вопрос важен на этом рынке больше, чем где-либо ещё. Scrubbing означает, что кто-то выше по потоку смотрит на ваши пакеты. Спросите, что переживает событие атаки. Наш ответ — и он не меняется во время атаки: детектирование работает на агрегированных счётчиках на edge — пакеты и биты в секунду, по префиксу, — а не на сохранённых записях по отдельным потокам, и постоянная позиция «никакого netflow, никакого PCAP и никакого зеркалирования NIC», опубликованная в политике конфиденциальности, действует во время митигации ровно так же, как и в любое другое время. Хост, который не может на это ответить, тем самым вам кое-что сообщает.

Если ответы получились скудными, есть дешёвый запасной вариант: купите один месяц самого младшего тарифа, направьте на него зонд мониторинга и прямо спросите поддержку, что происходит, когда сервер получает удар. Здесь нет контракта и нет платы за установку, так что хост, уклоняющийся от письменного ответа, обойдётся вам в $8.50, чтобы это выяснить. Разверните Starter или почитайте VPS против выделенного сервера, если нагрузка достаточно велика, чтобы ответ на этот вопрос менял выбор тарифа.

Быстрые ответы

Часто задаваемые вопросы

Действительно ли мне нужна защита от DDoS на маленьком VPS?
Если сервер — это личная точка WireGuard, о которой никто не знает, то реалистично — нет, вы не цель. Если на нём размещено что-то с аудиторией, оппонентом или разделом комментариев — да, потому что атаки, долетающие до маленьких серверов, происходят от подписок на booter за $15/month и не требуют ни навыков, ни мотива серьёзнее обычного раздражения. Важен не вопрос, вероятна ли атака, а вопрос, что делает хост, когда она приходит, — потому что незащищённый адрес обычно не защищают, а отправляют на null-route.
В чём разница между scrubbing и null-routing?
Scrubbing фильтрует атаку выше по потоку и пропускает легитимный трафик, так что ваш сервис остаётся онлайн. Null-routing (blackholing, RTBH) выводит ваш IP-адрес из таблицы маршрутизации, так что до него не доходит вообще ничего — атака прекращается, но заодно и всё остальное. Оба варианта продаются как «защита от DDoS». Один защищает ваш сервис; другой защищает сеть хоста за ваш счёт.
Отправите ли вы меня на null-route, если атака превысит вашу ёмкость?
Пока в этом не было необходимости — крупнейшее поглощённое для клиента событие превышало 600 Gbps против игрового сервера, что заметно ниже запаса фабрики. Если атака когда-нибудь превысит то, что способны выдержать четыре точки присутствия, последовательность действий такая: временный null-route для одного затронутого адреса, пока остальная часть аллокации продолжает работать, и вам сообщают об этом, а не оставляют узнавать по алерту мониторинга. Плата за инцидент к этому не привязана.
Добавляет ли митигация DDoS задержку, когда ничего не происходит?
Нет, потому что фабрика работает постоянно и построена на anycast, а не по схеме «переключение при обнаружении». В начале атаки не происходит переанонса по BGP, и трафик не перегоняется в удалённый scrubbing-центр — а это как раз тот механизм, из-за которого у некоторых провайдеров заметно растёт задержка на время события. Ваши пакеты идут одним и тем же путём что в тихий вторник, что в разгар флуда.
Могу ли я поставить Cloudflare перед оффшорным VPS?
Технически — да, но это плохо сочетается именно с той причиной, по которой вы вообще выбрали оффшор. Прокси, зарегистрированный в США, терминирует ваш TLS, видит ваш открытый трафик, обрабатывает жалобы на злоупотребления и авторские права согласно собственной политике и ведёт аккаунт, который можно затребовать повесткой. То, что хостинг игнорирует уведомление DMCA, мало что значит, если CDN перед ним этого не делает. Если нужен слой кэширования и фильтрации, разворачивайте его сами на втором инстансе в совместимой юрисдикции и ограничьте origin файрволом только на него.
Фильтрация L7 включена или это допродажа?
Фабрика L3/L4 — часть, которая решает, останетесь ли вы онлайн под объёмным флудом, — включена в каждый тариф без opt-in и без дополнительной платы. Правила L7 для HTTP, HTTPS и WebSocket доступны по запросу и поставляются с готовыми шаблонами под типовые сценарии: auth-эндпоинты, checkout и игровые лобби. Не существует «уровня защиты», который нужно купить отдельно, прежде чем атака вообще начнёт митигироваться.
Мой игровой сервер вылетает во время каждого матча — это остановит проблему?
Это самая частая причина, по которой к нам переходят. Трафик booter против игровых серверов — это объёмная амплификация, которую anycast-фабрика поглощает прозрачно, а игровые профили L7 отбрасывают некорректные handshake, не затрагивая реальные сессии игроков. Разворачивайте сервер в Нидерландах или Румынии для минимального RTT в Европе и почитайте страницу об игровых серверах насчёт подбора тарифа — модифицированный Minecraft-инстанс на 30–50 игроков требует Pro, а не Starter, но по причинам CPU, а не сети.
Логирует ли scrubbing-фабрика мой трафик?
Детектирование основано на пороговых значениях агрегированных счётчиков на edge — пакеты и биты в секунду по префиксу — а не на сохранённых записях по отдельным потокам о ваших сессиях. Опубликованная позиция «никакого netflow, никакого PCAP и никакого зеркалирования NIC» действует как во время митигации, так и вне её, а IP сессий в панели в любом случае удаляются через 24 часа. Этот вопрос стоит задавать конкретно каждому оффшорному хостингу, потому что scrubbing — это как раз то единственное место, где инспектирование трафика является законным инженерным требованием, и поэтому именно там проще всего незаметно сохранять результаты.
Применить

Нагрузки, к которым относится это руководство

Каждая карточка открывает страницу с рекомендациями по размеру и FAQ системного администратора.

Читать дальше

Другие руководства

Сопутствующие материалы, продолжающие там, где это руководство заканчивается.

Руководство покупателя VPS или выделенный bare-metal: когда переходить

VPS или выделенный bare-metal: когда переходить

Практический разбор того, когда KVM перестаёт быть достаточным и bare-metal начинает окупаться — с конкретными порогами, а не маркетинговыми текстами.

9 мин чтения Читать руководство
Терминология Что такое bulletproof-хостинг? (И чем от него отличается DMCA-ignored)

Что такое bulletproof-хостинг? (И чем от него отличается DMCA-ignored)

Термином «bulletproof hosting» бросаются небрежно, а часто и нечестно. Разберёмся, откуда он на самом деле взялся, почему большинство объявлений с этим словом — это разводы или honeypot-ловушки, и где проходит точная граница между ним и легитимным DMCA-ignored оффшорным хостингом.

8 мин чтения Читать руководство
Правовой разбор Хостинг с игнорированием DMCA: что это реально означает — юридически и операционно

Хостинг с игнорированием DMCA: что это реально означает — юридически и операционно

Точный разбор того, что означает «игнорирование DMCA» с точки зрения законодательства США, ЕС и Карибского бассейна — что хост может игнорировать, что нет, и как на практике работают процедуры удаления на офшорной инфраструктуре.

10 мин чтения Читать руководство
Операционный гайд Как разместить сайт анонимно в 2026

Как разместить сайт анонимно в 2026

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

12 мин чтения Читать руководство

Прочитали достаточно? Развернуть за 60 секунд

Без верификации email, без удостоверения, без аккаунта. Выберите тариф, оплатите любой криптовалютой, получите root.