Перейти к содержимому
Garry's Mod

Установка сервера Garry's Mod

Выделенный сервер Garry's Mod ставится через SteamCMD (app 4020, анонимный вход) и запускается через srcds_run (Linux) или srcds.exe (Windows). Нужно около 30 минут, VPS или ПК и токен сервера GSLT, обязательный по вики Facepunch. Основной источник: wiki.facepunch.com/gmod.

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

Выделенный сервер Garry's Mod ставится через SteamCMD (app 4020, анонимный вход) и запускается через srcds_run (Linux) или srcds.exe (Windows). Нужно около 30 минут, VPS или ПК и токен сервера GSLT, обязательный по вики Facepunch. Основной источник: wiki.facepunch.com/gmod.

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

  1. Выберите машину: VPS с Linux (Ubuntu/Debian) или ПК с Windows; нагрузка зависит в основном от аддонов и режима.

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

  3. Скачайте сервер: app_update 4020 validate с анонимным входом.

  4. Создайте токен GSLT (AppID 4000) на steamcommunity.com/dev/managegameservers.

  5. Создайте строку запуска инструментом «Команда запуска Garry's Mod» и запустите srcds_run.

  6. Настройте garrysmod/cfg/server.cfg инструментом «Генератор server.cfg для Garry's Mod».

  7. Добавьте аддоны через коллекцию Workshop (+host_workshop_collection).

  8. Откройте порты (минимум 27015 UDP/TCP) в ufw, у провайдера и на роутере.

  9. Проверьте локально (connect 127.0.0.1 в консоли игры), затем с другого подключения.

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

Требования

  • ОС: Linux (Ubuntu/Debian) или Windows. В вики Facepunch есть команды для Windows и Linux.
  • Ресурсы: вики минимум не задаёт. Начните с 2 vCPU, 4 ГБ ОЗУ и нескольких ГБ диска, затем подстройте под аддоны и число игроков (официально не документировано).
  • Аккаунты: аккаунт Steam для токена GSLT (AppID 4000); сам сервер ставится анонимным входом.

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

Распаковав SteamCMD в C:\steamcmd, установите сервер и запустите srcds.exe (пример из вики Facepunch). Затем проверьте командой connect 127.0.0.1 в консоли игры.

cd C:\steamcmd
steamcmd +force_install_dir C:\gmodds +login anonymous +app_update 4020 validate +quit

cd C:\gmodds
srcds.exe -console -game garrysmod +maxplayers 20 +gamemode sandbox +map gm_construct +sv_setsteamaccount YOUR_GSLT_TOKEN

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

Сервер Source — 32-битная программа: включите архитектуру i386 и установите 32-битные библиотеки. Пакеты ниже взяты из вики Team Fortress (тот же движок); названия могут отличаться в зависимости от дистрибутива.

sudo adduser steam
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 lib32z1 steamcmd
su - steam

Linux VPS: установка и первый запуск

Команда установки для Linux из вики Facepunch, затем запуск через srcds_run. На странице нет подробностей о портах и точном месте server.cfg; действуют стандартные значения Source (см. ниже).

steamcmd +login anonymous +force_install_dir /home/steam/gmodds +app_update 4020 validate +quit

cd /home/steam/gmodds
./srcds_run -game garrysmod -console +maxplayers 32 +gamemode sandbox +map gm_construct +sv_setsteamaccount YOUR_GSLT_TOKEN

Workshop и токен GSLT

По вики Facepunch, +sv_setsteamaccount обязателен (без него рейтинг сервера понижается), а +host_workshop_collection добавляет аддоны публичной или скрытой по ссылке коллекции вместе с вложенными. host_workshop_autoupdate 0 отключает автообновление, но может помешать игрокам зайти при устаревшей версии карты. В вики упомянут и новый формат cfg/srcds_workshop_ids.txt (версия 2026.09.22 и новее): см. страницу «Workshop for Dedicated Servers». О загрузках на стороне игроков — инструмент «Менеджер коллекции Workshop».

./srcds_run -game garrysmod -console +maxplayers 32 +gamemode sandbox +map gm_construct \
  +host_workshop_collection 123456789 \
  +sv_setsteamaccount YOUR_GSLT_TOKEN

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

Это стандартные значения серверов Source (на изученной странице вики Facepunch их нет). Игровой порт меняется параметром -port N в строке запуска. Аддоны Workshop скачиваются через Steam: дополнительных портов на стороне игрока не документировано.

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

  • 27015/udp: игра (порт Source по умолчанию)
  • 27015/tcp: RCON
  • 27005/udp: связь с клиентом
  • 27020/udp: SourceTV (необязательно)
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="Garry's Mod 27015 UDP" dir=in action=allow protocol=UDP localport=27015
netsh advfirewall firewall add rule name="Garry's Mod 27015 TCP" dir=in action=allow protocol=TCP localport=27015
netsh advfirewall firewall add rule name="Garry's Mod 27005 UDP" dir=in action=allow protocol=UDP localport=27005
netsh advfirewall firewall add rule name="Garry's Mod 27020 UDP" dir=in action=allow protocol=UDP localport=27020

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

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

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

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

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

