
Hallo!
Nun, aus allen bekannten GrĂŒnden muss man mehr Zeit zu Hause vor dem Monitor verbringen.
Bei diesem Stand der Dinge kommt man nicht umhin, sich an die Ereignisse lÀngst vergangener Tage zu erinnern.
Wie bereits im Titel dieses Artikels klar wird, geht es um die Konfiguration eines Synology NAS als Spieleserver.
Achtung â der Artikel enthĂ€lt viele Screenshots (Screenshots sind klickbar)!
Bevor wir beginnen, hier ist eine Liste der Werkzeuge, die wir benötigen werden:
Synology NAS â hier sehe ich keine EinschrĂ€nkungen, ich denke, jeder wird passen, solange man nicht plant, einen Server fĂŒr 10.000 Spieler zu betreiben.
Docker â besondere Kenntnisse sind nicht erforderlich, es reicht aus, das Prinzip zu verstehen.
LinuxGSM â was LinuxGSM ist, kann auf der offiziellen Website nachgelesen werden https://linuxgsm.com.
Derzeit (April 2020) sind 105 Spieleserver auf LinuxGSM verfĂŒgbar.
Die gesamte Liste kann hier angesehen werden https://linuxgsm.com/servers.
Steam â ein Marktplatz fĂŒr Spiele.
Spieleserver LinuxGSM hat eine Integration mit SteamCMD, das heiĂt, der LinuxGSM-Server kann nur fĂŒr Spiele aus Steam verwendet werden.
Installation von Docker auf dem Synology NAS
In diesem Schritt ist alles einfach, gehen Sie in das Administrationspanel von Synology, dann in das "Paketzentrum", finden Sie Docker und installieren Sie es.
Paketzentrum
Starten Sie es und sehen Sie ein Àhnliches Bild (ich habe diesen Container bereits installiert)
Container verwalten
Weiter gehen wir zur Registerkarte âRegistryâ, geben in die Suche âgameservermanagersâ ein, wĂ€hlen das Image âgameservermanagers/linuxgsm-dockerâ aus und klicken auf die SchaltflĂ€che âHerunterladenâ.
gameservermanagers/linuxgsm-docker
Danach gehen wir zur Registerkarte âImageâ, warten auf den Abschluss des Downloads des Images und klicken auf die SchaltflĂ€che âStartenâ.
Download des Abbilds
Im sich öffnenden Fenster mĂŒssen wir zu âErweiterte Einstellungenâ wechseln, dann zur Registerkarte âNetzwerkâ und das KĂ€stchen âDas gleiche Netzwerk wie der Docker-Host verwendenâ markieren.
Die anderen Einstellungen, wie etwa âContainer Nameâ, Ă€ndern wir nach Belieben.
Container Name â wie nicht schwer zu erraten ist, ist dies der Name des Containers, der spĂ€ter nĂŒtzlich sein wird. Ich empfehle, ihn irgendwie kurz zu halten, zum Beispiel âtestâ.
Danach klicken wir mehrere Male auf die SchaltflĂ€che âĂbernehmenâ oder âWeiterâ, bis die Einrichtung abgeschlossen ist.
Erweiterte Einstellungen
Wir gehen zur Registerkarte âContainerâ und sehen den neuen gestarteten Container (falls nicht, starten wir ihn).
Hier kann er gestoppt, gestartet, gelöscht und andere Aktionen durchgefĂŒhrt werden.
Einrichtung des Docker-Containers LinuxGSM
Bevor Sie sich ĂŒber SSH mit dem Synology NAS verbinden, mĂŒssen Sie den SSH-Zugang im Administrationspanel aktivieren.
Verbindung ĂŒber SSH
Als nĂ€chstes mĂŒssen Sie die interne IP-Adresse Synology NAS Server fĂŒr die Verbindung ĂŒber SSH verwenden.
Wir gehen in das Terminal (oder ein anderes Àhnliches Programm, zum Beispiel unter Windows ist das PuTTY) und verwenden den folgenden Befehl:
ssh Benutzername@IPIn meinem Fall sieht das so aus
ssh admin@192.168.0.166IP-Adresse des Synology NAS-Servers
Nach der Autorisierung mĂŒssen wir den Befehl ausfĂŒhren, um in den Container "test" (das Feld "Container Name" in den Docker-Einstellungen) unter dem Benutzer "root" zu gelangen.
sudo docker exec -u 0 -it test bashVerbindung zu Docker
Vor der Installation von "LinuxGSM" mĂŒssen einige Schritte durchgefĂŒhrt werden.
Wir setzen ein Passwort fĂŒr den Benutzer "root" fest.
passwdDann aktualisieren wir alle Pakete
apt update && apt upgrade && apt autoremoveWir warten, bis der Prozess abgeschlossen istâŠ
Paketaktualisierung
Dann installieren wir die benötigten Utilities
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-fullDa es keine gute Idee ist, verschiedene Aktionen unter "root" auszufĂŒhren, fĂŒgen wir einen neuen Benutzer "test" hinzu.
adduser testUnd erlauben dem neuen Benutzer, "sudo" zu verwenden.
usermod -aG sudo testWir wechseln zu dem neuen Benutzer "test"
su testInstallation und Konfiguration von LinuxGSM
Wir betrachten ein Beispiel fĂŒr die Konfiguration von LinuxGSM am Beispiel von "Counter-Strike", auch bekannt als "CS 1.6". https://linuxgsm.com/lgsm/csserver
Wir gehen zur Anleitungsseite "Counter-Strike" linuxgsm.com/lgsm/csserver.
Im Tab "Dependencies" kopieren wir den Code fĂŒr "Ubuntu 64-bit".
Zum Zeitpunkt des Verfassens des Artikels sieht dieser Code so aus:
sudo dpkg --add-architecture i386; sudo apt update; sudo apt install mailutils postfix curl wget file tar bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux lib32gcc1 libstdc++6 lib32stdc++6 steamcmd
Installation der AbhÀngigkeiten
WĂ€hrend der Installation mĂŒssen wir mit der "Steam-Lizenz" einverstanden sein:
Steam License
Wir gehen zum Tab "Install" und kopieren den Code aus Schritt 2 (Schritt 1 ĂŒberspringen, der Benutzer "test" existiert bereits):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
Wir warten auf den Download:
Download
Und starten die Installation:
./csserver installWenn alles reibungslos ablĂ€uft, sehen wir das ersehnte âInstall Complete!â
Install Complete!
Wir starten⊠und sehen den Fehler âMultiple IP addresses found.â
./csserver startMultiple IP addresses found
Jetzt mĂŒssen wir dem Server ausdrĂŒcklich mitteilen, welche IP er verwenden soll.
In meinem Fall ist das:
192.168.0.166Wir gehen in den Ordner, dessen Pfad in der Nachricht als âlocationâ angegeben war:
cd /home/test/lgsm/config-lgsm/csserverUnd schauen uns an, welche Dateien in diesem Ordner vorhanden sind:
lsDateiliste im Ordner csserver
Wir kopieren den Inhalt der Datei â_default.cfgâ in die Datei âcsserver.cfgâ:
cat _default.cfg >> csserver.cfgUnd wechseln in den Bearbeitungsmodus der Datei âcsserver.cfgâ:
nano csserver.cfgBearbeitung der Datei csserver.cfg
Wir suchen die Zeile:
ip="0.0.0.0"Und ersetzen die vorgeschlagene IP-Adresse, in meinem Fall ist das â192.168.0.166â.
So wird es etwa aussehen:
ip="192.168.0.166"DrĂŒcken Sie die Tastenkombination:
Ctr + XUnd nach der Aufforderung zum Speichern klicken wir auf:
YWir kehren in den Benutzerordner «test» zurĂŒck:
cd ~Und versuchen erneut, den Server zu starten. Jetzt sollte der Server ohne Probleme gestartet werden:
./csserver startServer starten
Um detailliertere Informationen anzuzeigen, verwenden wir den Befehl:
.\/csserver detailsDetaillierte Informationen zu Server
Von wichtigen Parametern sind folgende zu erwÀhnen:
- Server IP: 192.168.0.166:27015
- Internet IP: xxx.xx.xxx.xx:27015
- Konfigurationsdatei: \/home\/test\/serverfiles\/cstrike\/csserver.cfg
In diesem Schritt ist der Spieleserver bereits im lokalen Netzwerk verfĂŒgbar.
IP-Adressweiterleitung einrichten
Im lokalen Netzwerk zu spielen ist gut, aber mit Freunden ĂŒber das Internet zu spielen â das ist besser!
Um die vom Provider zugewiesene IP-Adresse weiterzuleiten, verwenden wir den NAT-Mechanismus.
Es ist auch erwĂ€hnenswert, dass die meisten Anbieter dynamische IP-Adressen fĂŒr ihre Kunden verwenden.
Zur Bequemlichkeit und StabilitĂ€t des Betriebs ist es wĂŒnschenswert, eine statische IP-Adresse zu erhalten.
Da ich einen Router âTP-Link Archer C60â habe, gebe ich ein Beispiel fĂŒr die Einrichtung der Weiterleitung an, wie sie in meinem Router umgesetzt ist.
FĂŒr andere Router gehe ich davon aus, dass die Einrichtung der Weiterleitung Ă€hnlich gestaltet ist.
Hier ist alles einfach â Sie mĂŒssen die Weiterleitung von der externen IP-Adresse auf die interne IP-Adresse des Servers fĂŒr zwei Ports angeben:
- 27015
- 27005
In der AdministrationsoberflÀche meines Routers sieht das so aus
Admin-OberflÀche des Routers
Das ist alles, nachdem die Einstellungen des Routers gespeichert wurden, wird der Spieleserver im Netzwerk ĂŒber die externe IP-Adresse fĂŒr die angegebenen Ports verfĂŒgbar sein!
ZusÀtzliche Einstellungen am Beispiel von CS 1.6
Am Beispiel von CS 1.6 möchte ich einige nĂŒtzliche Tipps geben.
Es gibt zwei Dateien zur Serverkonfiguration
Die erste befindet sich hier:
~\/lgsm\/config-lgsm\/csserver\/csserver.cfgDie zweite befindet sich hier:
~\/serverfiles\/cstrike\/csserver.cfgDie erste Datei enthĂ€lt allgemeine Einstellungen wie die IP-Adresse, die Karte fĂŒr den ersten Serverstart usw.
Die zweite Datei enthĂ€lt die Einstellungen fĂŒr Befehle, die ĂŒber die âCounter-Strikeâ-Konsole ausgefĂŒhrt werden können, z.B. ârcon_passwordâ oder âsv_passwordâ.
In der zweiten Datei empfehle ich, ein Passwort fĂŒr die Verbindung zum Server ĂŒber CVar âsv_passwordâ festzulegen und ein Passwort zur Steuerung des Servers ĂŒber die Konsole mit CVar ârcon_passwordâ festzulegen.
Die Liste aller CVar-Variablen finden Sie hier http://txdv.github.io/cstrike-cvarlist
Es wird wahrscheinlich auch notwendig sein, zusĂ€tzliche Karten zu installieren, wie z.B. âfy_pool_dayâ.
Alle Karten fĂŒr CS 1.6 befinden sich hier:
~\/serverfiles\/cstrike\/mapsSuchen Sie die benötigte Karte, laden Sie sie direkt auf den Server (falls sie im Archiv ist, entpacken Sie sie), verschieben Sie die Datei mit der Erweiterung â.bspâ in den Ordner mit den Dateien â~\/serverfiles\/cstrike\/mapsâ und starten Sie den Server neu.
~.\/csserver restartĂbrigens können Sie alle verfĂŒgbaren Serverbefehle so anzeigen:
~.\/csserverÂ
Fazit
Ich bin mit dem Ergebnis zufrieden. Alles lÀuft schnell und ohne Lags.
LinuxGSM bietet viele zusĂ€tzliche Einstellungen, wie zum Beispiel die Integration mit Telegram und Slack fĂŒr Benachrichtigungen, aber einige Funktionen mĂŒssen noch ĂŒberarbeitet werden.
Insgesamt empfehle ich es zur Nutzung!
Quellen
https://linuxgsm.com
https://docs.linuxgsm.com
https://digitalboxweb.wordpress.com/2019/09/02/serveur-counter-strike-go-sur-nas-synology
https://medium.com/@konpat/how-to-host-a-counter-strike-1-6-game-on-linux-full-tutorial-a25f20ff1149
http://txdv.github.io/cstrike-cvarlist
UPD
Wie ich festgestellt habe centralhardware können nicht alle Synology NAS in Docker verwendet werden, hier ist eine Liste der GerÀte, die es können https://www.synology.com/ru-ru/dsm/packages/Docker.
Quelle: habr.com



