
Hej!
SÄ, av alla kÀnda skÀl Àr man tvungen att spendera mer tid hemma framför skÀrmen.
I denna situation fÄr man tÀnka tillbaka pÄ tider som var för lÀnge sedan.
Som titeln pÄ denna artikel tydligt visar, kommer vi att diskutera hur man stÀller in en Synology NAS som en spelserver.
Varning â artikeln innehĂ„ller mĂ„nga skĂ€rmdumpar (skĂ€rmdumparna Ă€r klickbara)!
Innan vi börjar, hÀr Àr en lista över verktyg vi kommer behöva:
Synology NAS â hĂ€r ser jag inga begrĂ€nsningar, jag tror att vilken som helst kommer att fungera, sĂ„ lĂ€nge det inte Ă€r planer pĂ„ att hĂ„lla en server med 10 000 spelare.
Docker â inga sĂ€rskilda fĂ€rdigheter krĂ€vs, det rĂ€cker med att ha en grundlĂ€ggande förstĂ„else för hur det fungerar.
LinuxGSM â om vad LinuxGSM Ă€r kan man lĂ€sa pĂ„ den officiella webbplatsen. https://linuxgsm.com.
För nÀrvarande (april 2020) finns det 105 spelservrar tillgÀngliga pÄ LinuxGSM.
Hela listan kan ses hÀr https://linuxgsm.com/servers.
Steam â en marknadsplats för spel.
Spelserver LinuxGSM har integration med SteamCMD, vilket innebÀr att spelservern LinuxGSM endast kan anvÀndas för spel frÄn Steam.
Installation av Docker pÄ Synology NAS
I detta skede Àr allt enkelt, gÄ till Synology administrationspanel, vidare till "Paketcenter", hitta och installera Docker.
Paketcenter
Startar och ser ungefÀr sÄ hÀr ut (jag har redan installerat denna behÄllare)
BehÄllarhantering
DÀrefter gÄr vi till fliken "Registry", skriver in "gameservermanagers" i sökfÀltet, vÀljer bilden "gameservermanagers/linuxgsm-docker" och trycker pÄ knappen "Ladda ner".
gameservermanagers/linuxgsm-docker
EfterÄt gÄr vi till fliken "Bild", vÀntar pÄ att nedladdningen ska avslutas och trycker pÄ knappen "Starta".
Nedladdning av bild
I det öppna fönstret mÄste vi gÄ till "Avancerade instÀllningar", sedan till fliken "NÀtverk" och markera kryssrutan "AnvÀnd samma nÀtverk som Docker-vÀrden".
Ăvriga instĂ€llningar, sĂ„som "BehĂ„llarnamn", Ă€ndras efter eget tycke.
BehĂ„llarnamn â som inte Ă€r svĂ„rt att gissa, detta Ă€r namnet pĂ„ behĂ„llaren, vilket kommer att vara anvĂ€ndbart lĂ€ngre fram. Jag rekommenderar att ge ett kort och koncist namn, som exempel kan vi kalla det "test".
DÀrefter trycker vi pÄ knappen "VerkstÀll" eller "NÀsta" flera gÄnger tills instÀllningen Àr klar.
Avancerade instÀllningar
GÄ till fliken "BehÄllare" och se den nya körande (om den inte Àr igÄng, starta den) behÄllaren.
HÀr kan du stoppa, starta, ta bort och utföra andra ÄtgÀrder.
InstÀllning av Docker-behÄllaren LinuxGSM
Innan du ansluter till Synology NAS via SSH mÄste SSH-Ätkomst aktiveras i administrationspanelen.
Anslutning via SSH
DÀrefter behöver du anvÀnda den interna IP-adressen Synology NAS servern för att ansluta via SSH.
Vi gÄr till terminalen (eller vilket annat alternativ som helst, till exempel under Windows detta PuTTY) och anvÀnder följande kommando:
ssh user_name@IPI mitt fall ser det ut sÄ hÀr
ssh admin@192.168.0.166IP-adressen till Synology NAS-servern
Efter autentisering mÄste vi köra kommandot för att gÄ in i sjÀlva containern "test" (fyllfÀltet "Container Name" i Docker-instÀllningarna) som anvÀndaren "root"
sudo docker exec -u 0 -it test bashAnslutning till Docker
Innan sjÀlva installationen av "LinuxGSM" mÄste vissa ÄtgÀrder vidtas.
Vi sÀtter ett lösenord för anvÀndaren "root"
passwdDĂ€refter uppdaterar vi alla paket
apt update && apt upgrade && apt autoremoveVi vĂ€ntar pĂ„ att processen ska slutförasâŠ
Uppdatering av paket
DÀrefter installerar vi nödvÀndiga verktyg
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-fullEftersom det inte Àr den bÀsta idén att utföra olika ÄtgÀrder som "root", lÀgger vi till en ny anvÀndare "test".
adduser testOch vi tillÄter den nya anvÀndaren att anvÀnda "sudo"
usermod -aG sudo testVi byter till den nya anvÀndaren "test"
su testInstallation och konfiguration av LinuxGSM
Vi gÄr igenom ett exempel pÄ konfiguration av LinuxGSM med "Counter-Strike", Àven kÀnt som "CS 1.6". https://linuxgsm.com/lgsm/csserver
Vi gÄr till sidan med instruktionerna för "Counter-Strike" linuxgsm.com/lgsm/csserver.
I fliken "Dependencies" kopierar vi koden för "Ubuntu 64-bit".
I skrivande stund ser denna kod ut sÄ hÀr:
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 av beroenden
Under installationen mÄste vi godkÀnna "Steam License":
Steam License
Vi gÄr till fliken "Install" och kopierar koden frÄn steg 2 (steg 1 hoppar vi över, anvÀndaren "test" finns redan):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
Vi vÀntar pÄ nedladdningen:
Nedladdning
Och vi startar installationen:
./csserver installOm allt gick som planerat, ser vi den eftertraktade "Install Complete!"
Install Complete!
Vi startar⊠och ser ett felmeddelande "Multiple IP addresses found."
./csserver startMultiple IP addresses found
Sedan mÄste vi tydligt ange för servern vilken IP den ska anvÀnda.
I mitt fall Àr detta:
192.168.0.166Vi gÄr till mappen vars vÀg angavs i meddelandet som "location":
cd /home/test/lgsm/config-lgsm/csserverOch ser vilka filer som finns i den hÀr mappen:
lsLista över filer i mappen csserver
Vi kopierar innehÄllet frÄn filen "_default.cfg" till filen "csserver.cfg":
cat _default.cfg >> csserver.cfgOch vi gÄr in i redigeringslÀge för filen "csserver.cfg":
nano csserver.cfgRedigering av filen csserver.cfg
Vi hittar raden:
ip="0.0.0.0"Och vi byter ut IP-adressen som föreslogs, i mitt fall Àr detta "192.168.0.166".
Det kommer att se ut ungefÀr sÄ hÀr:
ip="192.168.0.166"Tryck ned tangentkombinationen:
Ctr + XOch efter förslaget att spara klickar vi pÄ:
YVi gÄr tillbaka till anvÀndarens mapp "test":
cd ~Och prova igen att starta servern. Nu bör servern starta utan problem:
./csserver startStarta servern
För att se mer detaljerad information anvÀnder vi kommandot:
.\/csserver detailsDetaljerad information om servern
Bland viktiga parametrar bör nÀmnas:
- Server IP: 192.168.0.166:27015
- Internet IP: xxx.xx.xxx.xx:27015
- Konfigurationsfil: \/home\/test\/serverfiles\/cstrike\/csserver.cfg
Vid det hÀr steget Àr spelservern redan tillgÀnglig i det lokala nÀtverket.
InstÀllning av IP-adress omdirigering
Att spela i ett lokalt nÀtverk Àr bra, men att spela med vÀnner över internet Àr Ànnu bÀttre!
För att omdirigera IP-adressen som routern fÄtt frÄn leverantören anvÀnder vi NAT-mekanismen.
Det Àr ocksÄ vÀrt att notera att de flesta leverantörer anvÀnder dynamiska IP-adresser för sina kunder.
För bekvÀmlighet och stabilitet Àr det önskvÀrt att fÄ en statisk IP-adress.
Eftersom jag har en router "TP-Link Archer C60" ger jag ett exempel pÄ hur man stÀller in omdirigeringen, som det Àr implementerat i min router.
För andra routrar antar jag att omdirigeringen Àr instÀlld pÄ ett liknande sÀtt.
HĂ€r Ă€r det enkelt â du behöver ange omdirigeringen frĂ„n den externa IP-adressen till den interna IP-adressen för servern för tvĂ„ portar:
- 27015
- 27005
I adminpanelen för min router ser det ut sÄ hÀr
Adminpanel för routern
Det Àr allt, efter att ha sparat routerns instÀllningar kommer spelservern att vara tillgÀnglig i nÀtverket via den externa IP-adressen för de angivna portarna!
Ytterligare instÀllningar med exemplet CS 1.6
Med exemplet CS 1.6 skulle jag vilja ge nÄgra anvÀndbara tips.
Det finns tvÄ filer för serverkonfigurationen
Den första finns hÀr:
~\/lgsm\/config-lgsm\/csserver\/csserver.cfgDen andra finns hÀr:
~\/serverfiles\/cstrike\/csserver.cfgDen första filen innehÄller allmÀnna instÀllningar, sÄsom IP-adress, karta för första serverstart etc.
Den andra filen innehÄller instÀllningar för kommandon som kan köras via "Counter-Strike"-konsolen, till exempel "rcon_password" eller "sv_password".
I den andra filen rekommenderar jag att sÀtta ett lösenord för att ansluta till servern via CVar "sv_password" och att sÀtta ett lösenord för att styra servern via konsolen med CVar "rcon_password".
Listan över alla CVar-variabler kan ses hÀr http://txdv.github.io/cstrike-cvarlist
Det kommer ocksÄ sannolikt att förbli behov av att installera ytterligare kartor, till exempel "fy_pool_day".
Alla kartor för CS 1.6 finns hÀr:
~\/serverfiles\/cstrike\/mapsHitta den karta du behöver, ladda ner den direkt till servern (om den Àr i ett arkiv, packa upp den), flytta filen med Àndelsen «.bsp» till mappen med filerna «~\/serverfiles\/cstrike\/maps» och starta om servern.
~.\/csserver restartFör övrigt kan du se alla tillgÀngliga serverkommandon sÄ hÀr
~.\/csserverÂ
Resultat
Jag Àr nöjd med resultatet. Allt fungerar snabbt och laggar inte.
LinuxGSM har mÄnga ytterligare instÀllningar, till exempel integration med Telegram och Slack för aviseringar, men vissa funktioner behöver fortfarande förbÀttras.
Generellt rekommenderar jag att anvÀnda det!
KĂ€llor
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
Som centralhardware pÄpekade centralhardware inte alla Synology NAS kan köra Docker, hÀr Àr listan över enheter som kan https://www.synology.com/ru-ru/dsm/packages/Docker.
KĂ€lla: habr.com



