How To Host Counter-Strike: Global Offensive Server on Ubuntu

Sohail
Sohail

Table of Contents

Counter-Strike: Global Offensive, popularly known as CS: GO, is one of the most popular games. Released in 1999, the game involves two teams where the Terrorist team tries to plant explosives whereas the Counter-Terrorists team tries to prevent it.

After nearly 21 years of its launch, the game still has millions of active players worldwide. According to Statista, CS: GO had 24 million active users in February 2020. The game is also played in eSports, where professional CS: GO teams such as Cloud9, G2, and NaVi take part to win the trophy.

So it’s not just a game but can also be a professional if you’re good at it. There are hundreds of streamers on Twitch who have a large number of subscribers.

CS: GO Servers

CS: GO is an online competitive game. It’s played between two teams, and both teams need to be connected to the game’s servers to play it.

Official servers

Counter-Strike’s official servers are hosted by Valve, the company behind the game. These official servers have a set of rules that every player must obey. But that’s not fun. Right? Well, there are community servers.

Community servers

Individuals host community servers. Any community server can be set up to play official competitive matches or custom games entirely designed by the community member(s). The host can set their own set of rules to make it more fun for their community.

In this article, I will walk you through how to set up a CS: GO server. A place where your friends can have more fun without so many restrictions or rules.

How to host CS: GO server?

Make a CS: GO Server

Prerequisites

  • Fresh Ubuntu (another) installation
  • Steam account (Not vac banned or restricted)

In this article, I am using Ubuntu 20.04 LTS. I have a steam account that’s not banned or restricted. So I am good to go now.

For a great gaming experience, make sure your gaming server is close to your location. Now ssh into your server and start the setup.

Step 1. Update operating system

sudo apt update

Step 2. Create a new user

For security purposes, we will not be using root to set up our gaming server. We can create a new user account and grant it privileges to perform the required actions.

adduser username

Note

Replace username with the username you wish you create

Next, add the user to the sudo group to perform administrative tasks.

usermod -aG sudo username

Now login to the newly created user. You can log in using ssh or switch using right from the command line –

login username

It’ll ask the user’s password. Enter the password to continue.

Now we’ll install SteamCMD, a command-line tool to set up and manage our CS: GO server.

Step 3. Install SteamCMD

Install Dependencies

sudo apt install lib32gcc1 lib32stdc++6

Make sure to install the above dependencies before SteamCMD.

mkdir steamcmd && cd steamcmd

Now download SteamCMD.

curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -

The above command will download the archive of SteamCMD files & extract them. To run the Steam command line, execute the steamcmd.sh file.

./steamcmd.sh

It will log you into the steam command line. From here, we can use commands to make the connection between the steam and our server. Once our server is authorized, we can open our server to the rest of the world.

First login using your steam account. Do not get confused with the server’s username.

login steam_username

Once authenticated, you are ready to install CS: GO server.

If needed, you can change the server’s installation directory using force_install_dir command.

force_install_dir /path/to/csgo-server

Finally, install the CS: GO server.

app_update 740 validate

The installation will take some time. It’ll download the server and validate all the files.

Once done, you can quit the command line using quit command.

And that’s almost it! If you want to play the game on LAN, we’re done here. The following command will launch a casual game in de_dust2 map.

/path_to_csgo_installation/srcds_run -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_active +map de_dust2

Step 4. Make a public CS: GO server

As I said, we’re almost done here. We installed and started our first CS: GO match in the last step, but it was only meant to play on a LAN network. To make this server public, we need to gain a Steam Game Server Login Token or GSLT.

Open the web browser and log in to your steam account. Now visit Steam game server account management.

Here we can create a game server account. Enter the app ID of the game (730 for CS: GO) and Memo to create a token. Copy the token and move to the next step.

Create a game server account
Create a game server account

Now run the same command that we ran to start the server with an additional option +sv_setsteamaccount and token.

/path_to_csgo/srcds_run -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_active +map de_mirage +sv_setsteamaccount token

Note

In the above command, replace the token with the token created above in step 4.

That’s it! If every step was performed correctly, the server should start a casual game on the de_mirage map, but this time, the game can be joined by anyone with the server’s IP address.

Open the CS: GO game, open console, and type the following command to join this server –

connect ip_address:port
GamesLinux TutorialsUncategorizedhow-to