Jump to content
Sign in to follow this  
e1mer

Proxy-server с защитой от DDoS

Recommended Posts

Доброго времени суток, на заре запуска последнего сервера Corsairs Online на него было совершено нападение, боты пытались авторизоваться в игре как нормальные пользователи, спамили трафиком как будто они "пытаются передвигаться" в игре, и прочим мусором, который было довольно сложно отделить от нормального трафика на первых этапах.

 

Мною был написан прокси сервер на Node JS который может отделить мусор от нормального трафика, на скорости до 160,000,000 BPS он справлялся на ура, стояло это добро на 4 ядрах и 4 гб озу, под управлением Linux.
Так мне пришлось пропатчить GateServer, и расширить кол-во возможных подключений до 7.500 одновременных соединений.

На скорости указанной выше мне удалось добиться, что единовременных фейковых соединений было не более 100.

 

Весь результат достигался без блокировки IP адресов.

 

Что конкретно делает прокси-сервер? Я опишу вкратце:

  1. В первую очередь проверяет трафик на предмет дефолтных стресс-тестеров, такие соединения даже не доходят до GateServer и сразу умирают;
  2. Косвенно устанавливает, действительно ли игрок пытается установить соединение;
  3. Контролирует соединение между Игроком и GateServer;
  4. Контролирует входящие пакеты, написан определенный алгоритм для определения мусора, который блокируется в последующим;
  5. И всякие блестящие и красивые штуки, которые занимаются блокировкой нежелательного трафика;
  6. Чем дольше прокси-сервер работает, тем он умнее и тем меньше шансов его сложить;
  7. Умеет логировать входы\выходы в игре;
  8. Опционально под вас я допишу блокировщика по IP адресам, если вам это необходимо;
  9. Опционально можно дописать "оффлайн-мод", чтобы игроки всегда оставались в сети, даже когда они просто закрыли клиент (вне зависимости используется ли навык "ларек");

 

Видео-демонстрация, записана в момент атаки: https://drive.google.com/file/d/1vSv81JHiDSJM8WtC_nxTOAP4fTMCiGxb/view?usp=sharing


Стоимость сего-велосипеда: $500 в USDT, кому дорого - не бомбите, это символическая плата за софт, который отдается вам "без подписки".

Любые тесты с вашей стороны только приветствуются.


Что входит в комплект этой услуги?

  1. Полная настройка железки и установка софта, вам останется лишь указать IP адрес и порт сервера (так же существует возможность запуска "рядом с сервером" на Windows).
  2. Расширение поддержки соединений на GateServer от 5.000 до 7.500 соединений (возможно как на исходном коде, так и на стандартных файлах не имеющих исходного кода).

 

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

 

Для связи используйте телеграмм: @e1mer

 

Share this post


Link to post
Share on other sites

Привет.

 

Чем дольше прокси-сервер работает, тем он умнее и тем меньше шансов его сложить;

 

Каким образом это работает?

 

Второй вопрос уже чисто из интереса, почему node, а не какой-нибудь го?

Share this post


Link to post
Share on other sites
10 часов назад, BXlevovich сказал:

В основе твоего прокси лежит этот бесплатный прокси ?
Единственный минус этого прокси, отсутствие многопоточности, но GPT любезно поможет её допилить - бесплатно.

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

 

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


Ещё в конце 2021 в разговоре с Чуком, меня посетила гениальная мысль по защите этого прокси-сервера от любых видов атак, тогда нас тоже люто нагибали (тогда у нас в команде работал WhiteDev, и мы ночи на пролет думали, как спастись от этого безумия, были попытки реализовать даже порт-кнокинг, но потом мы отказались от этой идеи, не вспомню даже почему), впоследствии когда WhiteDev покинул команду, я реализовал это, и оно успешно может работать в любом стеке, да что скрывать, оно по сей день работает на всех моих Linux машинах, тоже писал кстати на Node JS.

 

Выглядит это следующим образом:

  • В режиме демона работает этот самый дефендер (на пальцах скажу, он просто следит за VPS, и в случае чего просто перекрывает доступ к серверу всем, кроме игроков)
  • Роутер который управляет трафиком

 

5 часов назад, champ сказал:

Привет.

 

Чем дольше прокси-сервер работает, тем он умнее и тем меньше шансов его сложить;

 

Каким образом это работает?

 

Второй вопрос уже чисто из интереса, почему node, а не какой-нибудь го?

Привет!

 

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

 

Node JS, одно из первых что приходит на ум, это то банально я могу писать на Node JS, есть следующая генерация этого приложения, она уже написана на с++ под Linux, второе - это наверно скорость работы, она весьма впечатляет даже обывателя.

 

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...