MAATRIX / Блог / CS2 на Ubuntu 24.04: пошаговая установка

CS2 на Ubuntu 24.04: пошаговая установка

CS2 на Ubuntu 24.04: пошаговая установка

MAATRIX

Ubuntu 24.04 LTS — актуальная долгосрочная система, и развернуть на ней выделенный сервер Counter-Strike 2 несложно, если знать пару особенностей свежего релиза: включение 32-битной архитектуры и правильную установку SteamCMD. Разберём пошаговую установку CS2 на Ubuntu 24.04 с упором на специфику системы: пакеты, GSLT-токен, юнит systemd и штатный фаервол UFW. Материал ориентирован именно на новую LTS-версию.

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →

Особенности Ubuntu 24.04 для сервера CS2

Свежий LTS-релиз даёт стабильную и поддерживаемую годами основу, но у него есть нюанс, важный именно для Steam-игр. CS2 и SteamCMD, несмотря на то что игра 64-битная, зависят от 32-битных библиотек, а на минимальной установке Ubuntu 24.04 архитектура i386 по умолчанию отключена. Поэтому первым делом её нужно явно включить, иначе SteamCMD не запустится. Это ключевое отличие подготовки Steam-сервера от, скажем, Java-сервера, где таких зависимостей нет.

В остальном свежая система работает в пользу: современное ядро лучше распоряжается сетью и ресурсами, что важно для чувствительного к задержкам шутера, а свежий systemd упрощает автозапуск. Обновления безопасности LTS выходят долго, так что сервер не придётся срочно переносить. Разберём установку штатными средствами, полностью совместимыми с 24.04.

Включение 32-битной архитектуры и зависимостей

Это первый и самый важный шаг на Ubuntu 24.04. Добавьте архитектуру i386, обновите индексы и установите 32-битные библиотеки вместе со SteamCMD. Без этого сервер CS2 работать не будет.

apt update && apt upgrade -y
dpkg --add-architecture i386
apt update
apt install -y lib32gcc-s1 lib32stdc++6 steamcmd curl tar

Пакет lib32gcc-s1 — критичная зависимость: именно его отсутствие даёт самую частую ошибку при запуске на свежей системе. После установки заведите отдельного пользователя под сервер, чтобы не запускать игру от root.

adduser --disabled-password --home /home/cs2 cs2

Дальнейшие действия по установке выполняйте от пользователя cs2. На Ubuntu 24.04 пакет steamcmd доступен из репозитория multiverse, поэтому убедитесь, что этот компонент включён, если apt не находит пакет.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS

Загрузка сервера через SteamCMD

Переключитесь на пользователя cs2 и загрузите серверные файлы Counter-Strike 2. App-ID выделенного сервера CS2 — 730. Загрузка объёмная, несколько десятков гигабайт, так что убедитесь в наличии места на диске.

su - cs2
steamcmd +force_install_dir /home/cs2/server \
  +login anonymous +app_update 730 validate +quit

Параметр validate проверяет целостность после загрузки — не пропускайте его, оборванная закачка даёт вылеты, которые трудно диагностировать. Если загрузка прервётся, повторите ту же команду: SteamCMD докачает недостающее, а не начнёт заново. После завершения серверные файлы окажутся в каталоге server, и можно переходить к получению токена.

GSLT-токен для доступа из интернета

Чтобы сервер был виден в интернете и доступен игрокам через браузер серверов, ему нужен GSLT — Game Server Login Token. Это бесплатный токен, который вы получаете в личном кабинете Steam на странице управления игровыми серверами, указав App-ID 730. Без токена сервер запустится, но останется доступен только в локальной сети.

Токен привязан к вашему аккаунту Steam, поэтому храните его в секрете и не используйте чужие. Если токен утечёт или на сервере будут нарушения, Valve может его заблокировать вместе с санкциями на аккаунт. Один аккаунт может держать несколько токенов для разных серверов — это удобно, если вы поднимаете не одну площадку. Записывайте токен в защищённое место или в переменную окружения systemd-юнита, а не в общедоступный конфиг.

