Перейти к содержимому
Counter-Strike 2

Установка сервера Counter-Strike 2

Выделенный сервер CS2 ставится через SteamCMD (app 730, около 60 ГБ) и запускается через cs2.sh. Подготовьте свежий VPS с Ubuntu или ПК с Windows, полчаса на установку и токен сервера (GSLT), чтобы сервер был виден онлайн. Источники: руководство Hetzner Community, гайды хостингов и вики Valve (при написании была недоступна — сверьтесь).

Последнее обновление: 09.10.2026

Выделенный сервер CS2 ставится через SteamCMD (app 730, около 60 ГБ) и запускается через cs2.sh. Подготовьте свежий VPS с Ubuntu или ПК с Windows, полчаса на установку и токен сервера (GSLT), чтобы сервер был виден онлайн. Источники: руководство Hetzner Community, гайды хостингов и вики Valve (при написании была недоступна — сверьтесь).

Пошаговая установка

  1. Подготовьте машину: Ubuntu 24.04 (или Windows), минимум 4 vCPU, 8 ГБ ОЗУ и 80 ГБ диска для 10–32 игроков.

  2. Создайте пользователя без root (steam) и установите SteamCMD с 32-битными библиотеками.

  3. Создайте токен GSLT для AppID 730 на steamcommunity.com/dev/managegameservers (один токен на сервер).

  4. Скачайте сервер командой app_update 730 validate (10–30 минут).

  5. Создайте ссылку steamclient.so для 64-битного SDK и запустите сервер через ./cs2.sh из папки game/.

  6. Положите server.cfg в game/csgo/cfg/ (см. инструмент «Генератор server.cfg для CS2»).

  7. Откройте 27015 (UDP и TCP), 27005 (UDP) и 27020 (UDP) в ufw, брандмауэре провайдера и на роутере.

  8. Подключитесь из CS2 через консоль игры: connect IP:27015.

  9. Создайте службу systemd для автозапуска и запланируйте бэкапы и обновления.

Требования

  • ОС: Ubuntu 24.04 (в руководстве Hetzner) или Windows 10/11 и Windows Server.
  • Ресурсы: 4 vCPU, 8 ГБ ОЗУ, 80 ГБ диска для 10–32 игроков (рекомендация Hetzner); загрузка весит около 60 ГБ.
  • Аккаунты: аккаунт Steam для создания токена GSLT (AppID 730). Без токена сервер ограничен локальной сетью.
  • Внимание: старый сервер CS:GO использовал app 740; CS2 использует 730.

Локальная установка в Windows

Скачайте SteamCMD из официальной документации Valve, распакуйте в C:\steamcmd и установите сервер. Точный путь к cs2.exe в Windows не удалось подтвердить официальным источником: найдите его в папке game\bin после установки, запустите с -dedicated -console и проверьте в игре командой connect 127.0.0.1.

cd C:\steamcmd
steamcmd +force_install_dir C:\cs2-server +login anonymous +app_update 730 validate +quit

Linux VPS: пользователь и зависимости

Команды из руководства Hetzner Community (Ubuntu 24.04). Аккаунту steam в продакшене sudo не нужен: уберите это право после установки.

sudo apt update && sudo apt upgrade -y
sudo adduser steam
sudo usermod -aG sudo steam
su - steam
sudo apt-get install lib32gcc-s1 -y
sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update -y
sudo apt install steamcmd -y

Linux VPS: загрузка сервера

Руководство Hetzner также советует один раз войти с отдельным аккаунтом Steam (steamcmd +login ВАШ_АККАУНТ); анонимная установка работает в ряде гайдов — проверьте, что подходит вам.

mkdir -p ~/cs2-server && cd ~/cs2-server
steamcmd +login anonymous +force_install_dir ~/cs2-server +app_update 730 validate +quit

# SDK 64 bits (ignorer si le lien existe déjà)
mkdir -p ~/.steam/sdk64
ln -s ~/.local/share/Steam/steamcmd/linux64/steamclient.so ~/.steam/sdk64/steamclient.so

