После ddos атаки
После случившейся DDoS-атаки были сделаны несколько выводов. К сожалению, все еще есть люди, которые не могут понять, что проект бесплатный и не может на регулярной основе оплачивать какие-то дорогостоящие услуги, например, аренду места в дата-центре или платить за какую-то дорогостоящую защиту. Также были проведены работы по сокрытию реального IP сервера, для того чтобы впредь такой проблемы не возникало. И я хочу описать в этой статье, как работает подключение к серверу и как мы можем решить проблему в случае новой DDoS-атаки.
1. Для решения проблемы на арендованном VPS сервере в московском дата-центре развернут прокси (haproxy), а между этим VPS и игровым сервером поднят VPN туннель (wireGuard). Теперь, в сильно упрощенном виде, трафик идет так — клиент-> haproxy -> игровой сервер и обратно по тому же маршруту.
Плюсы такого решения:
- Реальный IP игрового сервера неизвестен клиенту
- Легкость настройки
- Наличие DDoS защиты на VPS
- Быстрая смена IP в случае если защита не справляется или по каким-то еще причинам
- Можно вообще избавиться от статического IP на игровом сервере
Минусы:
- Хоть и минимальное, но влияние на пинг
- Расходы на аренду VPS
2. Все веб-сервисы (сайт, карта, панели управления) переключены на прокси Cloudflare. Что также позволяет скрыть реальный IP и частичное кеширование, что полезно для карты. А благодаря большой сети CDN, это только положительно влияет на скорость загрузки. К сожалению, бесплатно только для http-трафика.
Также, в случае если по каким-то причинам не будет работать схема из первого пункта, то уже настроена и обкатана DDoS-защита от TCPShield. Для перехода на нее достаточно будет выключить VPN-туннель и включить защиту в ЛК TCPShield. Что позволит продолжить играть на сервере, пусть и с меньшим комфортом, так как пинг будет значительно больше.
По итогу получаем, что сервер стал более защищенным, с минимальным влиянием на комфортность игры и бюджет.