На свежей системе удобно хранить токен именно в юните через директиву Environment, а в строке запуска подставлять переменную. Так секрет не окажется в истории команд и в общедоступных конфигах, а при смене токена достаточно поправить одну строку юнита. Это аккуратнее, чем прописывать токен прямо в команду, и хорошо ложится на модель systemd в Ubuntu 24.04. Проверить, что переменная подхватилась, можно через systemctl show с фильтром по окружению сервиса после запуска.

Первый запуск и systemd на Ubuntu 24.04

Запустите сервер вручную для проверки, указав карту, число слотов, режим и токен. CS2 использует порт 27015 по умолчанию.

cd /home/cs2/server/game/bin/linuxsteamrt64
./cs2 -dedicated -port 27015 +map de_dust2 \
  +sv_setsteamaccount ВАШ_GSLT_ТОКЕН +game_type 0 +game_mode 1

Если пошли строки о загрузке карты, установка удалась. Теперь оформите автозапуск через свежий systemd Ubuntu 24.04. Создайте файл /etc/systemd/system/cs2.service, подставив токен в переменную окружения, затем включите сервис.

systemctl daemon-reload
systemctl enable --now cs2

Обязательно задайте RCON-пароль в настройках сервера для удалённого управления и надёжный пароль на вход, если сервер приватный. Свежий systemd на 24.04 корректно поднимает сервер после перезагрузки и перезапускает его при падении, если в юните указан параметр Restart=on-failure.

Управлять сервером на свежей системе удобно через связку systemd и RCON. Команда journalctl с ключом слежения показывает лог сервиса в реальном времени, так что видно, что происходит при старте и во время матчей. А RCON даёт удалённый доступ к игровым командам: смена карты, кик игроков, правка настроек на лету — без необходимости подключаться к самому процессу. Держите RCON-пароль надёжным и не открывайте его порт всему интернету без нужды, потому что доступ к RCON это полный контроль над сервером.

Фаервол UFW и эксплуатация

Ubuntu 24.04 поставляется со штатным фаерволом UFW — им и откроем игровой порт. CS2 использует порт 27015 по протоколам TCP и UDP, причём игровой трафик идёт по UDP.

ufw allow 27015
ufw status
ss -ulnp | grep 27015

Команда ufw allow 27015 без указания протокола открывает и TCP, и UDP — оба нужны, потому что игровой поток по UDP, а RCON по TCP. Команда ss подтвердит, что сервер слушает UDP-порт. В эксплуатации помните про обновления: после каждого крупного патча CS2 серверные файлы нужно обновлять командой SteamCMD с app_update 730, иначе клиенты новой версии не подключатся. Для шутера критичны быстрый процессор под стабильный тикрейт и низкий пинг до игроков, поэтому важна и мощность машины, и её локация. Развернуть сервер на Ubuntu 24.04 удобно на VPS у MAATRIX: свежий образ, быстрый CPU, локация под вашу команду и оплата из России картой, СБП или криптой — сервер готов к матчу за минуты.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →

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

Почему на Ubuntu 24.04 сервер CS2 не запускается сразу?

На свежей системе отключена 32-битная архитектура. Включите её командой dpkg --add-architecture i386 и поставьте lib32gcc-s1 — без этого SteamCMD и сервер не стартуют.

Где взять GSLT-токен и зачем он?

Без токена сервер виден только локально. Получите его бесплатно в кабинете Steam для App-ID 730 и подставьте при запуске параметром sv_setsteamaccount.

Какой порт открыть в UFW на Ubuntu 24.04?

Порт 27015 командой ufw allow 27015 — она открывает и TCP, и UDP. Игровой трафик идёт по UDP, поэтому открыть только TCP недостаточно для игры.

Как обновлять сервер CS2 на Ubuntu 24.04?

Той же командой SteamCMD с app_update 730 после выхода патча. Без обновления серверных файлов клиенты новой версии не смогут подключиться к серверу.

Нужны сами нейросети для контента?

Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.