Выделенный сервер Squad бесплатен и скачивается анонимно через SteamCMD (app 403240) в Windows и Linux. Потребуется 30–45 минут: установка, Server.cfg, порты 7787/UDP, 27165/UDP и 21114/TCP и автоматическая служба.
Пошаговая установка
Подготовьте 64-битную машину с быстрым CPU, достаточным ОЗУ и SSD.
Установите SteamCMD и скачайте app 403240 с анонимным входом.
Создайте Server.cfg инструментом сайта; создайте Admins.cfg и Rcon.cfg в SquadGame/ServerConfig.
Запустите SquadGameServer с Port, QueryPort, RCONPORT и FIXEDMAXPLAYERS.
Откройте 7787/UDP, 27165/UDP и при необходимости 21114/TCP (RCON) везде, где трафик фильтруется.
Настройте ротацию (LevelRotation.cfg или LayerRotation.cfg) и MapRotationMode.
Создайте службу systemd (Linux) или задачу планировщика (Windows).
Запланируйте обновления, бэкапы конфигурации и перезапуск.
Проверьте снаружи и добавьте сервер на game-rank.com.
Требования
64-битные Windows или Linux. Для хостинга не нужны ни аккаунт, ни лицензия (анонимный вход). В изученных источниках нет официального минимума: рассчитывайте на быстрый однопоточный CPU, 16 ГБ ОЗУ и больше для 80–100 игроков, SSD (игра занимает несколько десятков ГБ) и хороший исходящий канал. Версии сервера и клиента должны совпадать.
Локальная установка (Windows)
Установите сервер через SteamCMD (Valve) и запустите его; подключитесь из игры через консоль (клавиша ё/`) командой open 127.0.0.1:7787.
steamcmd.exe +force_install_dir C:\SquadServer +login anonymous +app_update 403240 validate +quit
cd /d C:\SquadServer
SquadGameServer.exe Port=7787 QueryPort=27165 RCONPORT=21114 FIXEDMAXPLAYERS=80 -logУстановка на Linux VPS / выделенный сервер
В Ubuntu/Debian создайте пользователя без root, установите SteamCMD (Debian: сначала включите «non-free»), скачайте сервер и запустите.
sudo apt update && sudo apt install -y software-properties-common
sudo add-apt-repository -y multiverse && sudo dpkg --add-architecture i386 && sudo apt update
sudo apt install -y steamcmd lib32gcc-s1 ca-certificates
sudo adduser --disabled-password --gecos "" squadПервый запуск
Под выделенным пользователем установите сервер и запустите SquadGameServer.sh с нужными портами.
sudo -iu squad
mkdir -p ~/server && /usr/games/steamcmd +force_install_dir ~/server +login anonymous +app_update 403240 validate +quit
cd ~/server && ./SquadGameServer.sh Port=7787 QueryPort=27165 RCONPORT=21114 FIXEDMAXPLAYERS=80Порты для открытия
Значения по умолчанию из руководств хостеров (официальную документацию изучить не удалось); меняются параметрами Port=, QueryPort= и RCONPORT= при запуске. В Rcon.cfg тоже есть порт RCON.
- 7787/UDP — игра
- 27165/UDP — запросы Steam (список серверов)
- 21114/TCP — RCON (необязательно, защитите)
Файрвол Linux (ufw)
sudo ufw allow 7787/udp
sudo ufw allow 27165/udp
sudo ufw allow 21114/tcp
sudo ufw status verboseБрандмауэр Windows (netsh)
netsh advfirewall firewall add rule name="Squad 7787 UDP" dir=in action=allow protocol=UDP localport=7787
netsh advfirewall firewall add rule name="Squad 27165 UDP" dir=in action=allow protocol=UDP localport=27165
netsh advfirewall firewall add rule name="Squad 21114 TCP" dir=in action=allow protocol=TCP localport=21114Файрвол хостера и домашний роутер (NAT)
У OVH, Hetzner, Scaleway и подобных хостеров откройте те же порты и в файрволе провайдера (security group / файрвол панели): он фильтрует трафик до машины. При домашнем хостинге настройте на роутере проброс (NAT) каждого порта на локальный IP сервера с нужным протоколом. Проверяйте снаружи (мобильная сеть); не открывайте порты администрирования (RCON) без надёжного пароля.
Автозапуск (systemd)
Сохраните файл как /etc/systemd/system/squad.service и выполните: sudo systemctl daemon-reload && sudo systemctl enable --now squad. Логи: journalctl -u squad -f. В Windows создайте задачу планировщика при запуске, запускающую SquadGameServer.exe.
[Unit]
Description=Squad server
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=squad
WorkingDirectory=/home/squad/server
ExecStart=/home/squad/server/SquadGameServer.sh Port=7787 QueryPort=27165 RCONPORT=21114 FIXEDMAXPLAYERS=80
Restart=on-failure
RestartSec=15
LimitNOFILE=100000
[Install]
WantedBy=multi-user.targetОбновления
Остановите службу, снова выполните app_update и перезапустите. Версии клиента и сервера должны совпадать: обновляйте сервер после каждого патча игры.
sudo systemctl stop squad
sudo -u squad /usr/games/steamcmd +force_install_dir /home/squad/server +login anonymous +app_update 403240 validate +quit
sudo systemctl start squadРезервные копии и плановые перезапуски
Делайте бэкап папки SquadGame/ServerConfig (Server.cfg, Admins.cfg, Rcon.cfg, файлы ротации) и планируйте ежедневный перезапуск (здесь 05:00, бэкап в 04:55).
# crontab -e (root)
55 4 * * * tar czf /var/backups/squad-$(date +\%F).tgz -C /home/squad/server/SquadGame ServerConfig
0 5 * * * systemctl restart squadПубликация и поиск сервера
Когда сервер станет доступен снаружи, добавьте его на game-rank.com/jeux/squad (сайт владельца инструмента), чтобы игроки могли его найти.
Устранение неполадок
- Сервера нет в списке: закрыт 27165/UDP или QueryPort отличается от открытого в файрволе.
- Снаружи не подключиться: не открыт 7787/UDP (система, хостер, NAT); нужен UDP, а не TCP.
- Несовместимая версия: сервер не обновлён после патча — снова выполните app_update.
- Изменения Server.cfg игнорируются: файл правили при работающем сервере (или он перезаписан) — остановите сервер перед правкой.
- RCON не работает: нет пароля в Rcon.cfg или заблокирован 21114/TCP; открывайте этот порт только для ваших инструментов администрирования.
Частые вопросы
- Нужно ли владеть Squad для хостинга?
- Нет: выделенный сервер (app 403240) скачивается с анонимным входом SteamCMD.
- Как добавить администраторов?
- В Admins.cfg: строка Group=Имя:права (например, Group=Moderator:chat,kick,cameraman), затем Admin=<SteamID64>:Имя.
- Какие порты по умолчанию?
- 7787/UDP (игра), 27165/UDP (запросы) и 21114/TCP (RCON) по руководствам хостеров; настраиваются при запуске.
- Нужно ли перезапускать после правки Server.cfg?
- Да: остановите сервер перед правкой, затем перезапустите для применения.
