Setting up Counter-Strike: Source on Debian

In this guide, we will be setting up a Counter-Strike: Source game server on Debian 7. These commands were tested on Debian 7, but they should also work on Ubuntu.

Before we get the CS:S files, we need to install a few packages. Log in to the server as root and issue the following commands.

Update the server and installation

If you’re running x64:

dpkg --add-architecture i386
apt-get update
apt-get install -y libc6-i386 lib32gcc1 lib32stdc++6 screen

If you’re running x86:

apt-get update
apt-get install -y screen

If you get errors about “setting locales failed”, then execute the following commands:

export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
dpkg-reconfigure locales

(Full credit goes to Werner Fischer for the locale commands)

When you get to the config screen, press ENTERselect en_US and press ENTER. After that’s done, restart your SSH session.

Adding user

The next step is adding a user for CS:S to run under:

adduser steam

Follow the prompts to set a password for your user. Press ENTER to skip entering user information.

Now start a new SSH session to your server and log in steam with the password specified during the previous step.

Download and install SteamCMD

Our next step is to download steamcmd and extract it:

mkdir ~/steamcmd
cd ~/steamcmd
wget http://media.steampowered.com/client/steamcmd_linux.tar.gz
tar -xf steamcmd_linux.tar.gz
rm steamcmd_linux.tar.gz

We’re finally ready to download the CS:S files! Execute the following command and wait for the files to be downloaded:

./steamcmd.sh +login anonymous +force_install_dir ~/css +app_update 232330 validate +quit

If the download fails, just re-execute the command to restart it. You can also re-execute the command to get any available updates. Once the download is finished, we should add a few basic things to our config file:

cd ~/css/cstrike/cfg
nano server.cfg

This file is your configuration file. I recommend adding:

hostname "Some server name here"
log on
sv_logfile 1

If you want your server to be private, add the following:

sv_password "passwordHere"

There are various resources on other websites for documentation on other variables. Once you’re done editing it, you can save the file by pressing CTRL + X and then Y. After that, it’s time to start the server.

cd ~/css
screen -S css ./srcds_run -game cstrike -console -port 27015 +maxplayers 24 +map cs_office

Congrats! Your CS:S server is now up and running!