How to setup Classic Offensive Server.
This is a short guide(notes) to load up a classic offensive server on linux.
required software/hardware.
- dedicated hardware (a 5 year old laptop only running csco server at home is better then shared vps, don't use vm/shared vps)
- internet cable (wifi for testing or debug only)
- a linux distro (literally anything) and this software:
- rlwrap
- ssh/rsync
- your text edior (vim)
- tmux or screen (optional, but kinda not)
From this point I will asume you have a basic linux install with sudo access
setup linux
We want to create a cstrike user to do everything under to minimize attack surface.
deb:
arch:
then we
We go back to our regular user for sudo commands
optional linux setup
- Use fish as default shell. download fish package first and then do `chsh -s /usr/bin/fish`
- Setup tailscale for easy dns and setup sshkeys. Download tailscale, do `sudo tailscale up --ssh --accept-dns`
- Setup firewall. Not needed but peace of mind if never done linux before. If no firewall use ufw else look it up. Download ufw package, then do
download classic offensive to machine
either torrent, rsync your local install to the box, or download the zip to the machine,
use leak torrent
use rsync
unofficial cscowebsite download -
unpack zip on linux
Setup csco
run.sh
The default srcds_run script is hard to modify so we use a small wrapper script
The reason is that using rlwrap makes using the console a lot nicer when running the server
default map
If you want to change the default map you can change the DEFAULT_MAP var. It can be done with `sed 's/DEFAULT_MAP="de_dust2_csco"/DEFAULT_MAP="awp_india_csco"/' srcds_run` or text edior
server config file
csco does not have any default server.cfg so I needed to write my own.
To make bots not appear at beginning of game
Setup sv_setsteamaccount
https://steamcommunity.com/dev/managegameservers
Login to steam
Use 730 as the appid. Comment does not matter.
Open csgo/cfg/server.cfg file and edit `sv_setsteamaccount <GAME_LOGIN_TOKEN>` line
Use tmux (optional)
A quick guide to using tmux. It will make you be able to close the console/ssh connection
start tmux with `tmux`
you can reconnect to tmux with `tmux a`
tmux uses prefix. Ctrl+b by default. Press Ctrl+b, then release Ctrl+b, then press the action you wanna do.
I only really use:
- `Ctrl+b c` for create
- `Ctrl+b n` for next
- `Ctrl+b x` for close
- `Ctrl+b [` for scroll, q for back to line editing
- `Ctrl+b ?` for all keybindings
Open ports
QUICK
Open port 27015 udp and tcp
Open port 27005 udp
Guided
use to see the default gateway.
Open the IP in a webbrowser. The IP is your router. Login to your router and look for either "NAT" or "Port-Forwarding".
use to see machine's local ip
Open port 27015 udp and tcp
Open port 27005 udp
launch server
just do ./run.sh
tips
change cl_freezetime 6 (default 15) when few players in server.
Changelog:
Created Mon 9 Jun 05:21:37 CEST 2025