
Sveiki!
Tāpēc, par visiem pazīstamiem iemesliem vairāk laika jāpavada mājās pie monitora.
Šādā situācijā jāatceras lietas no senākiem laikiem.
Kā jau skaidrs no šīs raksta nosaukuma, runa būs par Synology NAS konfigurēšanu kā spēļu serveri.
Achtung — rakstā ir daudz ekrānšotiju (ekrānšotijas ir klikšķināmas)!
Pirms sākam, šeit ir rīku saraksts, kas mums būs nepieciešams:
Synology NAS — šeit es nepamanīju ierobežojumus, domāju, ka derēs jebkurš, ja vien nav plānu turēt serveri ar 10 tūkstošiem spēlētāju.
Docker — īpašas prasmes nav nepieciešamas, pietiek ar izpratni par darbības principu.
LinuxGSM — par to, kas ir LinuxGSM, var izlasīt oficiālajā tīmekļa vietnē. https://linuxgsm.com.
Pašlaik (2020. gada aprīlis) LinuxGSM ir pieejami 105 spēļu serveri.
Visu sarakstu var apskatīt šeit https://linuxgsm.com/servers.
Steam — spēļu tirdzniecības vieta.
Spēļu serveris LinuxGSM ir integrācija ar SteamCMD, tas nozīmē, ka LinuxGSM spēļu serveri varēs izmantot tikai spēlēm no Steam.
Docker instalēšana Synology NAS
Šajā posmā viss ir vienkārši, pārejiet uz Synology administratora paneli, pēc tam uz "Package centre", atrodiet un instalējiet Docker.
Package centre
Palaižam un redzam aptuveni tādu pašu ainu (man jau ir instalēts šis konteiners).
Konteinera pārvaldība
Tālāk pārejiet uz cilni "Registry", meklējiet "gameservermanagers", izvēlieties attēlu "gameservermanagers/linuxgsm-docker" un nospiediet pogu "Download".
gameservermanagers/linuxgsm-docker
Pēc tam pārejiet uz cilni "Image", gaidiet attēla lejupielādes beigšanos un nospiediet pogu "Launch".
Attēla lejupielāde
Atvērtajā logā pārejiet uz "Advanced Settings", pēc tam uz cilni "Network" un atzīmējiet izvēles rūtiņu "Use the same network as Docker Host".
Pārējās iestatījums, piemēram, "Container Name", mainām pēc saviem ieskatiem.
Container Name — kā jūs varat uzminēt, tas ir konteinera nosaukums, tas vēlāk noderēs. Iesaku to nosaukt kādu vienkāršu, piemēram, "test".
Tālāk nospiediet pogu "Apply" vai "Next" vairākas reizes līdz iestatījumu pabeigšanai.
Advanced Settings
Pārejiet uz cilni "Container" un redziet jauno palaisto (ja nav, palaidiet) konteineru.
Šeit to var apturēt, palaižot, dzēst un veikt citas darbības.
Docker konteinera LinuxGSM konfigurācija
Pirms pieslēgties Synology NAS caur SSH, ir jāaktivizē SSH piekļuve administratora panelī.
Pieslēgšanās caur SSH
Tālāk ir jāizmanto iekšējais IP adrese Synology NAS serveris lai pieslēgtos caur SSH.
Pārejam uz termināli (vai kādu citu analogisku programmu, piemēram, Windows sistēmā tas ir PuTTY) un izmantojam šo komandu:
ssh user_name@IPManā gadījumā tas izskatās šādi
ssh admin@192.168.0.166Synology NAS servera IP adrese
Pēc autorizācijas ir jāizpilda komanda, lai pārietu uz pašu konteineru «test» (lauks «Container Name» Docker iestatījumos) zem lietotāja «root»
sudo docker exec -u 0 -it test bashSavienojums ar Docker
Pirms paša «LinuxGSM» uzstādīšanas jāveic dažas darbības.
Uzstādīsim paroli lietotājam «root»
passwdPēc tam atjaunināsim visus pakotnes
apt update && apt upgrade && apt autoremoveGaida procesa pabeigšanu…
Paku atjaunināšana
Tālāk uzstādīsim nepieciešamās utilītus
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-fullKopš «root» veikt dažādas darbības nav vislabākā ideja, pievienosim jaunu lietotāju «test».
adduser testUn ļausim jaunajam lietotājam izmantot «sudo»
usermod -aG sudo testPārslēdzamies uz jauno lietotāju «test»
su testLinuxGSM uzstādīšana un konfigurācija
Apskatīsim LinuxGSM konfigurācijas piemēru «Counter-Strike», arī pazīstams kā «CS 1.6» https://linuxgsm.com/lgsm/csserver
Pārejiet uz «Counter-Strike» instrukciju lapu linuxgsm.com/lgsm/csserver.
Ciešās sadaļā «Dependencies» kopējam kodu zem «Ubuntu 64-bit».
Raksta brīdī šis kods izskatās šādi:
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
Atkarību uzstādīšana
Uzstādīšanas procesā ir jāpiekrīt «Steam License»:
Steam License
Pārejiet uz «Install» cilni un kopējiet kodu no 2. soļa (1. solis tiek izlaists, lietotājs «test» jau pastāv):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
Gaida lejupielādi:
Lejupielāde
Un sākam uzstādīšanu:
.\/csserver installJa viss noritēja normāli, mēs redzēsim ilgi gaidīto «Install Complete!»
Install Complete!
Uzsākam… un redzam kļūdu «Multiple IP addresses found.»
.\/csserver startMultiple IP addresses found
Tālāk ir skaidri jānorāda serverim, kuru IP izmantot.
Manā gadījumā tas ir:
192.168.0.166Pārejam uz mapi, kuras ceļš tika norādīts paziņojumā kā «location»:
cd /home/test/lgsm/config-lgsm/csserverUn paskatāmies, kādi faili ir šajā mapē:
lsFailu saraksts mapē csserver
Kopējam faila «_default.cfg» saturu failā «csserver.cfg»:
cat _default.cfg >> csserver.cfgUn pārejam uz faila «csserver.cfg» rediģēšanas režīmu:
nano csserver.cfgFaila csserver.cfg rediģēšana
Atrodam rindu:
ip="0.0.0.0"Un nomainām IP adresi, kas tika piedāvāta, manā gadījumā tā ir «192.168.0.166».
Izskatīsies apmēram tā:
ip="192.168.0.166"Nospiežam taustiņu kombināciju:
Ctr + XUn pēc saglabāšanas nospiežam:
YAtgriežamies lietotāja mapē «test»:
cd ~Un atkal mēģinām palaist serveri. Tagad serverim vajadzētu startēt bez problēmām:
.\/csserver startServera palaišana
Lai apskatītu detalizētāku informāciju, izmantosim komandu:
.\/csserver detailsDetālā informācija par serveri
No svarīgiem parametriem jāatzīmē:
- Servera IP: 192.168.0.166:27015
- Interneta IP: xxx.xx.xxx.xx:27015
- Konfigurācijas fails: \/home\/test\/serverfiles\/cstrike\/csserver.cfg
Šajā posmā spēļu serveris jau ir pieejams vietējā tīklā.
IP adreses pāradresēšanas iestatīšana
Spēlēt vietējā tīklā ir labi, bet spēlēt ar draugiem caur internetu — vēl labāk!
Lai pāradresētu IP adresi, ko maršrutētājs saņēmis no pakalpojumu sniedzēja, izmantojam NAT mehānismu.
Tāpat ir vērts atzīmēt, ka vairums pakalpojumu sniedzēju izmanto dinamiskas IP adreses saviem klientiem.
Lai darbība būtu ērta un stabila, vēlams iegūt statisku IP adresi.
Tā kā man ir maršrutētājs «TP-Link Archer C60», tad sniegšu pāradresēšanas iestatīšanas piemēru, kā tas ir ieviests manā maršrutētājā.
Citiem maršrutētājiem, domāju, pāradresēšanas iestatījumi ir līdzīgi.
Te viss ir vienkārši — ir jānorāda pāradresēšana no ārējās IP adreses uz iekšējo IP adresi serverim diviem portiem:
- 27015
- 27005
Manā maršrutētāja admin panelī tas izskatās tā
Maršrutētāja admin panelis
Un viss, pēc maršrutētāja iestatījumu saglabāšanas, spēļu serveris būs pieejams tīklā caur ārējo IP adresi norādītajiem portiem!
Papildu iestatījumi CS 1.6 piemēram
Pamatojoties uz CS 1.6, gribētu sniegt dažus noderīgus padomus.
Ir divi faili servera konfigurācijai
Pirmais atrodas šeit:
~\/lgsm\/config-lgsm\/csserver\/csserver.cfgOtrais atrodas šeit:
~\/serverfiles\/cstrike\/csserver.cfgPirmajā failā ir kopējie iestatījumi, piemēram, IP adrese, karte servera sākuma ielādei utt.
Otrajā failā ir iestatījumi komandu veikšanai caur «Counter-Strike» konsoli, piemēram, «rcon_password» vai «sv_password».
Otrajā failā iesaku iestatīt paroli servera pievienošanai caur CVar «sv_password» un uzstādīt paroli administrēšanai konsolē ar CVar «rcon_password».
Visu CVar mainīgo sarakstu var apskatīt šeit http://txdv.github.io/cstrike-cvarlist
Tāpat var nākties uzstādīt papildu kartes, piemēram, «fy_pool_day».
Visas kartes CS 1.6 atrodas šeit:
~\/serverfiles\/cstrike\/mapsAtrodiet vajadzīgo karti, ielādējiet to tieši serverī (ja tas ir arhīvā, izarpakējiet to), pārvietojiet failu ar paplašinājumu «.bsp» mapē ar failiem «~\/serverfiles\/cstrike\/maps» un restartējiet serveri.
~.\/csserver restartStarp citu, visas pieejamās servera komandas var apskatīt šādi
~.\/csserver
Rezultāts
Es esmu apmierināts ar rezultātu. Viss darbojas ātri un nerada aizkavi.
LinuxGSM ir daudz papildu iestatījumu, piemēram, integrācija ar Telegram un Slack paziņojumiem, bet daži funkcionalitāte vēl prasa uzlabošanu.
Kopumā, iesaku izmantot!
Avoti
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
Kā pamanīja centralhardware ne visi Synology NAS var izmantot Docker, šeit ir ierīču saraksts, kas var https://www.synology.com/ru-ru/dsm/packages/Docker.
Avots: habr.com



