How to install Steam on Dedicated Server
If you’re looking to set up a game server with CS:GO, Team Fortress 2, or Half Life 2 Deathmatch (oh this one is quite old but popular). You’ll need 2 things: a dedicated server and SteamCMD installed on it. Without this software, you won’t be able to host a game server with the above-mentioned games and if you’re planning to start a cloud gaming service it is also advisable to read through this article.
Usually, it is advised to host your server on Linux OS, due to its stability and security, but we’ll cover the most popular operational systems here. So, starting from the system requirements:
- 5GB of storage space. Since the server does not require the client game to run, it is usually not required to order a server with a video card on board.
- Sufficient network connection. Depending on how many servers you want to run and how many players you want to attract you can calculate the required network output. Usually, it is 64kbps per player in the case of games based on the Source engine. So even 100mbit can be enough. BlueServers is offering from 1 to 10Gbps per port, and unlimited bandwidth so you should not worry about it.
- Make sure that the Source ports of 27015 TCP/UPD and 27020 UDP port is open on your server so that your server will be open to the world. It may vary from game to game so make sure that you refer to the installation guide of the particular game.
Quite a straightforward guide here:
- Create a folder for SteamCMD somewhere on your system dis, like C:/steamcmd There is no need to actually put it in Program Files or anything.
- Download the SteamCMD installer from http://media.steampowered.com/installer/steamcmd.zip
- Extract it via 7Zip or WinRAR to C:/steamcmd
- Launch the software via steamcmd.exe or you can choose the do it from the command prompt: hit WIN+R => CMD => Enter => type without brackets “steamcmd”.
The folks on the net have also released a GUI version of the software called SteamCMD GUI which you can download from https://github.com/DioJoestar/SteamCMD-GUI/
It saves some time for writing commands which is a neat feature.
SteamCMD supports all the popular OS distributives out there, CentOS/RHEL, Debian/Ubuntu, and even ArchLinux. Let’s see how you can install it on Linux:
- First of all, don’t install it under root user account. This is not safe and if your password got compromised you gonna have a bad time.
- Create a user called steam via
- sudo useradd -m steam
sudo passwd steam
- Proceed to the folder where the SteamCMD should be installed
- sudo -u steam -s
- Now to proceed with the installations
sudo apt install steamcmd
yum install steamcmd
And link the steamcmd executable:
sudo ln -s /usr/games/steamcmd /home/steam/steamcmd
Okay, it’s all set now to launch it and connect to your server using SSH, it can be done through Putty or any other suitable utility.
You’re all set to configure a server for your game.
Mac OS X
For those who want to host on ARM-like servers with Mac OS X here is a brief explanation of how to do it.
- First of all open the Terminal and enter:
This creates a directory of SteamCMD in Mac.
- Paste this link and hit Enter to download the software
curl -O http://media.steampowered.com/client/installer/steamcmd_osx.tar.gz
- Unzip the archive to the specified directory
tar -xvzf steamcmd_osx.tar.gz
In order to launch the software type these 2 commands in Terminal:
How to use SteamCMD
How to log in to Steam CMD and why you might need it?
First of all, you can download a lot of servers by staying anonymous by using:
But some servers might ask you that you log in through your steam account, for that use your login:
How to download games via SteamCMD?
The same as previous instructions set up an installation directory with this command:
where <path> is for example Counter-Strike: Global Offensive, it would be:
If you would like to update the CS:GO use these commands
app_update 740 validate
For additional commands and what you can do with your server please refer to the https://developer.valvesoftware.com/wiki Steam guidelines. Thank you for reading this article and have a nice day!Blog