Saltar al contenido
Counter-Strike 2

Instalar un servidor de Counter-Strike 2

El servidor dedicado de CS2 se instala con SteamCMD (app 730, unos 60 GB) y se inicia con cs2.sh. Cuenta con un VPS Ubuntu reciente o un PC con Windows, media hora de instalación y un token de servidor (GSLT) para aparecer en línea. Fuentes consultadas: tutorial de Hetzner Community, guías de hosts y la wiki de Valve (no accesible al redactar, conviene contrastar).

Última actualización: 9/10/2026

El servidor dedicado de CS2 se instala con SteamCMD (app 730, unos 60 GB) y se inicia con cs2.sh. Cuenta con un VPS Ubuntu reciente o un PC con Windows, media hora de instalación y un token de servidor (GSLT) para aparecer en línea. Fuentes consultadas: tutorial de Hetzner Community, guías de hosts y la wiki de Valve (no accesible al redactar, conviene contrastar).

Instalación paso a paso

  1. Prepara la máquina: Ubuntu 24.04 (o Windows), al menos 4 vCPU, 8 GB de RAM y 80 GB de disco para 10 a 32 jugadores.

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

  3. Crea un token GSLT para el AppID 730 en steamcommunity.com/dev/managegameservers (un token por servidor).

  4. Descarga el servidor con app_update 730 validate (10 a 30 minutos).

  5. Crea el enlace steamclient.so del SDK de 64 bits e inicia el servidor con ./cs2.sh desde la carpeta game/.

  6. Coloca server.cfg en game/csgo/cfg/ (ver la herramienta «Generador de server.cfg para CS2»).

  7. Abre 27015 (UDP y TCP), 27005 (UDP) y 27020 (UDP) en ufw, el cortafuegos del proveedor y el router.

  8. Conéctate desde CS2 con la consola del juego: connect IP:27015.

  9. Crea un servicio systemd para el inicio automático y programa copias y actualizaciones.

Requisitos previos

  • Sistema: Ubuntu 24.04 (usado por el tutorial de Hetzner) o Windows 10/11 y Windows Server.
  • Recursos: 4 vCPU, 8 GB de RAM, 80 GB de disco para 10 a 32 jugadores (recomendación del tutorial de Hetzner); la descarga pesa unos 60 GB.
  • Cuentas: una cuenta de Steam para crear el token GSLT (AppID 730). Sin token, el servidor queda limitado a la red local.
  • Atención: el antiguo servidor de CS:GO usaba la app 740; CS2 usa la 730.

Instalación local en Windows

Descarga SteamCMD de la documentación oficial de Valve, descomprímelo en C:\steamcmd e instala el servidor. La ruta exacta de cs2.exe en Windows no se pudo confirmar en una fuente oficial: búscala en la carpeta game\bin tras la instalación, ejecútala con -dedicated -console y prueba con connect 127.0.0.1 en el juego.

cd C:\steamcmd
steamcmd +force_install_dir C:\cs2-server +login anonymous +app_update 730 validate +quit

VPS Linux: usuario y dependencias

Comandos del tutorial de Hetzner Community (Ubuntu 24.04). La cuenta steam no necesita sudo en producción: quítalo al terminar la instalación.

sudo apt update && sudo apt upgrade -y
sudo adduser steam
sudo usermod -aG sudo steam
su - steam
sudo apt-get install lib32gcc-s1 -y
sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update -y
sudo apt install steamcmd -y

VPS Linux: descarga del servidor

El tutorial de Hetzner recomienda además iniciar sesión una vez con una cuenta de Steam dedicada (steamcmd +login TU_CUENTA); la instalación anónima funciona en varias guías, prueba lo que te sirva.

mkdir -p ~/cs2-server && cd ~/cs2-server
steamcmd +login anonymous +force_install_dir ~/cs2-server +app_update 730 validate +quit

# SDK 64 bits (ignorer si le lien existe déjà)
mkdir -p ~/.steam/sdk64
ln -s ~/.local/share/Steam/steamcmd/linux64/steamclient.so ~/.steam/sdk64/steamclient.so

VPS Linux: primer inicio

Inicia siempre ./cs2.sh (no el binario directamente) desde la carpeta game/. Sustituye YOUR_GSLT_TOKEN. Modos: casual 0/0, competitive 0/1, deathmatch 1/2 (+game_type/+game_mode). La bandera -insecure desactiva VAC: resérvala a servidores privados. Para pruebas usa screen o tmux (screen -S cs2).

cd ~/cs2-server/game
./cs2.sh -dedicated -port 27015 -maxplayers 10 \
  +hostname "My CS2 Server" +map de_dust2 \
  +game_type 0 +game_mode 1 \
  +sv_setsteamaccount YOUR_GSLT_TOKEN

Puertos a abrir y cortafuegos Linux (ufw)

Para cambiar el puerto de juego, añade -port N a la línea de lanzamiento (un puerto distinto por instancia) y ábrelo en lugar de 27015.

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

  • 27015/udp: tráfico de juego
  • 27015/tcp: RCON y pings
  • 27005/udp: comunicación con el cliente
  • 27020/udp: SourceTV (grabación de demos)
  • Otros puertos del tutorial de Hetzner: 27036/tcp (Steam Remote Play), 3478/udp (NAT traversal), 4379-4380/udp (matchmaking), 22/tcp (SSH).
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="Counter-Strike 2 27015 UDP" dir=in action=allow protocol=UDP localport=27015
netsh advfirewall firewall add rule name="Counter-Strike 2 27015 TCP" dir=in action=allow protocol=TCP localport=27015
netsh advfirewall firewall add rule name="Counter-Strike 2 27005 UDP" dir=in action=allow protocol=UDP localport=27005
netsh advfirewall firewall add rule name="Counter-Strike 2 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 Counter-Strike 2 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/cs2.service (como root) y actívalo. Adapta el usuario y las rutas; consulta los registros con journalctl -u cs2 -f.

[Unit]
Description=Counter-Strike 2 dedicated server
After=network-online.target
Wants=network-online.target

[Service]
User=steam
WorkingDirectory=/home/steam/cs2-server/game
ExecStart=/home/steam/cs2-server/game/cs2.sh -dedicated -port 27015 -maxplayers 10 +game_type 0 +game_mode 1 +map de_dust2 +sv_setsteamaccount YOUR_GSLT_TOKEN
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

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

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 "Counter-Strike 2 server" /TR "C:\cs2-server\start-cs2.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 cs2
steamcmd +force_install_dir /home/steam/cs2-server +login anonymous +app_update 730 validate +quit
sudo systemctl start cs2

# backup
tar czf ~/cs2-$(date +%F).tar.gz -C /home/steam/cs2-server game/csgo/cfg game/csgo/gamemodes_server.txt

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

Registrar y encontrar tu servidor

Añade tu servidor en https://game-rank.com/jeux/counter-strike 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

  • El servidor arranca en modo LAN o invisible: token GSLT ausente, inválido o reutilizado en otro servidor. Solución: crea un token propio de este servidor para el AppID 730 y pásalo con +sv_setsteamaccount.
  • El servidor falla o no encuentra steamclient.so: falta el enlace del SDK de 64 bits. Solución: crea ~/.steam/sdk64/steamclient.so como se indica y ejecuta ./cs2.sh desde game/.
  • 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).

Preguntas frecuentes

¿CS2 sigue usando comandos y archivos de CS:GO?
En parte: la carpeta de config sigue siendo game/csgo/cfg/ y existen la mayoría de cvars mp_*, pero el servidor es otra aplicación (730) y algunas cosas (plugins SourceMod, API de Workshop de CS:GO) no se trasladan tal cual. Ante la duda, prueba en tu build.
¿Cuántos jugadores y qué máquina para un servidor CS2?
El tutorial de Hetzner apunta a 10-32 jugadores con 4 vCPU, 8 GB de RAM y 80 GB de disco; añade -maxplayers a la línea de lanzamiento para limitar los slots.
¿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 Counter-Strike 2 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 Counter-Strike 2

Counter-Strike 2
Counter-Strike 2Acceso libre
Crea el server.cfg de tu servidor de Counter-Strike 2 y el comando de lanzamiento: modo, rondas, dinero, bots y contraseñas.
ConfiguraciónLanzamientoAbrir
Documentación
Counter-Strike 2
Counter-Strike 2Requiere inicio de sesión
Lista tus mapas Workshop de CS2: parámetro +host_workshop_map, grupo de mapas gamemodes_server.txt y comandos ds_workshop_changelevel.
WorkshopMapasAbrir
Documentación