Transformarea Synology NAS într-un server de jocuri

Transformarea Synology NAS într-un server de jocuri

Salut!

Așa că, din motive bine cunoscute, trebuie să petrec mai mult timp acasă în fața monitorului.
În această situație, trebuie să-mi amintesc lucruri din vremuri îndepărtate.

După cum este clar din titlul acestui articol, vom discuta despre configurarea Synology NAS ca server de jocuri.

Atenție — articolul conține multe capturi de ecran (capturile de ecran sunt clicabile)!

Înainte de a începe, iată lista de instrumente de care vom avea nevoie:

Synology NAS — aici nu văd restricții, cred că oricare va fi potrivit, dacă nu aveți planuri de a susține un server cu 10k de jucători.

Docker — nu sunt necesare abilități speciale, este suficient să înțelegi în termeni generali principiul de funcționare.

LinuxGSM — despre ce reprezintă LinuxGSM puteți citi pe site-ul oficial. https://linuxgsm.com.

În prezent (aprilie 2020) sunt disponibile 105 servere de jocuri pe LinuxGSM.
Întreaga listă poate fi vizualizată aici https://linuxgsm.com/servers.

Steam — un magazin cu jocuri.

Server de jocuri LinuxGSM are integrare cu SteamCMD, adică serverul de jocuri LinuxGSM poate fi folosit doar pentru jocuri din Steam.

Instalarea Docker pe Synology NAS

În această etapă este simplu, ne ducem în panoul de administrare Synology, apoi în „Package centre”, găsim și instalăm Docker.

Package centreTransformarea Synology NAS într-un server de jocuri
Îl lansăm și vedem aproximativ această imagine (eu am deja acest container instalat)

Gestionarea containeruluiTransformarea Synology NAS într-un server de jocuri
Apoi, mergem la tab-ul „Registry”, căutăm „gameservermanagers”, alegem imaginea „gameservermanagers/linuxgsm-docker” și dăm click pe butonul „Download”.

gameservermanagers/linuxgsm-dockerTransformarea Synology NAS într-un server de jocuri
După aceea, mergem la tab-ul „Image”, așteptăm finalizarea descărcării imaginii și dăm click pe butonul „Launch”.

Descărcarea imaginiiTransformarea Synology NAS într-un server de jocuri
În fereastra care se deschide, trebuie să mergem la „Advanced Settings”, apoi la tab-ul „Network” și să bifăm căsuța „Use the same network as Docker Host”.

Celelalte setări, cum ar fi „Container Name”, le schimbăm la bunul nostru plac.
Numele containerului — după cum vă puteți da seama, este numele containerului, care va fi util mai târziu. Recomand să-l denumiți într-un mod concis, de exemplu „test”.

Apoi, dăm click pe butonul „Apply” sau „Next” de câteva ori până la finalizarea configurării.

Advanced SettingsTransformarea Synology NAS într-un server de jocuri
Mergem la tab-ul „Container” și vedem un nou container pornit (dacă nu, îl pornim).
Aici îl putem opri, porni, șterge și efectua alte acțiuni.

Pornirea containeruluiTransformarea Synology NAS într-un server de jocuri

Configurarea containerului Docker LinuxGSM

Înainte de a vă conecta la Synology NAS prin SSH, trebuie să activați accesul SSH în panoul de administrare.

Conexiune prin SSHTransformarea Synology NAS într-un server de jocuri
Apoi este necesar să folosiți interfața internă Adresă IP Synology NAS server pentru conectare prin SSH.

Accesăm terminalul (sau orice alt echivalent, de exemplu, pe Windows este PuTTY) și folosim următoarea comandă:

ssh user_name@IP

În cazul meu, arată așa

ssh admin@192.168.0.166

Adresă IP a serverului Synology NASTransformarea Synology NAS într-un server de jocuri
După autentificare, trebuie să executăm comanda pentru a accesa containerul "test" (câmpul "Container Name" din setările Docker) sub utilizatorul "root"

sudo docker exec -u 0 -it test bash

Conectare la DockerTransformarea Synology NAS într-un server de jocuri
Înainte de instalarea "LinuxGSM", trebuie să facem câteva acțiuni.

Vom seta o parolă pentru utilizatorul "root"

passwd

Apoi vom actualiza toate pachetele

apt update && apt upgrade && apt autoremove

Așteptăm finalizarea procesului…

Actualizarea pachetelorTransformarea Synology NAS într-un server de jocuri
Apoi vom instala utilitarele necesare

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

Deoarece, sub "root", a efectua diverse acțiuni nu este cea mai bună idee, vom adăuga un nou utilizator "test".

adduser test

Și îi vom permite noului utilizator să folosească "sudo"

usermod -aG sudo test

Ne schimbăm pe noul utilizator "test"

su test

Instalarea utilitarelorTransformarea Synology NAS într-un server de jocuri

Instalarea și configurarea LinuxGSM

Vom analiza un exemplu de configurare LinuxGSM folosind "Counter-Strike", adică "CS 1.6" https://linuxgsm.com/lgsm/csserver

Accesăm pagina de instrucțiuni pentru "Counter-Strike" linuxgsm.com/lgsm/csserver.

În tab-ul "Dependencies", copiem codul de sub "Ubuntu 64-bit".

La momentul redactării acestui articol, acest cod arată astfel:

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

Instalarea dependențelorTransformarea Synology NAS într-un server de jocuri
În timpul instalării, trebuie să acceptăm "Licența Steam":

Licența SteamTransformarea Synology NAS într-un server de jocuri
Accesăm tab-ul "Install" și copiem codul din pasul 2 (sărim pasul 1, utilizatorul "test" există deja):

