News
/

How to run your own Classic Offensive server (Linux / Windows)

A complete step-by-step guide covering Classic Offensive server installation, parameter configuration, and the most common issues.

How to run your own Classic Offensive server (Linux / Windows)

If you want to run a dedicated Classic Offensive server, you can do so on both Linux and Windows. Below you will find a complete step-by-step guide covering installation from ZIP files, startup parameter configuration, and the most common issues.


System Requirements

  • System: Debian 12 or Windows 10/11

  • Minimum 2 GB RAM (4 GB+ recommended)

  • Public IP address

  • Open ports: UDP 27015, TCP 27015


Classic Offensive Server on Debian 12 (Linux)

1. Installing 32-bit libraries

sudo dpkg --add-architecture i386
sudo apt update

sudo apt install -y \
lib32gcc-s1 \
lib32stdc++6 \
libc6-i386 \
libcurl4-gnutls-dev:i386 \
libncurses5:i386 \
libtinfo5:i386 \
unzip \
screen \
wget

2. Directory structure

/home/cs/servers/csco
sudo adduser --disabled-password --gecos "" cs
sudo mkdir -p /home/cs/servers
sudo chown -R cs:cs /home/cs

sudo su - cs
mkdir -p /home/cs/servers/csco
cd /home/cs/servers

3. Uploading server files from ZIP
(alternatively, you can upload the game files directly from your computer)

wget -O csco_server.zip "csco.b-cdn.net/packages/full.zip"
unzip csco_server.zip -d csco
cd csco

The structure should contain:

srcds_run
srcds_linux
bin/
csco/

4. Granting execute permissions

chmod +x srcds_run
chmod +x srcds_linux
chmod -R 755 bin
find . -type f -name "*.so" -exec chmod 755 {} \;

5. Linux startup script (start.sh)

#!/bin/bash
set -euo pipefail
cd "$(dirname "$0")"

PORT=27015
MAP=de_dust2_csco
MAXPLAYERS=16
GSLT=GSLT_KEY

STEAMCLIENT="$HOME/.steam/sdk32/steamclient.so"

export LD_LIBRARY_PATH=".:bin:csco/csgo/bin"
export LD_PRELOAD="$STEAMCLIENT"

exec setarch i386 -R env \
./srcds_run \
-game csco/csgo \
-console -usercon \
-port "$PORT" \
+map "$MAP" \
-maxplayers "$MAXPLAYERS" \
+game_type 0 +game_mode 0 \
+sv_setsteamaccount "$GSLT"

Starting the server:

screen -S csco
./start.sh

Classic Offensive Server on Windows (simplest method)

On Windows, the setup is much simpler because the server folder already contains the following file:

srcds.exe

1. Locate srcds.exe

Example path:

C:\Classic_Offensive\srcds.exe

2. Create a shortcut

Right-click → “Create shortcut” → Properties. In the Target field you will see:

"C:\Classic_Offensive\srcds.exe"

3. Add startup parameters

Example for Classic Offensive:

"C:\Classic_Offensive\srcds.exe" -console -game csco/csgo +map de_dust2_csco -port 27015 +maxplayers 16 +sv_setsteamaccount GSLT_KEY

After launching the shortcut, the server starts in a console window without a GUI.


Most Important SRCDS Parameters

  • -console – starts the server without GUI

  • -game – specifies the mod folder (e.g. csco)

  • +map – sets the startup map

  • -port – sets the server port

  • +sv_setsteamaccount – server login token


Most Common Issues

Server does not appear in the server browser

  • Incorrect token

  • Port 27015 blocked

  • No port forwarding configured on the router

Segmentation fault (Linux)

  • Missing i386 libraries

  • Incorrect LD_LIBRARY_PATH

Initialization error

  • Incorrect -game path

  • Invalid folder structure


Linux or Windows – which one should you choose?

  • Windows – simpler setup, good for 1–2 servers

  • Debian – more stable, better for multiple instances and a production environment


Summary

Running a Classic Offensive server is possible on both Debian and Windows. The Windows version is simpler, while Linux provides greater control and stability for long uptime.

If you are planning a network of Classic Offensive servers, it is worth preparing a production environment from the start with dedicated ports and separate instances.

0

Discussion

No comments yet. Be the first to share your thoughts!