Moin zusammen,
in diesem Beitrag zeige ich euch, wie ihr mit LinuxGSM relativ einfach einen eigenen Gameserver unter Linux installieren und verwalten könnt.
Das passende Video dazu findet ihr hier:
Zum Video auf YouTube
Hinweis:
Das Video stammt noch aus der alten Chaotenhouse-Zeit. Das Projekt läuft inzwischen unter Chaotec weiter.
Was ist LinuxGSM?
LinuxGSM steht für Linux Game Server Managers und ist ein praktisches Kommandozeilen-Tool, mit dem ihr dedizierte Gameserver unter Linux installieren, starten, stoppen, aktualisieren und verwalten könnt.
Der große Vorteil ist, dass man nicht jeden Gameserver komplett manuell per SteamCMD und eigenen Startscripts aufbauen muss. LinuxGSM nimmt einem viele Standardaufgaben ab und stellt für viele Spiele fertige Verwaltungsscripts bereit.
In diesem Tutorial wird beispielhaft ein 7 Days to Die Server eingerichtet. Das Prinzip ist bei anderen Spielen aber sehr ähnlich.
Voraussetzungen
Ihr benötigt:
- einen Linux-Server, zum Beispiel Ubuntu oder Debian
- Zugriff per SSH
- einen Benutzer mit Root- oder sudo-Rechten
- ausreichend Speicherplatz für den jeweiligen Gameserver
- offene Ports in der Firewall beziehungsweise im Router
- grundlegende Linux-Kenntnisse
Im Video wurde ein Ubuntu-Server verwendet und per Terminal administriert.
1. Server aktualisieren
Zuerst sollte das System aktualisiert werden:
apt update && apt upgrade -y
Je nach Distribution und Spiel müssen noch zusätzliche Abhängigkeiten installiert werden. Bei SteamCMD-basierten Spielen kann es außerdem nötig sein, die 32-Bit-Architektur zu aktivieren:
dpkg --add-architecture i386
apt update
Danach können die benötigten Pakete installiert werden:
apt install curl wget file tar bzip2 gzip unzip python3 util-linux ca-certificates binutils bc jq tmux netcat-openbsd lib32gcc-s1 steamcmd -y
Hinweis:
Die benötigten Pakete können je nach Linux-Version und Spiel leicht abweichen. Prüft daher am besten immer zusätzlich die aktuelle LinuxGSM-Seite des jeweiligen Spiels.
2. Eigenen Benutzer für den Gameserver erstellen
Der Gameserver sollte nicht dauerhaft als Root laufen. Deshalb wird ein eigener Benutzer angelegt.
Für 7 Days to Die heißt dieser Benutzer im Beispiel:
adduser sdtdserver
Danach legt ihr ein Passwort fest. Weitere Angaben wie Name, Telefonnummer usw. können einfach mit Enter übersprungen werden.
Anschließend wechselt ihr in den neuen Benutzer:
su - sdtdserver
Ab jetzt arbeitet ihr als Gameserver-Benutzer.
3. Optional: eigenes Verzeichnis für den Server anlegen
Im Video wurde zusätzlich ein eigener Ordner für den Server erstellt:
mkdir 7DaysToDie
cd 7DaysToDie
Das ist nicht zwingend erforderlich, sorgt aber für eine bessere Übersicht, wenn später mehrere Server auf dem System laufen.
4. LinuxGSM herunterladen
Nun wird das LinuxGSM-Script heruntergeladen und ausführbar gemacht:
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh sdtdserver
Dabei steht sdtdserver für den 7 Days to Die Server.
Für andere Spiele muss an dieser Stelle der passende LinuxGSM-Servername verwendet werden, zum Beispiel:
rustserverfür Rustmcserverfür Minecraftvhserverfür Valheimsdtdserverfür 7 Days to Die
5. Gameserver installieren
Nach dem Download wird die eigentliche Installation gestartet:
./sdtdserver install
LinuxGSM führt euch nun durch die Installation. Dabei werden unter anderem folgende Dinge eingerichtet:
- benötigte Ordnerstruktur
- Log-Verzeichnisse
- SteamCMD
- Serverdateien
- Standard-Konfigurationsdateien
- LinuxGSM-Verwaltungsscript
Während der Installation können ein paar Abfragen erscheinen. Diese bestätigt ihr entsprechend mit
Y oder Enter.
Nach erfolgreicher Installation zeigt LinuxGSM die wichtigsten Pfade und Hinweise an.
6. Wichtige Konfigurationsdateien
Nach der Installation findet ihr die Serverdateien ungefähr in folgendem Pfad:
/home/sdtdserver/7DaysToDie/serverfiles/
Die eigentliche 7 Days to Die Konfiguration liegt je nach LinuxGSM-Version beispielsweise hier:
/home/sdtdserver/7DaysToDie/serverfiles/sdtdserver.xml
oder hier:
/home/sdtdserver/7DaysToDie/serverfiles/serverconfig.xml
Die LinuxGSM-Konfiguration liegt ungefähr hier:
/home/sdtdserver/7DaysToDie/lgsm/config-lgsm/sdtdserver/
Sehr hilfreich ist dieser Befehl:
./sdtdserver details
Damit zeigt LinuxGSM wichtige Informationen zum Server an, darunter:
- Status
- IP-Adresse
- Ports
- Serverpfade
- Config-Dateien
- verwendete Startparameter
- Systeminformationen
7. Server starten
Nach der Installation kann der Server gestartet werden:
./sdtdserver start
Wenn alles passt, meldet LinuxGSM, dass der Server gestartet wurde.
8. Server stoppen und neustarten
Server stoppen:
./sdtdserver stop
Server neustarten:
./sdtdserver restart
Status und Details anzeigen:
./sdtdserver details
9. Server-Konsole öffnen
Die Live-Konsole des Servers kann mit folgendem Befehl geöffnet werden:
./sdtdserver console
Wichtig:
Die Konsole nicht einfach mit CTRL + C verlassen, weil das den Server je nach Situation beenden kann.
Stattdessen nutzt ihr:
CTRL + B
danach D
Damit trennt ihr euch von der Konsole, ohne den Server zu stoppen.
10. Server aktualisieren
Gameserver aktualisieren:
./sdtdserver update
LinuxGSM selbst aktualisieren:
./sdtdserver update-lgsm
Update prüfen:
./sdtdserver check-update
11. Backup erstellen
LinuxGSM kann auch Backups erstellen:
./sdtdserver backup
Das ist besonders sinnvoll, bevor ihr größere Änderungen an der Config, an Mods oder an den Serverdateien macht.
12. Server überwachen
Mit dem Monitor-Befehl kann geprüft werden, ob der Gameserver läuft:
./sdtdserver monitor
Optional kann man diesen Befehl später auch per Cronjob regelmäßig ausführen lassen.
Dazu öffnet ihr die Crontab:
crontab -e
Beispiel für eine Prüfung alle 5 Minuten:
*/5 * * * * /home/sdtdserver/7DaysToDie/sdtdserver monitor > /dev/null 2>&1
Wichtig:
Den Pfad müsst ihr natürlich an eure eigene Installation anpassen.
13. Dateien per WinSCP bearbeiten
Im Video wurde am Ende auch gezeigt, wie man mit WinSCP auf die Serverdateien zugreifen kann.
Dafür verbindet ihr euch per SFTP mit eurem Server und navigiert zum Serververzeichnis, zum Beispiel:
/home/sdtdserver/7DaysToDie/serverfiles/
Dort findet ihr unter anderem die Konfigurationsdateien und Spieldateien.
Aus Sicherheitsgründen sollte man nach Möglichkeit nicht dauerhaft mit Root arbeiten, sondern lieber mit dem jeweiligen Gameserver-Benutzer oder einem sauber berechtigten Admin-Benutzer.
14. Firewall und Ports
Damit andere Spieler auf den Server verbinden können, müssen die benötigten Ports freigegeben werden.
Welche Ports benötigt werden, hängt vom jeweiligen Spiel ab. Die beste Übersicht bekommt ihr mit:
./sdtdserver details
Dort zeigt LinuxGSM die relevanten Ports für den Server an.
Wenn ihr UFW verwendet, könnte eine Freigabe beispielhaft so aussehen:
ufw allow 26900/udp
ufw allow 26900/tcp
ufw reload
Achtung:
Die Ports können je nach Spiel und Konfiguration abweichen. Prüft deshalb immer die Ports passend zu eurem Server.
15. Nützliche LinuxGSM-Befehle
Hier noch einmal die wichtigsten Befehle im Überblick:
./sdtdserver install # Server installieren
./sdtdserver start # Server starten
./sdtdserver stop # Server stoppen
./sdtdserver restart # Server neustarten
./sdtdserver details # Serverinformationen anzeigen
./sdtdserver console # Serverkonsole öffnen
./sdtdserver update # Gameserver aktualisieren
./sdtdserver check-update # Auf Updates prüfen
./sdtdserver update-lgsm # LinuxGSM selbst aktualisieren
./sdtdserver backup # Backup erstellen
./sdtdserver monitor # Server überwachen
Bei anderen Games ersetzt ihr sdtdserver einfach durch den passenden Servernamen.
Schnelle Zusammenfassung
Für den schnellen Einstieg reichen im Grunde diese Schritte:
adduser sdtdserver
su - sdtdserver
mkdir 7DaysToDie
cd 7DaysToDie
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh sdtdserver
./sdtdserver install
./sdtdserver start
./sdtdserver details
Danach könnt ihr den Server weiter konfigurieren, Ports freigeben, Mods einrichten und den Server an eure Community anpassen.
Fazit
LinuxGSM ist eine sehr angenehme Möglichkeit, Gameserver unter Linux zu installieren und zu verwalten.
Gerade für Einsteiger ist es deutlich einfacher, als alles komplett manuell einzurichten. Man bekommt eine klare Struktur, einfache Befehle und viele nützliche Funktionen wie Start, Stop, Updates, Backups, Details und Monitoring direkt mitgeliefert.
Viel Spaß beim Einrichten eures eigenen Gameservers!