Linux VPS: первый запуск

Всегда запускайте ./cs2.sh (а не бинарник напрямую) из папки game/. Замените YOUR_GSLT_TOKEN. Режимы: casual 0/0, competitive 0/1, deathmatch 1/2 (+game_type/+game_mode). Флаг -insecure отключает VAC: только для приватных серверов. Для тестов используйте screen или tmux (screen -S cs2).

cd ~/cs2-server/game
./cs2.sh -dedicated -port 27015 -maxplayers 10 \
  +hostname "My CS2 Server" +map de_dust2 \
  +game_type 0 +game_mode 1 \
  +sv_setsteamaccount YOUR_GSLT_TOKEN

Открываемые порты и брандмауэр Linux (ufw)

Чтобы сменить игровой порт, добавьте -port N в строку запуска (свой порт на каждый экземпляр) и откройте его вместо 27015.

Открывайте только необходимое и проверяйте с другого подключения (не с самого сервера).

  • 27015/udp: игровой трафик
  • 27015/tcp: RCON и пинги
  • 27005/udp: связь с клиентом
  • 27020/udp: SourceTV (запись демо)
  • Другие порты из руководства Hetzner: 27036/tcp (Steam Remote Play), 3478/udp (NAT traversal), 4379-4380/udp (матчмейкинг), 22/tcp (SSH).
sudo ufw allow OpenSSH
sudo ufw allow 27015/udp
sudo ufw allow 27015/tcp
sudo ufw allow 27005/udp
sudo ufw allow 27020/udp
sudo ufw enable
sudo ufw status

Брандмауэр Windows (netsh)

В командной строке администратора создайте входящее правило для каждого порта (или откройте «Брандмауэр Защитника Windows в режиме повышенной безопасности»).

netsh advfirewall firewall add rule name="Counter-Strike 2 27015 UDP" dir=in action=allow protocol=UDP localport=27015
netsh advfirewall firewall add rule name="Counter-Strike 2 27015 TCP" dir=in action=allow protocol=TCP localport=27015
netsh advfirewall firewall add rule name="Counter-Strike 2 27005 UDP" dir=in action=allow protocol=UDP localport=27005
netsh advfirewall firewall add rule name="Counter-Strike 2 27020 UDP" dir=in action=allow protocol=UDP localport=27020

Брандмауэр провайдера и проброс портов (роутер)

У хостера (OVH, Hetzner, Scaleway…) откройте те же порты и в брандмауэре или «security group» провайдера: ufw недостаточно, если есть внешний брандмауэр. Дома настройте на роутере проброс (NAT) каждого порта на локальный IP машины (статический или зарезервированный по DHCP).

Проверка: с другого подключения добавьте сервер как «IP:порт» в браузере серверов Counter-Strike 2 или в консоли. Если не выходит, проверьте по порядку: запущена ли служба, локальный брандмауэр, брандмауэр провайдера, NAT.

Автозапуск: служба systemd

Создайте /etc/systemd/system/cs2.service (от root) и включите его. Подставьте своего пользователя и пути; логи — journalctl -u cs2 -f.

[Unit]
Description=Counter-Strike 2 dedicated server
After=network-online.target
Wants=network-online.target

[Service]
User=steam
WorkingDirectory=/home/steam/cs2-server/game
ExecStart=/home/steam/cs2-server/game/cs2.sh -dedicated -port 27015 -maxplayers 10 +game_type 0 +game_mode 1 +map de_dust2 +sv_setsteamaccount YOUR_GSLT_TOKEN
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

# then:
# sudo systemctl daemon-reload
# sudo systemctl enable --now cs2

Windows: задача планировщика при запуске

В Windows задача планировщика запускает ваш .bat при старте системы (выполните команду в командной строке администратора).

