CS:GO Server auf Ubuntu 15.04

Da ich nirgendwo eine aktuelle und detaillierte Anleitung fand, einen CS:GO Server aufzusetzen, dachte ich mir ich beschreibe das hier. Allerdings betreibe ich den Server nicht als Dienst, sondern “on Demand” da durch den günstigen vServer meine Ressourcen beschränkt sind. Fangen wir also an:

SteamCMD installieren

The Steam Console Client or SteamCMD is a command-line version of the Steam client.Its primary use is to install and update various dedicated servers available on Steam using a command-line interface.

 

Heißt also kurz: Ein Kommandozeilenprogramm des Steam Clients. Dieses wird benötigt, damit man den Source dedicated Server(srcds) herunterladen kann.
Zuerst brauchen wir die GCC support library:

 

apt-get install lib32gcc1

 

Da dringend davon abgeraten wird, steamcmd und später auch srcds als root auszuführen, erstellen wir einen neuen user, einen ordner für steamcmd und einen ordner, in dem der server später installiert werden soll. Außerdem wechseln wir auf unseren neuen user und navigieren ins steamcmd Verzeichnis.

useradd csgoserver
mkdir /var/steamcmd
mkdir /var/csgoserver
chown csgoserver:root /var/csgoserver
su csgoserver
cd /var/steamcmd

Nun laden wir uns steamcmd herunter und entpacken es:

wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvpzf steamcmd_linux.tar.gz

Quelle: SteamCMD

Srcds herunterladen

Vor einiger Zeit musste man sich mit seinem Steamaccount bei steamcmd einloggen um es benutzen zu können. Man kann jetzt allerdings den user anonymous nutzen.

Steamcmd starten und einloggen:

sudo ./steamcmd.sh

Jetzt sollte sich die Konsole öffnen und folgendermaßen aussehen:

Steam>

Falls es bei “Checking for updates 0%” hängen bleibt, einfach die firewall aus schalten.

login anonymous

Nun sollte eine Bestätigung erscheinen, dass man sich erfolgreich eingeloggt hat.
Als nächstes muss man den Installationsordner festlegen. In unserem Fall /var/csgoserver

force_install_dir /var/csgoserver

(Falls eine Fehlermeldung o.Ä. erscheint, einfach ein weiteres mal ausführen.)

Jede App, die man herunterladen kann, hat seine eigene ID. Steam Application IDs
In unserem Fall 740 für CS:GO dedicated Server. Das “validate” am ende ist notwendig, da man nicht nur updaten möchte.

app_update 740 validate

Jetzt sollte sich srcds selbstständig installieren.

Quelle: CS:GO Dedicated Server

Server konfigurieren

Wenn die Installation abgeschlossen ist, starten wir ersteinmal den Server.

cd /var/csgoserver
./srcds_run

Mit STRG+C ersteinmal beenden, weil wir nun einige Einstellungen vornehmen müssen.
Der Server würde so wie er jetzt ist, nur im localen Netz funktionieren, da man sich zuerst ein Token generieren lassen muss, sodass der Server mit einem Steamaccount verknüpft ist. Der Account muss folgendefolgende Voraussetzungen erfüllen:

  • CS:GO muss gekauft und vorhanden sein
  • Keine aktiven Auschließungen
  • Telefonnummer muss eingetragen und verifiziert sein (zB. SMS-Verfizierung)

 
Token erstellen
WICHTIG:
Wenn ihr das Token erstellt, müsst ihr die ID 730 benutzen.

Wenn ihr das Token habt, erstellt ihr eine server.cfg im cfg Verzeichnis.

nano /var/csgoserver/csgo/cfg/server.cfg

Dort tragt ihr folgendes ein:

server.cfg:

sv_setsteamaccount *hier token einfügen*
hostname "Beispielserver Moledu.de "
sv_timeout 60
rcon_password "pass"
mp_autoteambalance 0
mp_limitteams 2

Der Server läuft auf port 27015 UDP/TCP, allerdings müssen einige mehr Ports geöffnet werden, da (warum auch immer) es sonst nicht funktioniert.

Wenn ihr iptables nutzt, müssen folgende Regeln gesetzt werden:

iptables -A INPUT -p udp -m udp --sport 27000:27030 --dport 1025:65355 -j ACCEPT
iptables -A INPUT -p udp -m udp --sport 4380 --dport 1025:65355 -j ACCEPT
iptables -A INPUT -p tcp --dport 27015-27018 -j ACCEPT

Nun könnt ihr eine shell datei irgendwo erstellen, die den Server als user csgoserver startet. Dort tragt ihr dann folgendes ein:

#!/bin/sh

su -c "/var/csgoserver/srcds_run -game csgo -console -usercon +game_type 0 +game_mode 1 +mapgroup mg_active -port 27015  -steamport 27018 -tickrate 128" /bin/sh csgoserver

Das offene Fenster könnt ihr dann mit STRG+A D detatchen. Dazu braucht ihr allerdings “screen”. Zum attatchen einfach screen -r eingeben.

Genauere Infos zu gamemodes, tickrate usw könnt ihr hier nachlesen:
Klick
Fertig 🙂

Viel Spaß beim spielen.

Moledu

Leave a Comment

Your email address will not be published. Required fields are marked *

5 + 5 =