
Hej!
Så, af alle kendte grunde er man nødt til at tilbringe mere tid derhjemme foran skærmen.
I denne situation må vi mindes om tingene fra svundne dage.
Som allerede klart fra titlen på denne artikel vil vi tale om opsætningen af Synology NAS som en spillesserver.
Pas på — artiklen indeholder mange skærmbilleder (skærmbillederne er klikbare)!
Før vi går i gang, her er en liste over værktøjerne, vi får brug for:
Synology NAS — her ser jeg ingen begrænsninger, jeg tror, at enhver vil være passende, hvis der ikke er planer om at holde en server med 10.000 spillere.
Docker — der kræves ikke særlige færdigheder, det er nok at have en grundlæggende forståelse af, hvordan det fungerer.
LinuxGSM — hvad LinuxGSM er, kan læses på den officielle hjemmeside. https://linuxgsm.com.
I øjeblikket (april 2020) er der 105 spilservere tilgængelige på LinuxGSM.
Hele listen kan ses her https://linuxgsm.com/servers.
Steam — en markedsplads for spil.
Spillesserver LinuxGSM har integration med SteamCMD, hvilket betyder, at LinuxGSM-spillesserveren kun kan bruges til spil fra Steam.
Installation af Docker på Synology NAS
I dette trin er alt simpelt, vi går ind i adminpanelet på Synology, derefter til "Package center", finder og installerer Docker.
Package center
Vi starter og ser noget, der ligner dette (jeg har allerede denne container installeret)
Container administration
Derefter går vi til fanen "Registry", søger efter "gameservermanagers", vælger billedet "gameservermanagers/linuxgsm-docker" og trykker på knappen "Download".
gameservermanagers/linuxgsm-docker
Efter det går vi til fanen "Image", venter på, at billedet bliver downloadet, og trykker på knappen "Launch".
Pakkeoversigt
I det åbne vindue skal vi gå til "Advanced Settings", derefter til fanen "Network" og markere boksen "Use the same network as Docker Host".
De øvrige indstillinger, såsom "Container Name", ændres efter eget valg.
Container Name — som man ikke har svært ved at gætte, er dette navnet på containeren, som vil blive nyttig senere. Jeg anbefaler at kalde det noget kort og præcist, lad os sige "test".
Derefter trykker vi på knappen "Apply" eller "Next" flere gange, indtil opsætningen er færdig.
Advanced Settings
Vi går til fanen "Container" og ser den nye kørende (hvis ikke, starter vi den) container.
Her kan vi stoppe, starte, slette og udføre andre handlinger.
Opsætning af Docker-containeren LinuxGSM
Før du kan oprette forbindelse til Synology NAS via SSH, skal SSH-adgang aktiveres i adminpanelet.
Forbindelse via SSH
Derefter er det nødvendigt at bruge den interne IP-adresse Synology NAS server til at oprette forbindelse via SSH.
Gå til terminalen (eller en anden tilsvarende, for eksempel under Windows er det PuTTY) og brug følgende kommando:
ssh user_name@IPFor mig ser det sådan her ud
ssh admin@192.168.0.166IP-adressen til Synology NAS-serveren
Efter godkendelsen skal vi udføre en kommando for at komme ind i containeren "test" (feltet "Container Name" i Docker-indstillingerne) under brugeren "root"
sudo docker exec -u 0 -it test bashTilslutning til Docker
Før installationen af "LinuxGSM" skal nogle forberedelser foretages.
Lad os sætte en adgangskode for brugeren "root"
passwdDernæst opdaterer vi alle pakker
apt update && apt upgrade && apt autoremoveVi venter på at processen afsluttes...
Opdatering af pakker
Derefter installerer vi de nødvendige værktøjer
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-fullDa det ikke er den bedste idé at udføre forskellige handlinger som "root", tilføjer vi en ny bruger "test".
adduser testOg giver den nye bruger mulighed for at bruge "sudo"
usermod -aG sudo testSkifter til den nye bruger "test"
su testInstallation og konfiguration af LinuxGSM
Lad os tage et eksempel på, hvordan man konfigurerer LinuxGSM med "Counter-Strike", også kendt som "CS 1.6" https://linuxgsm.com/lgsm/csserver
Gå til "Counter-Strike"-vejledningen linuxgsm.com/lgsm/csserver.
I fanen "Dependencies" kopierer vi koden under "Ubuntu 64-bit".
På tidspunktet for skrivning ser denne kode sådan ud:
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 af afhængigheder
Under installationen skal du acceptere "Steam License":
Steam License
Gå til fanen "Install" og kopier koden fra trin 2 (vi springer trin 1 over, fordi brugeren "test" allerede findes):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
Vi venter på download:
Download
Og starter installationen:
./csserver installHvis alt gik som planlagt, vil vi se "Install Complete!"
Install Complete!
Vi starter… og ser fejlen "Multiple IP addresses found."
./csserver startMultiple IP addresses found
Dernæst skal vi tydeligt angive, hvilken IP serveren skal bruge.
I mit tilfælde er det:
192.168.0.166Gå til mappen, som stien i meddelelsen angav som "location":
cd /home/test/lgsm/config-lgsm/csserverOg se hvilke filer der er i denne mappe:
lsListe over filer i csserver-mappen
Kopier indholdet af filen "_default.cfg" til filen "csserver.cfg":
cat _default.cfg >> csserver.cfgOg skift til redigering af filen "csserver.cfg":
nano csserver.cfgRedigering af filen csserver.cfg
Find linjen:
ip="0.0.0.0"Og erstat IP-adressen, som blev foreslået, i mit tilfælde er det "192.168.0.166".
Det vil se nogenlunde sådan ud:
ip="192.168.0.166"Tryk på tastaturkombinationen:
Ctr + XOg efter prompten for at gemme, tryk:
YVi vender tilbage til brugerens mappe «test»:
cd ~Og prøv igen at starte serveren. Nu bør serveren starte uden problemer:
./csserver startStart af server
For at se mere detaljeret information bruger vi kommandoen:
./csserver detailsDetaljeret information om serveren
Af de vigtige parametre skal nævnes:
- Server IP: 192.168.0.166:27015
- Internet IP: xxx.xx.xxx.xx:27015
- Konfigurationsfil: /home/test/serverfiles/cstrike/csserver.cfg
På dette stadium er spilleserveren allerede tilgængelig i det lokale netværk.
Indstilling af IP-adresse omdirigering
At spille i et lokalt netværk er godt, men at spille med venner over internettet er bedre!
For at omdirigere den IP-adresse, som routeren har modtaget fra udbyderen, bruger vi NAT-mekanismen.
Det er også værd at bemærke, at de fleste udbydere bruger dynamiske IP-adresser til deres kunder.
For brugervenlighed og stabilitet er det ønskeligt at få en statisk IP-adresse.
Da jeg har en router «TP-Link Archer C60», giver jeg et eksempel på, hvordan indstillingen af omdirigering er implementeret på min router.
For andre routere formoder jeg, at indstillingen af omdirigering er ligesom dette.
Det er simpelt — du skal angive omdirigering fra den eksterne IP-adresse til den interne IP-adresse for serveren for to porte:
- 27015
- 27005
I administrationspanelet på min router ser det således ud
Router administrationspanel
Og det er det, efter at have gemt routerindstillingerne, vil spilleserveren være tilgængelig i netværket på den eksterne IP-adresse for de angivne porte!
Yderligere indstillinger baseret på CS 1.6
Jeg vil gerne give nogle nyttige råd baseret på CS 1.6.
Der er to filer til serverkonfigurationen
Den første findes her:
~/lgsm/config-lgsm/csserver/csserver.cfgDen anden findes her:
~/serverfiles/cstrike/csserver.cfgDen første fil indeholder generelle indstillinger som IP-adresse, kort til den første opstart af serveren osv.
Den anden fil indeholder indstillinger for kommandoer, der kan udføres via «Counter-Strike» konsollen, såsom «rcon_password» eller «sv_password».
I den anden fil anbefaler jeg at sætte en adgangskode for at oprette forbindelse til serveren via CVar «sv_password» og at sætte en adgangskode til at styre serveren fra konsollen via CVar «rcon_password».
Listen over alle CVar-variable kan ses her http://txdv.github.io/cstrike-cvarlist
Det vil også sandsynligvis være nødvendigt at installere yderligere kort, såsom «fy_pool_day».
Alle kort til CS 1.6 findes her:
~\/serverfiles\/cstrike\/mapsFind det ønskede kort, upload det direkte til serveren (hvis det er i en arkivfil, udpakker vi det), flyt filen med filtypen «.bsp» til mappen med filer «~\/serverfiles\/cstrike\/maps» og genstart serveren.
~.\/csserver restartFor resten, alle tilgængelige serverkommandoer kan ses sådan her
~.\/csserver
Resultat
Jeg er tilfreds med resultatet. Alt fungerer hurtigt og lagger ikke.
LinuxGSM har mange ekstra indstillinger, for eksempel integration med Telegram og Slack til notifikationer, men nogle funktioner kræver stadig forbedringer.
Overordnet set anbefaler jeg det til brug!
Kilder
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 nævnt af centralhardware kan ikke alle Synology NAS køre Docker, her er listen over enheder der kan https://www.synology.com/ru-ru/dsm/packages/Docker.
Kilde: habr.com



