Как поднять сервер Squad: пошаговая инструкция
Squad — это не Rust и не Minecraft на 4 ГБ RAM: сто игроков на одной карте, техника, логистика, полноценные war-сессии, которые грузят VPS так, что дешёвый тариф просто захлебнётся на первом же крупном бою. Вдобавок конфиги раскиданы по нескольким файлам, а ротация карт настроена совсем не так, как в большинстве шутеров, и новичков это обычно ставит в тупик. Разберём по шагам: от честного разговора о железе до systemd-юнита, который поднимет сервер сам после перезагрузки хоста.
Содержание
Системные требования и подготовка VPS
Сразу честно: Squad — одна из самых тяжёлых игр среди тех, что вообще имеет смысл держать на арендованном VPS. Движок (Unreal Engine 4) не умеет эффективно размазывать нагрузку по ядрам, а сотня игроков с техникой и разрушаемым окружением на большой карте — это серьёзная просадка и по CPU, и по сети.
Формально сервер можно поднять и на 6 ГБ RAM — но это по факту тестовый вариант для небольшого закрытого сквада на 10-20 человек, не полноценный паблик на 100 слотов. Для чего ориентироваться:
- 6 ГБ RAM — минимум для теста, малых миксов, локальной игры со своей командой.
- 8-12 ГБ RAM — комфортно для сервера на 40-60 игроков без сложных плагинов.
- 16 ГБ и выше — для полноценного паблика на 80-100 слотов, особенно если планируете SquadJS и плагины для статистики/античита.
- CPU — важнее частота ядра, чем их количество: движок плохо параллелится, ищите тариф с быстрыми ядрами, а не просто с их числом.
- Диск — только SSD/NVMe, установка вместе с обновлениями занимает ориентировочно 40+ ГБ, точная цифра гуляет от патча к патчу.
- Канал — от 100 Мбит/с и без строгих лимитов по исходящему трафику: сотня клиентов постоянно синхронизируют состояние мира.
ОС — Ubuntu 22.04/24.04 LTS или Debian 12. Дальше все команды и пути — под Linux; на Windows-хосте логика конфигов та же, но исполняемый файл будет SquadGameServer.exe, а не .sh-скрипт.
Установка Squad через SteamCMD
Дедикейтед-сервер Squad ставится через SteamCMD под app id 403240 — это отдельная сборка, не путайте с клиентским app id самой игры. Как и с любым другим игровым сервером, работаем от отдельного непривилегированного пользователя:
sudo adduser squadserver
sudo su - squadserver
mkdir -p ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
Сама установка — анонимный логин, SteamCMD скачивает и распаковывает файлы сервера:
cd ~/steamcmd
./steamcmd.sh +force_install_dir /home/squadserver/squad-server +login anonymous +app_update 403240 validate +quit
Первая установка займёт от 20 минут до часа в зависимости от канала — качается порядка 15-20 ГБ, а с учётом временных файлов на диске должно быть свободно заметно больше. Для будущих обновлений держите ту же команду в отдельном скрипте update.sh — validate докачает только изменившиеся файлы, полную переустановку делать не нужно.
Поднять сервер Squad за пару минут
Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.
Создать серверПервый запуск и структура сервера
После установки структура каталогов выглядит так:
squad-server/
├── SquadGame/
│ ├── Binaries/Linux/SquadGameServer.sh
│ ├── ServerConfig/
│ │ ├── Server.cfg
│ │ ├── Rules.cfg
│ │ ├── Admins.cfg
│ │ ├── Bans.cfg
│ │ ├── MapRotation.cfg
│ │ └── MOTD.cfg
│ └── Saved/Logs/
Пробный запуск — из каталога с бинарником:
cd /home/squadserver/squad-server/SquadGame/Binaries/Linux
./SquadGameServer.sh Port=7787 QueryPort=27165 -log
-log пишет подробный вывод в SquadGame/Saved/Logs/ — при первом запуске обязательно держите этот флаг, так проще ловить причину, если сервер не поднялся или не появился в браузере серверов. Полная инициализация занимает пару минут: движок собирает список карт, факций и плагинов, если они установлены.
Если файлов Server.cfg, Rules.cfg и остальных нет в ServerConfig/ — это нормально для самой первой установки, часть из них создаётся сервером при первом запуске, часть нужно скопировать из шаблонов, идущих в архиве установки, или создать вручную по образцу ниже.
Server.cfg — базовая конфигурация
Это основной файл сервера: имя в списке, порты, лимиты и пароли. Рабочий каркас:
ServerName=My Squad Server
ServerPassword=
AdminPassword=SuperSecretAdmin123
MaxPlayers=100
PublicQueueLimit=25
ReservedSlots=8
ReservedSlotsPassword=ReservedPass123
VACEnabled=true
DemoEnabled=false
Разберём ключевые поля: ServerName — то, что видят игроки в браузере серверов; MaxPlayers — вместе с командными слотами, Squad поддерживает до 100 игроков на сессию, но полную сотню стоит выставлять только если железо реально тянет; PublicQueueLimit — сколько человек может стоять в очереди сверх MaxPlayers, чтобы слот не пустовал при дисконнекте; ReservedSlots и ReservedSlotsPassword — зарезервированные места для админов и донатеров, которые заходят по отдельному паролю поверх забитого лобби; AdminPassword используется и как пароль входа в консоль администратора, и как база для RCON-доступа.
ServerPassword оставляйте пустым для публичного сервера — заполненное поле превращает сервер в приватный, доступный только тем, кому вы лично дали пароль.
Rules.cfg и ротация карт
Здесь у Squad есть нюанс, который путает новичков, приходящих из других шутеров: правила сервера и ротация карт — это разные механизмы.
Rules.cfg — простой текстовый файл с правилами сервера, которые видят игроки во вкладке "Rules" в игровом меню. Формат — обычный текст, без секций:
1. Уважайте других игроков, без токсика в чате.
2. Тимкилл карается баном без предупреждения.
3. Discord сервера: your-discord-invite
Ротация карт устроена иначе и настраивается через MapRotation.cfg — список слоёв (layers), по одному на строку. В Squad карта, режим и версия баланса объединены в одну сущность-«слой»:
Narva_RAAS_v1
Yehorivka_AAS_v1
Gorodok_Invasion_v1
Mutaha_RAAS_v2
Fallujah_TC_v1
RAAS (Random Advance and Secure), AAS (Advance and Secure), Invasion, TC (Territory Control) — это игровые режимы, зашитые в название слоя. Список слоёв обновляется вместе с патчами игры, часть старых карт со временем убирают или переименовывают — сверяйтесь с актуальным списком в самой игре (вкладка выбора карты в лобби) перед тем как собирать длинную ротацию, иначе рискуете вписать в файл слой, которого уже нет в текущей версии.
Отдельно есть FactionRotation.cfg — список пулов фракций для тех, кто хочет ограничить, какие армии выпадают на сервере. Для старта его можно не трогать: по умолчанию используется полный пул из установленной версии игры.
Порты, firewall и автозапуск
Squad слушает три порта, и открывать их нужно отдельно — путаница с портами одна из самых частых причин "сервер запустился, но его не видно":
| Порт | Назначение | Проброс |
|---|---|---|
| 7787 (UDP) | Game Port — основной игровой трафик | обязателен |
| 27165 (UDP) | Query Port — отображение в браузере серверов Steam | обязателен |
| 21114 (TCP) | RCON Port — удалённое администрирование | опционально, но рекомендуется |
Это стандартные значения по умолчанию, но всегда сверяйте их с тем, что реально прописано в вашем Server.cfg — при желании их можно и нужно менять, если на VPS уже что-то занимает эти же порты.
Открываем через ufw:
sudo ufw allow 7787/udp
sudo ufw allow 27165/udp
sudo ufw allow 21114/tcp
sudo ufw enable
RCON включается и настраивается прямо в Server.cfg:
RconEnabled=true
RconPort=21114
RconPassword=AnotherSecretPass456
Подключаться можно любым RCON-клиентом, понимающим протокол Squad (например, через плагины SquadJS или отдельные RCON-инструменты) — удобно для смены карты, кика/бана игроков и рассылки сообщений без захода в саму игру под админом.
Автозапуск и восстановление после падений — через systemd:
# /etc/systemd/system/squad-server.service
[Unit]
Description=Squad Dedicated Server
After=network.target
[Service]
User=squadserver
WorkingDirectory=/home/squadserver/squad-server/SquadGame/Binaries/Linux
ExecStart=/home/squadserver/squad-server/SquadGame/Binaries/Linux/SquadGameServer.sh Port=7787 QueryPort=27165 -log
Restart=on-failure
RestartSec=15
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now squad-server
После этого сервер сам поднимется после перезагрузки хоста и перезапустится при падении. Логи смотрите через journalctl -u squad-server -f или напрямую в SquadGame/Saved/Logs/ — на модовых и плагинных сборках стоит первое время держать вкладку с логом открытой, чтобы сразу видеть причину, если что-то пошло не так.
Поднять сервер Squad за пару минут
Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.
Создать серверЧастые вопросы
Реально ли поднять полноценный сервер на 100 игроков на 6-8 ГБ RAM?
Формально запустится, но под нагрузкой полного лобби с техникой и боями это, скорее всего, будет проседать. 6-8 ГБ — это честный минимум для теста или маленького сквада, для стабильного паблика закладывайте 12-16 ГБ.
Сервер запущен, но не появляется в браузере серверов игры?
В 9 случаях из 10 дело в непроброшенном Query Port (27165/UDP) — проверьте ufw status и правила firewall у хостера, иногда провайдеры дополнительно блокируют UDP на уровне сети.
Как обновить сервер после патча?
Останавливаете systemd-юнит, запускаете ту же команду SteamCMD с +app_update 403240 validate, запускаете юнит обратно. Делать это стоит до того, как игроки массово обновят клиент — иначе они не смогут зайти из-за несовпадения версий.
Можно ли изменить ротацию карт без перезапуска сервера?
Правки в MapRotation.cfg подхватываются не мгновенно — надёжнее всего перезапустить сервис или, если админ на сервере в этот момент, сменить карту вручную через RCON-команду смены следующей карты.
Нужен ли отдельный сервер под тесты плагинов (SquadJS и подобное)?
Крайне желательно — плагины трогают RCON и логи в реальном времени, и лучше ловить их баги на тестовом инстансе, а не на паблике с живыми игроками.