schtasks /Create /TN "Counter-Strike 2 server" /TR "C:\cs2-server\start-cs2.bat" /SC ONSTART /RU SYSTEM /RL HIGHEST

Обновления, резервные копии и плановые перезапуски

Останавливайте службу перед обновлением (та же команда SteamCMD, что и при установке), регулярно делайте бэкап конфигурации и данных и планируйте ежедневный перезапуск, если сервер со временем деградирует.

sudo systemctl stop cs2
steamcmd +force_install_dir /home/steam/cs2-server +login anonymous +app_update 730 validate +quit
sudo systemctl start cs2

# backup
tar czf ~/cs2-$(date +%F).tar.gz -C /home/steam/cs2-server game/csgo/cfg game/csgo/gamemodes_server.txt

# daily restart at 05:00 (root crontab: sudo crontab -e)
0 5 * * * systemctl restart cs2

Добавление и поиск сервера

Добавьте сервер на https://game-rank.com/jeux/counter-strike, чтобы его увидело сообщество. В игре ищите его в браузере серверов или подключайтесь напрямую по IP:порт.

Устранение неполадок: частые ошибки

  • Сервер стартует в режиме LAN или невидим: токен GSLT отсутствует, недействителен или использован на другом сервере. Решение: создайте отдельный токен для AppID 730 и передайте его через +sv_setsteamaccount.
  • Сервер падает или не находит steamclient.so: нет ссылки 64-битного SDK. Решение: создайте ~/.steam/sdk64/steamclient.so по инструкции и запускайте ./cs2.sh из game/.
  • Сервер не виден снаружи: служба работает, но никто не может подключиться. Причина: закрыт порт (ufw, брандмауэр провайдера или нет NAT). Решение: откройте перечисленные порты на всех трёх уровнях и проверьте с другого подключения.
  • Порт занят при запуске: порт удерживает другой экземпляр. Решение: посмотрите процессы командой ss -lunp | grep 27015, остановите старый экземпляр или задайте каждому серверу свой порт через -port.
  • SteamCMD «Failed to install app» или зависшая загрузка: частая причина — заполненный диск или нехватка прав на папку. Решение: проверьте df -h и владельца папки, затем повторите команду с validate (при необходимости несколько раз).

Частые вопросы

Использует ли CS2 по-прежнему команды и файлы CS:GO?
Частично: папка конфигов осталась game/csgo/cfg/ и большинство cvar mp_* существует, но сервер — другое приложение (730), и часть вещей (плагины SourceMod, API Workshop из CS:GO) напрямую не переносится. При сомнениях проверяйте на своей сборке.
Сколько игроков и какая машина нужны для сервера CS2?
Руководство Hetzner рассчитано на 10–32 игрока при 4 vCPU, 8 ГБ ОЗУ и 80 ГБ диска; ограничить слоты можно параметром -maxplayers в строке запуска.
Можно ли запускать сервер от root?
Не рекомендуется: создайте отдельного пользователя (например, steam) без прав администратора и устанавливайте и запускайте сервер от него. Тогда уязвимость сервера или плагина не скомпрометирует всю машину.
Мой сервер Counter-Strike 2 не отображается в списке: что проверить?
Сначала проверьте, что порты открыты на всех уровнях, сервер не в режиме LAN (sv_lan 0) и, если игра требует, указан действительный токен сервера (GSLT). Список Steam может обновляться несколько минут; пока подключайтесь по IP:порт.

Инструменты для сервера Counter-Strike 2

Counter-Strike 2
Counter-Strike 2Свободный доступ
Создайте server.cfg и команду запуска сервера Counter-Strike 2: режим, раунды, деньги, боты и пароли.
КонфигурацияЗапускОткрыть
Документация
Counter-Strike 2
Counter-Strike 2Нужен вход
Составьте список карт Workshop для CS2: параметр +host_workshop_map, группа карт gamemodes_server.txt и команды ds_workshop_changelevel.
WorkshopКартыОткрыть
Документация