
Üdvözlöm!
Így a jól ismert okok miatt több időt kell eltöltenünk otthon a monitor előtt.
Ebben a helyzetben érdemes felidézni a régi időket.
Ahogy a cím is sejteti, a cikk a Synology NAS játék szerverként való beállításáról szól.
Figyelem — a cikkben sok képernyőkép található (a képernyőképek kattinthatók)!
Mielőtt nekiállnánk, itt van a szükséges eszközök listája:
Synology NAS — itt nem látok korlátozásokat, szerintem bármelyik megfelel, ha nincsenek terveink 10k játékosokkal működő szerverrel.
Docker — különösebb készségek nem szükségesek, elég, ha képben vagyunk az alapelvekkel.
LinuxGSM — arról, hogy mi is valójában a LinuxGSM, az hivatalos weboldalon olvasható. https://linuxgsm.com.
Jelenleg (2020 április) a LinuxGSM 105 játék szervert kínál.
A teljes listát itt lehet megtekinteni. https://linuxgsm.com/servers.
Steam — játékkínálat.
Játék szerver A LinuxGSM integrálva van a SteamCMD, ami azt jelenti, hogy a LinuxGSM játék szerver csak Steam játékokhoz használható.
Docker telepítése a Synology NAS-on
Ezen a ponton minden egyszerű, lépjünk be a Synology adminisztrációs paneljébe, majd a „Package centre”-be, keressük meg és telepítsük a Dockert.
Package centre
Indítsuk el, és körülbelül ilyen látvány fogadni (nekem már telepítve van ez a konténer).
Konténer kezelése
Ezután lépjünk a „Registry” fülre, keressük meg a „gameservermanagers” kifejezést, válasszuk a „gameservermanagers/linuxgsm-docker” képet, és kattintsunk a „Letöltés” gombra.
gameservermanagers/linuxgsm-docker
Ezután lépjünk az „Image” fülre, várjuk meg a kép letöltésének befejezését, majd kattintsunk a „Launch” gombra.
Kép letöltése
A megnyíló ablakban lépjünk az „Advanced Settings” részhez, majd a „Network” fülre, és jelöljük be a „Use the same network as Docker Host” lehetőséget.
A többi beállítást, mint például a „Container Name”, saját belátásunk szerint módosíthatjuk.
Container Name — ahogy könnyen kitalálható, ez a konténer neve, később hasznos lesz. Azt javaslom, hogy valami tömör nevet adjunk neki, például lehet „test”.
Ezután kattintsunk az „Apply” vagy „Next” gombra többször, amíg be nem fejezzük a beállítást.
Speciális beállítások
Lépjünk a „Container” fülre, és láthatjuk az újonnan indított konténert (ha nem, indítsuk el).
Itt megállíthatjuk, indíthatjuk, törölhetjük és végezhetünk más műveleteket.
A LinuxGSM Docker konténerének beállítása
Mielőtt csatlakoznánk a Synology NAS-hoz SSH-n keresztül, aktiválni kell az SSH hozzáférést az adminisztrációs panelen.
SSH kapcsolódás
Ezután a belső IP-címet Synology NAS a szerver kell használni az SSH-csatlakozáshoz.
Lépjünk be a terminálba (vagy bármilyen hasonló alkalmazásba, például Windows alatt ez PuTTY) és használjuk az alábbi parancsot:
ssh user_name@IPAz én esetemben ez így néz ki
ssh admin@192.168.0.166A Synology NAS szerver IP címe
A hitelesítés után végre kell hajtani egy parancsot a "test" konténerbe való belépéshez (a "Container Name" mező a Docker beállításokban) a "root" felhasználó alatt
sudo docker exec -u 0 -it test bashCsatlakozás a Dockerhez
A "LinuxGSM" telepítése előtt bizonyos lépéseket el kell végezni.
Állítsuk be a jelszót a "root" felhasználó számára
passwdEzután frissítsük az összes csomagot
apt update && apt upgrade && apt autoremoveVárjuk meg a folyamat befejezését...
Csomagok frissítése
Ezután telepítsük a szükséges segédprogramokat
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-fullMivel a "root" alatt végrehajtani különböző műveleteket nem a legjobb ötlet, adjunk hozzá egy új "test" felhasználót.
adduser testÉs engedélyezzük az új felhasználónak a "sudo" használatát
usermod -aG sudo testVáltsunk az új "test" felhasználóra
su testA LinuxGSM telepítése és beállítása
Nézzük meg egy példa beállítást a LinuxGSM számára a "Counter-Strike", más néven "CS 1.6" példáján keresztül https://linuxgsm.com/lgsm/csserver
Lépjünk a "Counter-Strike" útmutatójának oldalára linuxgsm.com/lgsm/csserver.
A "Dependencies" fül alatt másoljuk a kódot az "Ubuntu 64-bit" alatt.
A cikk írásának időpontjában ez a kód így néz ki:
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
A függőségek telepítése
A telepítés során el kell fogadni a "Steam License":
Steam License
Lépjünk az "Install" fülre, és másoljuk a kódot a 2. lépésből (az 1. lépést kihagyjuk, a "test" felhasználó már létezik):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
Várjunk a letöltés befejeződésére:
Letöltés
És indítsuk el a telepítést:
./csserver installHa minden rendben zajlott, látni fogjuk a kívánt "Install Complete!" üzenetet
Install Complete!
Indítjuk a… és hibát látunk: "Multiple IP addresses found."
./csserver startMultiple IP addresses found
Következő lépésben egyértelműen meg kell mondanunk a szervernek, hogy melyik IP-t használja.
Az én esetemben ez:
192.168.0.166Lépjünk abba a mappába, amelynek elérési útja a "location" üzenetben volt:
cd /home/test/lgsm/config-lgsm/csserverÉs nézzük meg, milyen fájlok találhatók abban a mappában:
lsA fájlok listája a csserver mappában
Másoljuk át a "_default.cfg" fájl tartalmát a "csserver.cfg" fájlba:
cat _default.cfg >> csserver.cfgÉs lépjünk a "csserver.cfg" fájl szerkesztési módjába:
nano csserver.cfgA csserver.cfg fájl szerkesztése
Keressük meg a sort:
ip="0.0.0.0"És cseréljük le az ajánlott IP címet, az én esetemben ez a "192.168.0.166".
Így fog kinézni:
ip="192.168.0.166"Nyomjuk meg a billentyűkombinációt:
Ctrl + XMajd a mentés javaslata után kattintsunk:
YVisszatérünk a felhasználói mappába "test":
cd ~Ismét megpróbáljuk elindítani a szervert. Most a szervernek probléma nélkül kell elindulnia:
./csserver startA szerver indítása
Részletesebb információk megtekintéséhez használjuk a parancsot:
./csserver detailsRészletes információ a szerveren
Fontos paraméterek közül érdemes megemlíteni:
- Szerver IP: 192.168.0.166:27015
- Internet IP: xxx.xx.xxx.xx:27015
- Konfig fájl: /home/test/serverfiles/cstrike/csserver.cfg
Ezen a ponton a játék szerver már elérhető a helyi hálózaton.
IP-cím átirányításának beállítása
Jól játszani a helyi hálózaton, de barátokkal interneten játszani jobb!
Az átirányításhoz, amelyet a router a szolgáltatótól kapott, NAT mechanizmust használunk.
Megjegyzendő, hogy a legtöbb szolgáltató dinamikus IP-címeket használ ügyfelei számára.
A kényelem és a stabil működés érdekében célszerű statikus IP címet szerezni.
Mivel nekem egy "TP-Link Archer C60" routerem van, egy példa beállítást hozok, ahogy az az én routeremben megvalósítva van.
Más routerek esetében feltételezem, hogy az átirányítás beállítása hasonló módon működik.
Itt minden egyszerű — meg kell adni az átirányítást a külső IP címről a belső IP címre a szerverhez két porton:
- 27015
- 27005
A routerem admin paneljén ez így néz ki
Router admin panel
Ennyi, a router beállításainak mentése után a játék szerver elérhető lesz a hálózaton a megadott portokkal rendelkező külső IP címen!
További beállítások a CS 1.6 példáján
A CS 1.6 példáján szeretném megosztani néhány hasznos tippet.
Két fájl van a szerver konfigurálására
Az első itt található:
~/lgsm/config-lgsm/csserver/csserver.cfgA második itt található:
~/serverfiles/cstrike/csserver.cfgAz első fájl tartalmazza az általános beállításokat, mint például az IP cím, a térkép az első szerver indításához stb.
A második fájl tartalmazza a parancsokat, amelyeket a "Counter-Strike" konzolon keresztül lehet végrehajtani, például "rcon_password" vagy "sv_password".
A második fájlban javaslom, hogy állítsunk be jelszót a szerverre való csatlakozáshoz a CVar "sv_password" segítségével, és állítsunk be jelszót a szerver konzolának kezeléséhez a CVar "rcon_password" segítségével.
Az összes CVar változó listáját itt lehet megtekinteni http://txdv.github.io/cstrike-cvarlist
Valószínűleg szükség lesz további térképek telepítésére is, például a "fy_pool_day".
Minden CS 1.6 térkép itt található:
~\/serverfiles\/cstrike\/mapsKeressük meg a szükséges térképet, töltsük fel közvetlenül a szerverre (ha tömörítve van, bontsuk ki), majd helyezzük a " .bsp " kiterjesztésű fájlt a " ~\/serverfiles\/cstrike\/maps " mappába, és indítsuk újra a szervert.
~.\/csserver restartEgyébként az összes elérhető szerverparancsot így nézhetjük meg
~.\/csserver
Result
Elégedett vagyok az eredménnyel. Minden gyorsan működik, és nem akadozik.
A LinuxGSM sok további beállítással rendelkezik, például Telegram és Slack integrációval értesítésekhez, de bizonyos funkciók még fejlesztésre szorulnak.
Összességében ajánlom használatra!
Források
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
Ahogy megjegyezte centralhardware nem minden Synology NAS képes Docker futtatására, itt van az eszközök listája, amelyek képesek https://www.synology.com/ru-ru/dsm/packages/Docker.
Forrás: habr.com



