Launch a Counter Strike: Global Offensive (CS:GO) server on Ubuntu 14.04
Updated by Linode Contributed by Sam Mauldin
DeprecatedThis guide has been deprecated and is no longer being maintained.Please refer to the updated version of this guide.
Dedicated CPU instances are available!Linode's Dedicated CPU instances are ideal for CPU-intensive workloads like those discussed in this guide. To learn more about Dedicated CPU, read our blog post. To upgrade an existing Linode to a Dedicated CPU instance, review the Resizing a Linode guide.
Counter Strike: Global Offensive (CS:GO) is a first-person shooter by Valve. Hosting your own server gives you full control over your game and game modes, so you can play the exact flavor of CS:GO you want. This guide contains instructions on how to download the dedicated server and launch the game server.
Before You Begin
You will need a Steam account and a copy of Counter Strike: Global Offensive. A game server token is required to host a public CS:GO server. Without the token, client connections are restricted to the LAN only.
Complete our guide: Install SteamCMD for a Steam Game Server. This will get SteamCMD installed and running on your Linode and this guide will pick up where the SteamCMD page leaves off.
NoteThis guide is written for a non-root user. Commands that require elevated privileges are prefixed withsudo
. If you’re not familiar with thesudo
command, you can check our Users and Groups guide.
Prerequisites for Counter-Strike: Global Offensive
From the SteamCMD guide, one additional step is needed specifically for CS:GO.
Replace a firewall rule to slightly extend the port range available to the game. This command assumes that you have only the iptables rules in place from the SteamCMD guide:
sudo iptables -R INPUT 5 -p udp -m udp --sport 26900:27030 --dport 1025:65355 -j ACCEPT
Install Counter Strike: Global Offense
Be sure you are in the directory
~/Steam
, then access theSteam>
prompt.cd ~/Steam && ./steamcmd.sh
From the SteamCMD prompt, login anonymously:
login anonymous
Or log in with your Steam username:
login example_user
Install CS:GO to the
Steam
user’s home directory:force_install_dir ./csgo-ds app_update 740 validate
This can take some time. If the download looks as if it has frozen, be patient. Once the download is complete, you should see this output:
Success! App '740' fully installed. Steam>
Exit SteamCMD.
quit
Note
To update CS:GO, run the above 4 commands again.
Game Server Login Token
CS:GO requires a server token unless you want to limit players to only clients connecting from within the server’s LAN. This requires having a Steam account and owning CS:GO. See Valve’s CS:GO wiki for more info on the GSLT.
Configure the Server
Create a file called
server.cfg
using your preferred text editor. Choose a hostname and a unique RCON password that you don’t use elsewhere.- ~/Steam/csgo-ds/csgo/cfg/server.cfg
-
1 2 3 4 5 6 7 8
hostname "server_hostname" sv_password "server_password" sv_timeout 60 rcon_password "rcon_password" mp_autoteambalance 1 mp_limitteams 1 writeid writeip
For an extensive list of
server.cfg
options, see this page.Create a startup script for CS:GO with the contents given below. Be sure to replace
YOUR_GSLT
in the script’s command with your game server login token.- ~/startcsgo.sh
-
1 2 3 4
#!/bin/sh cd ./Steam/csgo-ds screen -S "Counter-Strike: Global Offensive Server" ./srcds_run -game csgo -usercon +game_type 0 +game_mode 1 +mapgroup mg_bomb +map de_dust2 +sv_setsteamaccount YOUR_GSLT -net_port_try 1
When run, the script will change directories to
~/Steam/csgo-ds
and execute a Dust2 server in competitive game mode in a Screen session. For more startup modes and game options, see Valve’s CS:GO wiki.Make the script executable:
chmod +x ~/startcsgo.sh
Start the Server
Now that your server is installed and configured, it can be launched by running the
startcsgo.sh
script from yoursteam
user’s home directory.cd ~/ && ./startcsgo.sh
Caution
From this point, do not press the Control+C keys while in the console unless you want to stop CS:GO.To detach from the screen session running the server console, press these two key combinations in succession:
Control+A
Control+DTo bring the console back, type the following command:
screen -r
To stop the server, bring back the CS:GO console and press CONTROL + C.
Join the Game
Launch Counter-Strike: Global Offensive.
Once launched, go to Play and click Browse Community Servers.
Click on the Favorites tab and then click Add a Server at the bottom.
Type in the IP address of your Linode and click Add this address to favorites.
You’ll see your new Counter-Strike: Global Offensive server. Click Connect at the bottom right and start fragging away.
Game Settings
Game Modes and Types
You can change the game type and mode options to start different types of servers:
Mode game_mode game_type
Classic Casual 0 0
Classic Competitive 0 1
Arms Race 1 0
Demolition 1 1
These settings are changed in the launch command.
RCON
When logged into the server, you can open the RCON console with the backtick button (`
), or your mapped key. To log in type rcon_password
followed by your password. For more information regarding RCON, click here.
More Information
You may wish to consult the following resources for additional information on this topic. While these are provided in the hope that they will be useful, please note that we cannot vouch for the accuracy or timeliness of externally hosted materials.
Join our Community
Find answers, ask questions, and help others.
This guide is published under a CC BY-ND 4.0 license.