Saltar al contenido
Garry's Mod

Instalar un servidor de Garry's Mod

El servidor dedicado de Garry's Mod se instala con SteamCMD (app 4020, login anónimo) y se inicia con srcds_run (Linux) o srcds.exe (Windows). Cuenta con unos 30 minutos, un VPS o un PC y un token de servidor GSLT, obligatorio según la wiki de Facepunch. Fuente principal: wiki.facepunch.com/gmod.

Última actualización: 9/10/2026

El servidor dedicado de Garry's Mod se instala con SteamCMD (app 4020, login anónimo) y se inicia con srcds_run (Linux) o srcds.exe (Windows). Cuenta con unos 30 minutos, un VPS o un PC y un token de servidor GSLT, obligatorio según la wiki de Facepunch. Fuente principal: wiki.facepunch.com/gmod.

Instalación paso a paso

  1. Elige la máquina: VPS Linux (Ubuntu/Debian) o PC Windows; la carga depende sobre todo de los addons y el modo de juego.

  2. Crea un usuario no root (steam) e instala SteamCMD y las bibliotecas de 32 bits.

  3. Descarga el servidor: app_update 4020 validate con login anónimo.

  4. Crea un token GSLT (AppID 4000) en steamcommunity.com/dev/managegameservers.

  5. Genera la línea de lanzamiento con la herramienta «Línea de lanzamiento de Garry's Mod» e inicia srcds_run.

  6. Configura garrysmod/cfg/server.cfg con la herramienta «Generador de server.cfg para Garry's Mod».

  7. Añade tus addons con una colección Workshop (+host_workshop_collection).

  8. Abre los puertos (27015 UDP/TCP como mínimo) en ufw, en el proveedor y en el router.

  9. Prueba en local (connect 127.0.0.1 en la consola del juego) y luego desde otra conexión.

  10. Crea un servicio systemd y programa actualizaciones y copias de seguridad.

Requisitos previos

  • Sistema: Linux (Ubuntu/Debian) o Windows. La wiki de Facepunch da los comandos de Windows y Linux.
  • Recursos: la wiki no fija mínimos. Parte de 2 vCPU, 4 GB de RAM y varios GB de disco, y ajusta según tus addons y jugadores (no documentado oficialmente).
  • Cuentas: una cuenta de Steam para el token GSLT (AppID 4000); el servidor se instala con login anónimo.

Instalación local en Windows

Tras descomprimir SteamCMD en C:\steamcmd, instala el servidor y ejecuta srcds.exe (ejemplo de la wiki de Facepunch). Después prueba con connect 127.0.0.1 en la consola del juego.

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

VPS Linux: usuario y dependencias

El servidor Source es un programa de 32 bits: activa la arquitectura i386 e instala las bibliotecas de 32 bits. Los paquetes vienen de la wiki de Team Fortress (mismo motor); los nombres pueden variar según la distribución.

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

VPS Linux: instalación y primer inicio

Comando de instalación en Linux de la wiki de Facepunch y luego inicio con srcds_run. La página no detalla los puertos ni la ubicación exacta de server.cfg; se aplican los valores estándar de Source (ver más abajo).

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 y token GSLT

Según la wiki de Facepunch, +sv_setsteamaccount es obligatorio (sin él se penaliza la posición del servidor) y +host_workshop_collection añade los addons de una colección pública o no listada, subcolecciones incluidas. host_workshop_autoupdate 0 detiene las actualizaciones automáticas pero puede impedir que entren jugadores si la versión del mapa está desfasada. La wiki menciona también un nuevo formato cfg/srcds_workshop_ids.txt (versión 2026.09.22 o posterior): consulta su página «Workshop for Dedicated Servers». Para descargas en el cliente, mira la herramienta «Gestor de colección Workshop».

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

Puertos a abrir y cortafuegos Linux (ufw)

Estos puertos son los valores estándar de los servidores Source (la página consultada de la wiki de Facepunch no los lista). Para cambiar el puerto de juego usa -port N en la línea de lanzamiento. Los addons Workshop se descargan vía Steam: no se documenta ningún puerto extra para el jugador.

Abre solo lo necesario y prueba desde otra conexión (no desde el propio servidor).

  • 27015/udp: juego (puerto Source por defecto)
  • 27015/tcp: RCON
  • 27005/udp: comunicación con el cliente
  • 27020/udp: SourceTV (opcional)
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

Cortafuegos de Windows (netsh)

En un símbolo del sistema de administrador, crea una regla de entrada por puerto (o abre «Firewall de Windows Defender con seguridad avanzada»).

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

Cortafuegos del proveedor y redirección de puertos (router)

En un proveedor (OVH, Hetzner, Scaleway…), abre también los mismos puertos en el cortafuegos o «security group» del proveedor: ufw no basta si hay un cortafuegos previo. En casa, crea en el router una redirección (NAT) de cada puerto a la IP local de la máquina (fíjala o resérvala por DHCP).