[Unit]
Description=Garry's Mod dedicated server
After=network-online.target
Wants=network-online.target

[Service]
User=steam
WorkingDirectory=/home/steam/gmodds
ExecStart=/home/steam/gmodds/srcds_run -game garrysmod -console -norestart +maxplayers 32 +gamemode sandbox +map gm_construct +sv_setsteamaccount YOUR_GSLT_TOKEN
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

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

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

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

schtasks /Create /TN "Garry's Mod server" /TR "C:\gmodds\start-gmod.bat" /SC ONSTART /RU SYSTEM /RL HIGHEST

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

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

sudo systemctl stop gmod
steamcmd +force_install_dir /home/steam/gmodds +login anonymous +app_update 4020 validate +quit
sudo systemctl start gmod

# backup
tar czf ~/gmod-$(date +%F).tar.gz -C /home/steam/gmodds garrysmod/cfg garrysmod/data garrysmod/addons

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

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

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

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

  • Клиенты зависают на загрузке или «missing content»: аддоны не переданы игрокам. Решение: добавьте ID в workshop.lua (resource.AddWorkshop) или задайте sv_downloadurl (FastDL) и проверьте, что коллекция публичная.
  • Сервер не виден снаружи: служба работает, но никто не может подключиться. Причина: закрыт порт (ufw, брандмауэр провайдера или нет NAT). Решение: откройте перечисленные порты на всех трёх уровнях и проверьте с другого подключения.
  • Порт занят при запуске: порт удерживает другой экземпляр. Решение: посмотрите процессы командой ss -lunp | grep 27015, остановите старый экземпляр или задайте каждому серверу свой порт через -port.
  • SteamCMD «Failed to install app» или зависшая загрузка: частая причина — заполненный диск или нехватка прав на папку. Решение: проверьте df -h и владельца папки, затем повторите команду с validate (при необходимости несколько раз).
  • srcds_run: «No such file or directory» или нет 32-битной библиотеки: сервер Source — 32-битная программа. Решение: включите архитектуру i386 (dpkg --add-architecture i386) и установите lib32gcc-s1 и lib32stdc++6.

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

Обязателен ли токен GSLT?
Вики Facepunch указывает, что +sv_setsteamaccount обязателен, а без него рейтинг сервера понижается. Для создания токена используйте AppID 4000.
Как сменить режим игры (DarkRP, TTT…)?
Параметром +gamemode <папка> в строке запуска; папка находится в garrysmod/gamemodes/ или в gamemodes/ аддона. Можно также изменить переменную gamemode и затем сменить карту.
Можно ли запускать сервер от root?
Не рекомендуется: создайте отдельного пользователя (например, steam) без прав администратора и устанавливайте и запускайте сервер от него. Тогда уязвимость сервера или плагина не скомпрометирует всю машину.
Мой сервер Garry's Mod не отображается в списке: что проверить?
Сначала проверьте, что порты открыты на всех уровнях, сервер не в режиме LAN (sv_lan 0) и, если игра требует, указан действительный токен сервера (GSLT). Список Steam может обновляться несколько минут; пока подключайтесь по IP:порт.

Инструменты для сервера Garry's Mod

Garry's Mod
Garry's ModСвободный доступ
Создайте server.cfg для сервера Garry's Mod: имя, пароли, регион, FastDL, лимиты песочницы и безопасность.
КонфигурацияПесочницаОткрыть
Документация
Garry's Mod
Garry's ModСвободный доступ
Создайте строку запуска srcds для Garry's Mod: карта, режим, слоты, порт, коллекция Workshop и токен GSLT.
ЗапускКонфигурацияОткрыть
Документация
Garry's Mod
Garry's ModНужен вход
Вставьте ссылки Workshop: очищенные ID без дублей, параметр +host_workshop_collection и готовый workshop.lua.
WorkshopАддоныОткрыть
Документация
Garry's Mod
Garry's ModНужен вход
Создайте settings.lua для DarkRP: экономика, зарплаты, скорости, законы, дистанции чата и лимиты с официальными значениями по умолчанию.
DarkRPКонфигурацияРолевая играОткрыть
Документация
Garry's Mod
Garry's ModНужен вход
Вставьте Lua-скрипт Garry's Mod: найдёт незакрытые end, скобки и строки до перезапуска сервера.
LuaРазработкаОткрыть
Документация