Защита игрового сервера — это не один «волшебный плагин», а несколько слоёв: контроль того, кто вообще может зайти, журналирование и откат действий внутри игры, резервные копии мира, сетевая фильтрация от DDoS и закрытые служебные порты. Публичный IP игрового сервера начинает сканироваться ботами в первые же часы после запуска, а единственный гифер способен за вечер уничтожить постройки, которые сообщество возводило месяцами. Хорошая новость: все базовые меры защиты настраиваются за один вечер и почти все — бесплатны. Разберём их по слоям на примере Minecraft (принципы те же для Rust, CS2 и других игр).
Слой 1. Whitelist: пускаем только своих
Для приватного сервера «для друзей» whitelist закрывает 90% проблем: случайный посетитель просто не подключится. В Minecraft он встроен в ядро и включается двумя командами в консоли:
whitelist on
whitelist add Player_Nick
Или заранее в server.properties:
white-list=true
enforce-whitelist=true
Параметр enforce-whitelist=true важен: он выкидывает уже подключённых игроков, которых удалили из списка, а не ждёт их переподключения. Дополнительно проверьте, что online-mode=true — сервер будет сверять игроков с официальной базой аккаунтов, и никто не зайдёт под чужим ником. Для публичных проектов, где whitelist невозможен, роль «фильтра на входе» выполняют права доступа: новичок не должен получать возможность строить и ломать в чужих регионах с первой минуты.
Слой 2. Плагины против гриферства: CoreProtect и права
Даже среди «своих» случаются конфликты, а на публичном сервере гриферство — вопрос времени. Здесь работает связка из журналирования и разграничения прав (для плагинов понадобится ядро Paper или другое ядро с поддержкой Bukkit-плагинов).
CoreProtect: журнал и откат любых изменений
CoreProtect — главный инструмент против гриферов. Он пишет в базу каждое действие: кто поставил и сломал блок, кто открывал сундуки, кто поджигал и выливал лаву. Дальше два сценария:
- Расследование. Команда
/co inspectпереводит вас в режим инспекции: клик по блоку показывает историю — ники, действия, время. - Откат. Команда вида
/co rollback user:Grifer_Nick time:3h radius:50отменяет всё, что игрок сделал за последние 3 часа в радиусе 50 блоков. Постройки восстанавливаются за секунды, без отката всего мира из бэкапа.
База CoreProtect на активном сервере растёт быстро и активно пишется на диск — ещё одна причина держать игровой сервер на NVMe, а не на медленном хранилище.
Разграничение прав и защита территорий
- LuckPerms — группы прав: новички, игроки, модераторы. Опасные команды — только доверенным.
- WorldGuard — защищённые регионы: спавн, общие постройки и приватные участки, где строить и ломать могут только владельцы.
- Минимум операторов: каждый лишний «оп» — потенциальная точка отказа. Выдавайте конкретные права через группы, а не статус оператора.
Слой 3. Бэкапы мира: страховка от всего сразу
Бэкап — последний рубеж, который спасает и от гриферов, и от неудачного обновления модов, и от повреждения файлов мира. Минимальный рабочий вариант — ежедневный архив мира по расписанию cron:
#!/bin/bash
BACKUP_DIR=/var/backups/minecraft
mkdir -p "$BACKUP_DIR"
tar -czf "$BACKUP_DIR/world-$(date +%F).tar.gz" -C /opt/minecraft world
find "$BACKUP_DIR" -name "world-*.tar.gz" -mtime +7 -delete
И строка в crontab (каждый день в 5 утра):
0 5 * * * /opt/minecraft/backup.sh
Три правила, которые отличают рабочие бэкапы от «галочки»:
- Несколько поколений. Гриферство могут заметить не сразу — храните минимум 7 ежедневных копий, чтобы было куда откатываться.
- Копия вне сервера. Архив на том же диске не спасёт при потере самого сервера. Выгружайте копии на другой сервер или в объектное хранилище — схему целиком мы разобрали в статье о резервном копировании VPS по стратегии 3-2-1.
- Проверка восстановления. Раз в месяц разворачивайте архив в тестовую папку и убеждайтесь, что мир открывается.
Место под поколения бэкапов заложите заранее: на тарифе Ultra у Cheap-Host (192 ГБ NVMe) рядом с тяжёлым миром спокойно живёт неделя ежедневных архивов.
Слой 4. DDoS-фильтрация L3/L4: защита игрового сервера на сетевом уровне
Игровые серверы — частая мишень сетевых атак: обиженный игрок или конкурирующий проект пытаются «положить» сервер объёмом мусорного трафика. Против атак уровней L3/L4 (перегрузка канала и транспортного уровня) на стороне самого VPS сделать почти ничего нельзя — мусор нужно отсеивать до того, как он дойдёт до вашей сетевой карты. Это задача инфраструктуры хостинга.
У Cheap-Host базовая DDoS-фильтрация L3/L4 включена во все тарифы VPS: типовые объёмные атаки гасятся на уровне сети площадки, а до сервера доходит легитимный игровой трафик. Как устроена такая фильтрация технически, мы подробно писали в статье про DDoS-защиту VPS. Со стороны сервера дополните её простыми мерами гигиены:
- Не публикуйте IP сервера где попало — раздавайте адрес через домен и не «светите» его в чужих мониторингах без необходимости.
- Ограничьте число подключений с одного адреса и включите анти-бот плагины на прокси (если используете Velocity/BungeeCord).
- Держите ядро и плагины обновлёнными: злоупотребления протоколом чаще всего закрываются очередным патчем.
Слой 5. RCON и служебные порты: закрываем всё лишнее
RCON — консоль удалённого управления сервером. Протокол передаёт пароль без шифрования, а доступ к RCON равен полному контролю над сервером. Правила простые:
- Не нужен — выключите. В
server.properties:enable-rcon=false. - Нужен для панели или скриптов — только локально. Проверьте, что RCON слушает локальный интерфейс, задайте длинный случайный пароль и никогда не открывайте порт 25575 наружу. Для удалённого управления подключайтесь через SSH-туннель:
ssh -L 25575:127.0.0.1:25575 user@your-server-ip
После этого RCON-клиент на вашем компьютере ходит на localhost:25575, а наружу трафик идёт внутри шифрованной SSH-сессии.
Тот же принцип — для всех служебных портов. Настройте файрвол UFW так, чтобы снаружи были доступны только SSH и игровой порт:
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp
sudo ufw allow 25565/tcp
sudo ufw enable
Пошаговый разбор правил — в статье о настройке файрвола UFW. И не забудьте про сам SSH: вход по ключам вместо пароля и Fail2ban против перебора — это защита не игры, а всей машины, на которой игра работает.
Сводный чек-лист защиты
| Мера | От чего защищает | Время на настройку |
|---|---|---|
| Whitelist + online-mode | Посторонние на сервере | 5 минут |
| CoreProtect | Гриферство: расследование и откат | 15 минут |
| LuckPerms + WorldGuard | Злоупотребление правами, чужие постройки | 1–2 часа |
| Ежедневные бэкапы + копия вне сервера | Любая потеря данных | 30 минут |
| DDoS-фильтрация L3/L4 (на стороне хостинга) | Объёмные сетевые атаки | 0 — включена у Cheap-Host |
| RCON локально или выключен, UFW | Захват консоли и служб сервера | 15 минут |
FAQ
Достаточно ли whitelist для защиты игрового сервера?
Для приватного сервера это самая эффективная одиночная мера, но она не защищает от гриферства своих же игроков, сетевых атак и компрометации SSH/RCON. Whitelist работает в связке с CoreProtect, бэкапами, файрволом и DDoS-фильтрацией.
Что делать, если гриферы уже разрушили постройки?
С установленным CoreProtect: /co inspect для поиска виновника, затем /co rollback с нужным ником, временем и радиусом — постройки вернутся за секунды. Без CoreProtect остаётся только восстановление мира из последнего бэкапа.
Как часто делать бэкапы мира?
Минимум раз в сутки автоматически плюс копия перед каждым обновлением ядра и модов. Храните 7 ежедневных и несколько еженедельных поколений, хотя бы одну копию — вне самого сервера.
Нужно ли открывать порт RCON наружу?
Нет. RCON передаёт пароль открытым текстом и даёт полный доступ к консоли. Держите его на 127.0.0.1 за файрволом и подключайтесь через SSH-туннель, а если RCON не используется — отключите.
Защитит ли фильтрация L3/L4 от любых атак?
Она отсеивает объёмные сетевые атаки — самый частый сценарий для игровых проектов. Злоупотребления внутри игрового протокола закрываются мерами на стороне сервера: whitelist, лимиты подключений, анти-бот плагины и свежие версии ядра.
Вывод
Надёжная защита игрового сервера — это слои: whitelist на входе, CoreProtect и права внутри игры, ежедневные бэкапы мира, закрытые RCON и служебные порты, а на сетевом уровне — DDoS-фильтрация L3/L4 на стороне хостинга. Ни один слой не требует больших денег, а вместе они сводят типовые угрозы почти к нулю. Если для игрового проекта нужен сервер — у Cheap-Host тариф Ultra от 1500 ₽/мес: 20 vCPU, 32 ГБ RAM, 192 ГБ NVMe, KVM, безлимитный трафик, базовая DDoS-защита L3/L4 во всех тарифах и выдача сервера за 45–60 секунд. Тарифы — на cheap-host.onl. А если только планируете сборку с модами, загляните в разбор сколько RAM нужно Minecraft с модами.