Prueba: desde otra conexión, añade el servidor como «IP:puerto» en el navegador de servidores de Garry's Mod o en la consola. Si falla, revisa en orden: servicio iniciado, cortafuegos local, cortafuegos del proveedor, redirección NAT.

Inicio automático: servicio systemd

Crea /etc/systemd/system/gmod.service (como root) y actívalo. Adapta el usuario y las rutas; consulta los registros con 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: tarea programada al inicio

En Windows, una tarea programada ejecuta tu script .bat al iniciar el sistema (ejecuta el comando en un símbolo de administrador).

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

Actualizaciones, copias de seguridad y reinicios programados

Detén el servicio antes de actualizar (mismo comando SteamCMD que en la instalación), copia con regularidad los archivos de configuración y datos, y programa un reinicio diario si el servidor se degrada con el tiempo.

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

Registrar y encontrar tu servidor

Añade tu servidor en https://game-rank.com/jeux/garrys-mod para que la comunidad lo vea. Para encontrarlo en el juego, usa el navegador de servidores o conéctate directamente con su IP:puerto.

Solución de problemas: errores frecuentes

  • Los clientes se quedan cargando o «missing content»: addons no entregados a los jugadores. Solución: añade los IDs en workshop.lua (resource.AddWorkshop) o configura sv_downloadurl (FastDL) y comprueba que la colección sea pública.
  • Servidor invisible desde fuera: el servicio funciona pero nadie puede conectarse. Causa: puerto cerrado (ufw, cortafuegos del proveedor o falta la redirección NAT). Solución: abre los puertos indicados en los tres niveles y prueba desde otra conexión.
  • Puerto ya en uso al iniciar: otra instancia ocupa el puerto. Solución: lista los procesos con ss -lunp | grep 27015, detén la instancia anterior o asigna un puerto distinto con -port a cada servidor.
  • SteamCMD «Failed to install app» o descarga detenida: causa frecuente, disco lleno o permisos insuficientes en la carpeta. Solución: revisa df -h y el propietario de la carpeta y repite el comando con validate (varias veces si hace falta).
  • srcds_run: «No such file or directory» o falta una biblioteca de 32 bits: el servidor Source es de 32 bits. Solución: activa la arquitectura i386 (dpkg --add-architecture i386) e instala lib32gcc-s1 y lib32stdc++6.

Preguntas frecuentes

¿Es obligatorio el token GSLT?
La wiki de Facepunch indica que +sv_setsteamaccount es obligatorio y que omitirlo penaliza la posición del servidor. Usa el AppID 4000 para crear el token.
¿Cómo cambio de modo de juego (DarkRP, TTT…)?
Con +gamemode <carpeta> en la línea de lanzamiento, donde la carpeta está en garrysmod/gamemodes/ o en la carpeta gamemodes/ de un addon. También puedes cambiar la variable gamemode y luego cambiar de mapa.
¿Puedo ejecutar el servidor como root?
No se recomienda: crea un usuario dedicado (por ejemplo steam) sin derechos de administrador e instala y ejecuta el servidor con él. Así un fallo del servidor o de un plugin no compromete toda la máquina.
Mi servidor de Garry's Mod no aparece en la lista: ¿qué reviso?
Comprueba primero que los puertos estén abiertos en todos los niveles, que el servidor no esté en modo LAN (sv_lan 0) y, si el juego lo exige, que se aporte un token de servidor (GSLT) válido. La lista de Steam puede tardar unos minutos en actualizarse; mientras, conéctate por IP:puerto.

Herramientas para tu servidor de Garry's Mod

Garry's Mod
Garry's ModAcceso libre
Crea el server.cfg de tu servidor de Garry's Mod: nombre, contraseñas, región, descargas FastDL, límites sandbox y seguridad.
ConfiguraciónSandboxAbrir
Documentación
Garry's Mod
Garry's ModAcceso libre
Genera la línea de lanzamiento srcds de Garry's Mod: mapa, modo de juego, slots, puerto, colección Workshop y token GSLT.
LanzamientoConfiguraciónAbrir
Documentación
Garry's Mod
Garry's ModRequiere inicio de sesión
Pega tus enlaces Workshop: IDs limpios y sin duplicados, parámetro +host_workshop_collection y archivo workshop.lua listos.
WorkshopAddonsAbrir
Documentación
Garry's Mod
Garry's ModRequiere inicio de sesión
Genera el settings.lua de DarkRP: economía, salarios, velocidades, leyes, distancias de chat y límites, con los valores oficiales.
DarkRPConfiguraciónRoleplayAbrir
Documentación
Garry's Mod
Garry's ModRequiere inicio de sesión
Pega un script Lua de Garry's Mod: detecta end, paréntesis y cadenas sin cerrar antes de reiniciar el servidor.
LuaDesarrolloAbrir
Documentación