Greetings!
Så, av alle kjente grunner, må du bruke mer tid hjemme foran skjermen.
I denne tingenes tilstand må man huske forholdene fra svunne dager.
Som det fremgår av tittelen på denne artikkelen, vil vi snakke om å sette opp en Synology NAS som en spillserver.
oppmerksomhet - det er mange skjermbilder i artikkelen (skjermbilder er klikkbare)!
Før vi begynner, her er en liste over verktøyene vi trenger:
For øyeblikket (april 2020) er det 105 spillservere tilgjengelig på LinuxGSM.
Hele listen kan sees her
LinuxGSM-spillserveren har integrasjon med
Installere Docker på Synology NAS
På dette stadiet er alt enkelt, gå til Synology-administrasjonspanelet, deretter til "Pakkesenteret", finn og installer Docker.
pakkesenter
Vi starter og ser noe sånt som dette (jeg har allerede denne beholderen installert)
Beholderhåndtering
Gå deretter til "Registry"-fanen, skriv inn "gameservermanagers" i søket, velg "gameservermanagers/linuxgsm-docker"-bildet og klikk på "Last ned"-knappen.
gameservermanagers/linuxgsm-docker
Etter det, gå til "Bilde"-fanen, vent til bildet er ferdig lastet og klikk på "Start"-knappen.
Last ned bilde
I vinduet som åpnes, gå til "Avanserte innstillinger", deretter til fanen "Nettverk" og merk av for "Bruk samme nettverk som Docker Host".
Resten av innstillingene, for eksempel, for eksempel "Beholdernavn", endrer vi etter eget skjønn.
Beholdernavn - som du kanskje gjetter, er dette navnet på beholderen, det kommer godt med senere. Jeg anbefaler å kalle det noe kortfattet, for eksempel la det være "test".
Deretter klikker du på "Bruk" eller "Neste"-knappen flere ganger til innstillingene er fullført.
Avanserte innstillinger
Gå til "Beholder"-fanen og se en ny kjørende (hvis ikke start) beholder.
Her kan du stoppe, starte, slette og utføre andre handlinger.
Konfigurere en LinuxGSM Docker Container
Før du kan koble til din Synology NAS via SSH, må du aktivere SSH-tilgang i administrasjonspanelet.
Kobler til via SSH
Deretter må du bruke den interne IP-adressen til Synology NAS-serveren for å koble til via SSH.
Vi går til terminalen (eller en hvilken som helst annen analog, for eksempel under Windows dette
ssh user_name@IP
I mitt tilfelle ser det slik ut
ssh [email protected]
Synology NAS-serverens IP-adresse
Etter autorisasjon må du utføre kommandoen for å gå til selve "test"-beholderen (feltet "Container Name" i Docker-innstillingene) under "root"-brukeren
sudo docker exec -u 0 -it test bash
Kobler til Docker
Før du installerer "LinuxGSM" må du ta noen skritt.
Angi et passord for "root"-brukeren
passwd
Deretter oppdaterer du alle pakkene
apt update && apt upgrade && apt autoremove
Venter på slutten av prosessen...
Oppdatering av pakker
Deretter installerer du de nødvendige verktøyene
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-full
Siden det ikke er den beste ideen å utføre forskjellige handlinger under "root", vil vi legge til en ny bruker "test".
adduser test
Og la den nye brukeren bruke "sudo"
usermod -aG sudo test
Bytter til den nye bruker "testen"
su test
Installere og konfigurere LinuxGSM
Tenk på et eksempel på å sette opp LinuxGSM ved å bruke eksempelet "Counter-Strike" aka "CS 1.6"
Vi går til siden med instruksjonen "Counter-Strike"
I "Dependencies"-fanen kopierer du koden under "Ubuntu 64-bit".
I skrivende stund ser denne koden slik ut:
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
Installere avhengigheter
Under installasjonsprosessen må du godta "Steam-lisensen":
Steam-lisens
Gå til "Installer"-fanen, kopier koden fra 2. trinn (vi hopper over 1. trinn, "test"-brukeren eksisterer allerede):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
Venter på nedlasting:
nedlasting
Og vi starter installasjonen:
./csserver install
Hvis alt gikk i normal modus, vil vi se den ettertraktede "Installer fullført!"
Installer fullført!
Vi starter ... og vi ser feilen "Flere IP-adresser funnet."
./csserver start
Fant flere IP-adresser
Deretter må du eksplisitt fortelle serveren hvilken IP du skal bruke.
I mitt tilfelle er det:
192.168.0.166
Vi går til mappen, banen som var i meldingen som "sted":
cd /home/test/lgsm/config-lgsm/csserver
Og se hvilke filer som er i denne mappen:
ls
Liste over filer i csserver-mappen
Kopier innholdet i "_default.cfg"-filen til "csserver.cfg"-filen:
cat _default.cfg >> csserver.cfg
Og gå til redigeringsmodus for filen "csserver.cfg":
nano csserver.cfg
Redigering av filen csserver.cfg
Vi finner linjen:
ip="0.0.0.0"
Og vi erstatter IP-adressen som ble foreslått, i mitt tilfelle er det "192.168.0.166".
Det vil vise seg noe slikt:
ip="192.168.0.166"
Vi trykker på tastekombinasjonen:
Ctr + X
Og etter tilbudet om å lagre, klikk:
Y
Vi går tilbake til mappen til brukeren "test":
cd ~
Og prøv å starte serveren på nytt. Serveren skal nå starte uten problemer:
./csserver start
Serverstart
For å se mer detaljert informasjon, bruk kommandoen:
./csserver details
Detaljert informasjon om serveren
Av viktige parametere som er verdt å merke seg:
- Server IP: 192.168.0.166:27015
- Internett-IP: xxx.xx.xxx.xx:27015
- Konfigurasjonsfil: /home/test/serverfiles/cstrike/csserver.cfg
På dette stadiet er spillserveren allerede tilgjengelig på det lokale nettverket.
Konfigurere IP-adressevideresending
Å spille på et lokalt nettverk er bra, men å spille med venner over Internett er bedre!
For å videresende IP-adressen som ruteren mottok fra leverandøren, bruker vi NAT-mekanismen.
Det er også relevant å merke seg at de fleste Internett-leverandører bruker dynamiske IP-adresser for sine klienter.
For enkelhets skyld og stabilitet i arbeidet er det ønskelig å få en statisk IP-adresse.
Siden jeg har en TP-Link Archer C60 ruter, gir jeg et eksempel på å sette opp videresending, slik det er implementert i ruteren min.
For andre rutere antar jeg at videresendingsoppsettet er likt.
Alt er enkelt her - du må spesifisere videresending fra den eksterne IP-adressen til den interne IP-adressen til serveren for to porter:
- 27015
- 27005
I administrasjonspanelet til ruteren min ser det slik ut
Ruterens administrasjonspanel
Det er alt, etter å ha lagret ruterinnstillingene, vil spillserveren være tilgjengelig på nettverket på den eksterne IP-adressen for de angitte portene!
Ytterligere innstillinger på eksemplet med CS 1.6
Ved å bruke CS 1.6 som eksempel, vil jeg gjerne gi noen nyttige tips.
Det er to filer for serverkonfigurasjon
Den første er her:
~/lgsm/config-lgsm/csserver/csserver.cfg
Den andre er her:
~/serverfiles/cstrike/csserver.cfg
Den første filen inneholder generelle innstillinger som IP-adresse, kart for første oppstart av serveren osv.
Den andre filen inneholder kommandoinnstillinger som kan utføres gjennom Counter-Strike-konsollen, for eksempel "rcon_password" eller "sv_password".
I den andre filen anbefaler jeg å sette et passord for å koble til serveren via CVar "sv_password" og sette et passord for administrasjon fra serverens konsoll via CVar "rcon_password".
En liste over alle CVar-variabler finner du her
Dessuten vil det mest sannsynlig være behov for å installere flere kort, for eksempel "fy_pool_day".
Alle kart for CS 1.6 er her:
~/serverfiles/cstrike/maps
Vi finner det nødvendige kartet, laster det opp direkte til serveren (hvis det er i arkivet, pakk det ut), flytter filen med filtypen ".bsp" til mappen med filene "~/serverfiles/cstrike/maps" og start serveren på nytt.
~./csserver restart
Forresten, alle tilgjengelige serverkommandoer kan sees slik
~./csserver
Total
Jeg er fornøyd med resultatet. Alt fungerer raskt og henger ikke etter.
LinuxGSM har mange avanserte innstillinger, som integrasjon med Telegram og Slack for varsler, men noe funksjonalitet må fortsatt forbedres.
Generelt anbefaler jeg å bruke!
kilder
UPD
Som notert
Kilde: www.habr.com