Игровые серверы кроме Minecraft
Как разместить на VDS сервер CS2, Rust, Terraria, Valheim или Palworld: требования по ступеням, установка через SteamCMD, порты и типичные проблемы.
Обновлено 23 августа 2026 г.
Большинство игровых серверов ставятся из SteamCMD и живут как обычная служба Linux. Полный root-доступ на VDS позволяет запустить что угодно — ограничивают только память, число ядер и то, что многие игры используют одно ядро под основной цикл.
Что во что упирается
| Игра | Память | Замечание |
|---|---|---|
| Terraria, Factorio | 1–2 ГБ | Хватит VDS-1 |
| Valheim | 4–6 ГБ | Растёт с размером мира, VDS-2 или VDS-3 |
| CS2 | 2–4 ГБ | Важна частота ядра, не их число |
| Rust | 12–16 ГБ | VDS-4 и выше, диск быстро занимается картой |
| Palworld | 8–16 ГБ | Заметная утечка памяти, нужен регулярный перезапуск |
Ryzen 9 7950X даёт высокую частоту, поэтому на младших ступенях ограничением обычно становится память, а не процессор.
Установка через SteamCMD
dpkg --add-architecture i386 && apt update
apt install -y steamcmd lib32gcc-s1
useradd -m -d /srv/game -s /bin/bash game
sudo -u game /usr/games/steamcmd \
+force_install_dir /srv/game/server \
+login anonymous \
+app_update 896660 validate \
+quit
Номер приложения свой у каждой игры. Обновление сервера — та же команда: она докачивает изменившиеся файлы.
Служба и порты
[Service]
User=game
WorkingDirectory=/srv/game/server
ExecStart=/srv/game/server/start.sh
Restart=on-failure
RestartSec=20
[Install]
WantedBy=multi-user.target
Игровые серверы обычно слушают UDP, а не TCP — это частая причина «сервер запущен, но его не видно»:
ufw allow 2456:2458/udp
ss -ulpn | grep 2456
Публичный адрес IPv4 берите на вкладке «Обзор» панели /hosting/vds/m/<id>. Второго адреса и IPv6 нет, поэтому два сервера одной игры разводите по разным портам, а не по адресам.
Автоматический перезапуск и копии
Для игр с утечками памяти поставьте ночной перезапуск:
0 6 * * * systemctl restart valheim
Сохранения копируйте по расписанию и увозите с машины — автоматических резервных копий и снимков состояния нет:
tar czf /srv/backups/world-$(date +%F).tar.gz /srv/game/server/saves
rsync -az /srv/backups/ backup@другой-хост:/store/
Общий подход описан в резервных копиях баз — для файлов сохранений он тот же.
Частые ошибки
| Симптом | Причина |
|---|---|
| Сервер не виден в списке | Закрыт UDP-порт или не открыт порт опроса |
| Падение через несколько часов | Утечка памяти, нет MemoryMax и ночного перезапуска |
steamcmd: not found | Пакет ставится из раздела multiverse или non-free |
| Лаги при полном сервере | Однопоточный цикл упёрся в ядро — помогает только более высокая частота |
| Кончилось место | Логи и старые сохранения; следите за кольцом занятости диска в «Обзоре» |
Игровой сервер под root — плохая идея: движки регулярно получают уязвимости в разборе пакетов. Отдельный системный пользователь на каждую игру обязателен.