A Synology NAS átalakítása játék szerverré

A Synology NAS átalakítása játék szerverré

Ü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 centreA Synology NAS átalakítása játék szerverré
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éseA Synology NAS átalakítása játék szerverré
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-dockerA Synology NAS átalakítása játék szerverré
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éseA Synology NAS átalakítása játék szerverré
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ásokA Synology NAS átalakítása játék szerverré
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.

Konténer indításaA Synology NAS átalakítása játék szerverré

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ásA Synology NAS átalakítása játék szerverré
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@IP

Az én esetemben ez így néz ki

ssh admin@192.168.0.166

A Synology NAS szerver IP címeA Synology NAS átalakítása játék szerverré
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 bash

Csatlakozás a DockerhezA Synology NAS átalakítása játék szerverré
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

passwd

Ezután frissítsük az összes csomagot

apt update && apt upgrade && apt autoremove

Várjuk meg a folyamat befejezését...

Csomagok frissítéseA Synology NAS átalakítása játék szerverré
Ezután telepítsük a szükséges segédprogramokat

apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-full

Mivel 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 test

Váltsunk az új "test" felhasználóra

su test

Segédprogramok telepítéseA Synology NAS átalakítása játék szerverré

A 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éseA Synology NAS átalakítása játék szerverré
A telepítés során el kell fogadni a "Steam License":

Steam LicenseA Synology NAS átalakítása játék szerverré
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):

TelepítésA Synology NAS átalakítása játék szerverré

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ésA Synology NAS átalakítása játék szerverré
És indítsuk el a telepítést:

./csserver install

Ha minden rendben zajlott, látni fogjuk a kívánt "Install Complete!" üzenetet

Install Complete!A Synology NAS átalakítása játék szerverré
Indítjuk a… és hibát látunk: "Multiple IP addresses found."

./csserver start

Multiple IP addresses foundA Synology NAS átalakítása játék szerverré
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.166

Lé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:

ls

A fájlok listája a csserver mappábanA Synology NAS átalakítása játék szerverré
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.cfg

A csserver.cfg fájl szerkesztéseA Synology NAS átalakítása játék szerverré
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 + X

Majd a mentés javaslata után kattintsunk:

Y

Visszaté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 start

A szerver indításaA Synology NAS átalakítása játék szerverré
Részletesebb információk megtekintéséhez használjuk a parancsot:

./csserver details

Részletes információ a szerverenA Synology NAS átalakítása játék szerverré
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 panelA Synology NAS átalakítása játék szerverré
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.cfg

A második itt található:

~/serverfiles/cstrike/csserver.cfg

Az 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\/maps

Keressü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 restart

Egyé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

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster