Unraid Dedicated Server Hosting for CounterStrike:Global Offensive

Please read our disclaimer https://docs.ibracorp.io/#disclaimer.

Prerequisites

Minimum requirements for 24 players.

  • An HDD, SSD or NVMe cache or dedicated drive with at least 35 GB’s of free space

  • 4+ CPU Cores (2.0GHz+)

  • 6 GB of RAM

Unraid Docker Template

CSGO / ich777 / GameServers

Installation

This guide assumes you have already installed the Community Apps plugin for Unraid and know how to port forward on your router.

Create Steam Token

Head over to https://steamcommunity.com/dev/managegameservers, log in to your Steam account and create a token for your server like this:

Install CSGO

Download and install ich777's CSGO container from the community app's store.

As App ID enter the GAME_ID from the template, in this case 740 and as Memo simply enter so that you can identify which Token is for which server, in this case CSGO

Copy the token that you've created and append it like “+sv_setsteamaccount YOURTOKEN” to the GAME_PARAMS in the template:

Done, click “Apply” and let the container install. Wait several minutes before configuring the serve, keep an eye on the logs, the download can take very long depending on your download speed.

Now that you have waited several minutes for the game to download, you should be able to see it on your local network by going to the Steam Server Browser (View ⇒ Servers ⇒ LAN):

Port Forwarding

Now that you have completed everything above, you will now need to forward the following ports from your WAN IP to your server, so friends can join.

  • 27015 UDP - GamePort

  • 27015 TCP - RCON (optional)

Modifying your server

Always stop the container before editing!

The game files will be located in: /mnt/user/appdata/cstrikego The maps are located in: /mnt/user/appdata/cstrikego/csgo/maps The map list file is located in: /mnt/user/appdata/cstrikego/csgo The resources are located in: /mnt/user/appdata/cstrikego/csgo/resources The configuration files will be located in: /mnt/user/appdata/cstrikego/csgo/cfg

This is a preconfigured server.cfg that is meant to go into /mnt/user/appdata/cstrikego/csgo/cfg/ (restart the server after putting it in the appropriate directory)

Adding custom maps

In this example, we are going to add cs_waterfront from here to our server:

  1. Download and extract the *.bsp (actual map), *.nav (file for Bots) and *.jpg files from the archive.

    • If the *.nav or *.jpg files are missing in the archive, don't worry, the crucial file is the *.bsp file

    • It also may be possible that a resource's folder is included in the archive, if so simply extract the resources to the resource's folder from your game

  2. Go to your maps folder and place the extracted files there

  3. Now to your maplist.txt file and enter the name from the downloaded map without the file extension, in this case we add cs_waterfront, save and close the file

  4. Start the container

MetaMod & Sourcemod

  1. Download SourceMod from here (click on Linux)

  2. Extract the contents from the downloaded archive directly into /mnt/user/appdata/cstrikego/csgo

  3. Download MetaMod from here (click on Linux)

  4. Extract the contents from the downloaded archive directly into /mnt/user/appdata/cstrikego/csgo

  5. Got to this site here, select “Counter-Strike: Global Offensive” from the dropdown and click on “Generate metamod.vdf”

  6. Navigate to the folder /mnt/user/appdata/cstrikego/csgo/addons and replace the metamod.vdf file with the one that you've downloaded

To ensure that SourceMod and MetaMod is working, you can RCON into it and issue the command “meta version” and “sm version” – this should give various information about SourceMod and MetaMod.

FAQs

How do I host a private server?

  1. Remove "+sv_setsteamaccount YOURTOKEN" that you've appended to the GAME_PARAMS in Step 3 (don't forget to delete the token that you've created in Step 2 too).

  2. Set "sv_lan 0" to "sv_lan 1" in the server.cfg file

How do I change the server name?

If you want to rename your server name, see the preconfigured server.cfg or create a server.cfg file with the entry: hostname "YOURSERVERNAME" Replace YOURSERVERNAME with your preferred server name (keep in mind, this value should be in double quotes).

How do I change or remove the server password?

By default the server has no password, if you want to create a password see the preconfigured server.cfg or create a server.cfg file with the entry: sv_password "YOURPASSWORD" Replace YOURPASSWORD with your prefered password (keep in mind, this value should be in double quotes).

How do I change or remove the RCON password?

By default, the server has no RCON password, this means that RCON is disabled by default. If you want to create a RCON password, see the preconfigured server.cfg or create a server.cfg file with the entry: rcon_password "YOURRCONPASSWORD" Replace YOURRCONPASSWORD with your prefered RCON password (keep in mind, this value should be in double quotes).

How can I access RCON?

You have two ways of accessing RCON:

  1. Through the game enabling the developer console

  2. Through the plugin RCON from ich777 in the CA App

ATTENTION: The RCON protocol transmits everything unencrypted (including your password!). Therefore, I would recommend not to enable RCON over the internet, rather I would recommend using a VPN or SSH if you want to connect to a foreign server over the internet. If you would like to connect to RCON in your LAN, it should be safe to use.

My server isn’t appearing in the list of servers!

Make sure all the ports are forwarded correctly with the appropriate protocol.

Don't translate Steam ports from for example 27015 to 27016 in the template, this won't work in most cases and for most game servers, to change the port do the following:

Open up the Docker template and delete the port forwarding for UDP - GamePort

Click on “Show more settings …”

Change the value at GAME_PORT to the new port that you want to use (in this example, we are using 27016)

Delete the default UDP Port with the value 27015

Create a new port mapping with the Host and Container port 27016 and also make sure to select UDP and click on “Add” like:

Click on “Apply” to apply the new settings

Here is an overview of what you have to do in the template:

Learn More About Server Settings

Additional Support for the Container

Special Thanks

  • To ich777, the original creator of this guide and the related game server containers.

You can support ich777 right here:

Final Words

We hope you enjoyed this guide. It was copied and edited by our Admin Hawks.

Support Us

Our work sometimes takes months to research and develop. If you want to help support us please consider:

Thank you for being part of our community!

Last updated