InstaleazăTransformarea Synology NAS într-un server de jocuri

wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver

Așteptăm descărcarea:

DescărcareTransformarea Synology NAS într-un server de jocuri
Și demarăm instalarea:

./csserver install

Dacă totul a decurs conform planului, vom vedea mesajul dorit "Install Complete!"

Install Complete!Transformarea Synology NAS într-un server de jocuri
Lansăm… și vedem eroarea "Multiple IP addresses found."

./csserver start

Multiple IP addresses foundTransformarea Synology NAS într-un server de jocuri
Mai departe, trebuie să indicăm serverului ce IP să folosească.

În cazul meu, acesta este:

192.168.0.166

Accesăm folderul, calea către care a fost menționată în mesaj ca "location":

cd /home/test/lgsm/config-lgsm/csserver

Și verificăm ce fișiere sunt în acest folder:

ls

Lista fișierelor din folderul csserverTransformarea Synology NAS într-un server de jocuri
Copiem conținutul fișierului „_default.cfg” în fișierul „csserver.cfg”:

cat _default.cfg >> csserver.cfg

Și trecem în modul de editare al fișierului „csserver.cfg”:

nano csserver.cfg

Editarea fișierului csserver.cfgTransformarea Synology NAS într-un server de jocuri
Găsim linia:

ip="0.0.0.0"

Și înlocuim adresa IP propusă, în cazul meu aceasta este „192.168.0.166”.

Va arăta cam așa:

ip="192.168.0.166"

Apăsăm combinația de taste:

Ctr + X

Și după ce ne cere să salvăm, apăsăm:

Y

Ne întoarcem în folderul utilizatorului „test”:

cd ~

Și încercăm din nou să pornim serverul. Acum serverul ar trebui să pornească fără probleme:

./csserver start

Pornirea serveruluiTransformarea Synology NAS într-un server de jocuri
Pentru a vizualiza informații mai detaliate, vom folosi comanda:

.\/csserver details

Informații detaliate despre serverTransformarea Synology NAS într-un server de jocuri
Din parametrii importanți merită menționat:

  • Server IP: 192.168.0.166:27015
  • Internet IP: xxx.xx.xxx.xx:27015
  • Fișier de configurare: \/home\/test\/serverfiles\/cstrike\/csserver.cfg

În acest stadiu, serverul de joc este deja accesibil în rețeaua locală.

Configurarea redirecționării adresei IP

A juca în rețeaua locală este bine, dar a juca cu prietenii peste internet – este mai bine!

Pentru redirecționarea adresei IP obținute de router de la furnizor, folosim mecanismul NAT.

De asemenea, este de menționat că majoritatea furnizorilor folosesc adrese IP dinamice pentru clienții lor.

Pentru comoditate și stabilitate, este preferabil să obținem o adresă IP statică.

Având în vedere că am un router „TP-Link Archer C60”, voi prezenta un exemplu de configurare a redirecționării, așa cum este implementat în routerul meu.

Pentru alte routere, presupun că configurarea redirecționării este similară.

Aici totul este simplu – trebuie să specificăm redirecționarea de la adresa IP externă la adresa IP internă a serverului pentru două porturi:

  • 27015
  • 27005

În panoul de administrare al router-ului meu, arată astfel

Panou de administrare al router-uluiTransformarea Synology NAS într-un server de jocuri
Asta e tot, după salvarea setărilor router-ului, serverul de joc va fi disponibil în rețea la adresa IP externă pentru porturile indicate!

Setări suplimentare pe exemplul CS 1.6

Pe exemplul CS 1.6, aș dori să ofer câteva sfaturi utile.

Există două fișiere pentru configurarea serverului

Primul se află aici:

~\/lgsm\/config-lgsm\/csserver\/csserver.cfg

Al doilea se află aici:

~\/serverfiles\/cstrike\/csserver.cfg

Primul fișier conține setările generale, cum ar fi adresa IP, harta pentru prima încărcare a serverului etc.

Al doilea fișier conține setările comenzilor care pot fi executate prin consola „Counter-Strike”, de exemplu „rcon_password” sau „sv_password”.

În al doilea fișier, recomand să setați o parolă pentru conectarea la server prin CVar „sv_password” și să stabiliți o parolă pentru gestionarea de la consolă a serverului în sine prin CVar „rcon_password”.

Lista tuturor variabilelor CVar poate fi consultată aici http://txdv.github.io/cstrike-cvarlist

Probabil va fi necesar să instalăm hărți suplimentare, de exemplu „fy_pool_day”.

Toate hărțile pentru CS 1.6 se află aici:

~\/serverfiles\/cstrike\/maps

Găsim harta dorită, o încărcăm direct pe server (dacă este într-un arhivă, o dezarhivăm), mutăm fișierul cu extensia „.bsp” în folderul cu fișiere „~\/serverfiles\/cstrike\/maps” și repornim serverul.

~.\/csserver restart

Apropo, toate comenzile disponibile pe server pot fi vizualizate astfel

~.\/csserver

 

Rezultatul

Sunt mulțumit de rezultate. Totul funcționează rapid și nu există lag.

LinuxGSM are multe setări suplimentare, de exemplu, integrarea cu Telegram și Slack pentru notificări, dar unele funcționalități necesită îmbunătățiri.

Per ansamblu, recomand utilizarea!

Surse

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

Așa cum am observat centralhardware nu toate NAS-urile Synology pot rula Docker, iată lista dispozitivelor care pot https://www.synology.com/ru-ru/dsm/packages/Docker.

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster