Přetvoření Synology NAS na herní server

Přetvoření Synology NAS na herní server

Dobrý den!

Tak, z mnoha známých důvodů musíme trávit více času doma před monitorem.
V takové situaci si musíme vzpomenout na dávno minulé časy.

Jak už je jasné z názvu tohoto článku, budeme se zabývat nastavením Synology NAS jako herního serveru.

Achtung — v článku je spousta screenshotů (screenshoty jsou klikací)!

Než začneme, zde je seznam nástrojů, které budeme potřebovat:

Synology NAS — zde nevidím žádná omezení, myslím, že vyhovuje jakýkoli, pokud nemáte plány mít server pro 10k hráčů.

Docker — nejsou potřeba žádné zvláštní dovednosti, stačí mít základní představu o fungování.

LinuxGSM — o tom, co je LinuxGSM, si můžete přečíst na oficiálních stránkách https://linuxgsm.com.

V současné době (duben 2020) je na LinuxGSM dostupné 105 herních serverů.
Celý seznam si můžete prohlédnout zde https://linuxgsm.com/servers.

Steam — tržiště s hrami.

Herní server LinuxGSM má integraci s SteamCMD, tedy herní server LinuxGSM bude možné používat pouze pro hry ze Steamu.

Instalace Dockeru na Synology NAS

V této fázi je to jednoduché, přejdeme do administrátorské panelu Synology, dále do „Package centre“, najdeme a nainstalujeme Docker.

Package centrePřetvoření Synology NAS na herní server
Spustíme a uvidíme zhruba takový obrázek (já už mám tento kontejner nainstalovaný)

Správa kontejneruPřetvoření Synology NAS na herní server
Dále přejdeme na záložku „Registry“, zadáme do vyhledávání „gameservermanagers“, vybereme obraz „gameservermanagers/linuxgsm-docker“ a klikneme na tlačítko „Download“.

gameservermanagers/linuxgsm-dockerPřetvoření Synology NAS na herní server
Poté přejdeme na záložku „Image“, počkáme na dokončení stahování obrazu a klikneme na tlačítko „Launch“.

Stahování obrazuPřetvoření Synology NAS na herní server
V otevřeném okně je třeba přejít do „Advanced Settings“, dále na záložku „Network“ a zaškrtnout možnost „Use the same network as Docker Host“.

Ostatní nastavení, například jako „Container Name“, měníme dle vlastního uvážení.
Container Name — jak asi tušíte, to je název kontejneru, který se později bude hodit. Doporučuji nazvat nějak jednoduše, pro příklad ať to je „test“.

Dále klikneme na tlačítko „Apply“ nebo „Next“ několikrát, dokud se konfigurace nedokončí.

Pokročilé nastaveníPřetvoření Synology NAS na herní server
Přejdeme na záložku „Container“ a vidíme nový spuštěný (pokud ne, spustíme) kontejner.
Zde ho lze zastavovat, spouštět, mazat a provádět další činnosti.

Spuštění kontejneruPřetvoření Synology NAS na herní server

Nastavení Docker kontejneru LinuxGSM

Než se připojíte k Synology NAS přes SSH, musíte aktivovat samotný SSH přístup v administrátorské panelu.

Připojení přes SSHPřetvoření Synology NAS na herní server
Dále je nutné použít vnitřní IP adresu Synology NAS serveru pro připojení přes SSH.

Přejdeme do terminálu (nebo jakéhokoli jiného ekvivalentu, například pod Windows to PuTTY) a použijeme následující příkaz:

ssh user_name@IP

V mém případě to vypadá takto

ssh admin@192.168.0.166

IP adresa serveru Synology NASPřetvoření Synology NAS na herní server
Po autorizaci je třeba vykonat příkaz pro přechod do samotného kontejneru „test“ (pole „Container Name“ v nastavení Dockeru) pod uživatelským jménem „root“

sudo docker exec -u 0 -it test bash

Připojení k DockeruPřetvoření Synology NAS na herní server
Před samotnou instalací „LinuxGSM“ je třeba provést určité kroky.

Nainstalujeme heslo pro uživatele „root“

passwd

Dále aktualizujeme všechny balíčky

apt update && apt upgrade && apt autoremove

Čekáme na dokončení procesu...

Aktualizace balíčkůPřetvoření Synology NAS na herní server
Dále nainstalujeme potřebné utilitky

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

Protože není nejlepší nápad vykonávat různé akce jako „root“, přidáme nového uživatele „test“.

adduser test

A povolíme novému uživateli používat „sudo“

usermod -aG sudo test

Přepínáme se na nového uživatele „test“

su test

Instalace utilitPřetvoření Synology NAS na herní server

Instalace a konfigurace LinuxGSM

Podíváme se na příklad konfigurace LinuxGSM na příkladu „Counter-Strike“, známý také jako „CS 1.6“ https://linuxgsm.com/lgsm/csserver

Přejdeme na stránku s instrukcemi pro „Counter-Strike“ linuxgsm.com/lgsm/csserver.

Na kartě „Dependencies“ zkopírujeme kód pro „Ubuntu 64-bit“.

V době psaní tohoto článku vypadá tento kód takto:

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

Instalace závislostíPřetvoření Synology NAS na herní server
Během instalace je třeba souhlasit s „Steam License“:

Steam LicensePřetvoření Synology NAS na herní server
Přejdeme na kartu „Install“ a zkopírujeme kód z 2. kroku (1. krok přeskočíme, uživatel „test“ již existuje):

NainstalovatPřetvoření Synology NAS na herní server

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

Čekáme na stažení:

StahováníPřetvoření Synology NAS na herní server
A spustíme instalaci:

. /csserver install

Pokud vše proběhlo podle plánu, uvidíme vzácné „Install Complete!“

Install Complete!Přetvoření Synology NAS na herní server
Spouštíme... a vidíme chybu „Multiple IP addresses found.“

. /csserver start

Multiple IP addresses foundPřetvoření Synology NAS na herní server
Dále je třeba jasně určit serveru, který IP má použít.

V mém případě je to:

192.168.0.166

Přejdeme do složky, jejíž cesta byla v zprávě jako „location“:

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

A podívej se, jaké soubory jsou v této složce:

ls

Seznam souborů ve složce csserverPřetvoření Synology NAS na herní server
Zkopírujeme obsah souboru „_default.cfg“ do souboru „csserver.cfg“:

cat _default.cfg >> csserver.cfg

A přejdeme do režimu úpravy souboru „csserver.cfg“:

nano csserver.cfg

Úprava souboru csserver.cfgPřetvoření Synology NAS na herní server
Najdeme řádek:

ip="0.0.0.0"

A nahradíme IP adresu, která byla navržena, v mém případě to je „192.168.0.166“.

Bude to nějak takto:

ip="192.168.0.166"

Stiskneme kombinaci kláves:

Ctr + X

A po nabídce uložení klikneme na:

Y

Vrátíme se do složky uživatele «test»:

cd ~

A znovu se pokusíme spustit server. Nyní by se server měl spustit bez problémů:

. /csserver start

Spuštění serveruPřetvoření Synology NAS na herní server
Pro zobrazení podrobnějších informací použijeme příkaz:

./csserver details

Podrobné informace o serveruPřetvoření Synology NAS na herní server
Z důležitých parametrů stojí za zmínku:

  • Server IP: 192.168.0.166:27015
  • Internet IP: xxx.xx.xxx.xx:27015
  • Konfigurační soubor: /home/test/serverfiles/cstrike/csserver.cfg

V tomto stádiu je herní server již dostupný v lokální síti.

Nastavení přesměrování IP adresy

Hrát v lokální síti je fajn, ale hrát s přáteli přes internet je lepší!

Pro přesměrování IP adresy, kterou router dostal od poskytovatele, použijeme mechanismus NAT.

Také se sluší poznamenat, že většina poskytovatelů používá pro své klienty dynamické IP adresy.

Pro pohodlí a stabilitu provozu je žádoucí získat statickou IP adresu.

Jelikož mám router «TP-Link Archer C60», uvádím příklad nastavení přesměrování, jak je to realizováno v mém routeru.

Pro jiné routery předpokládám, že nastavení přesměrování je podobně uspořádáno.

Tady je to jednoduché - je třeba uvést přesměrování z externí IP adresy na interní IP adresu serveru pro dva porty:

  • 27015
  • 27005

V admin panelu mého routeru to vypadá takto

Admin panel routeruPřetvoření Synology NAS na herní server
A to je vše, po uložení nastavení routeru bude herní server dostupný v síti pod externí IP adresou pro uvedené porty!

Další nastavení na příkladu CS 1.6

Na příkladu CS 1.6 bych chtěl nabídnout několik užitečných rad.

Existují dva soubory pro konfiguraci serveru

První je zde:

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

Druhý je zde:

~/serverfiles/cstrike/csserver.cfg

První soubor obsahuje obecná nastavení, jako jsou IP adresa, mapa pro první načtení serveru atd.

Druhý soubor obsahuje nastavení příkazů, které lze provádět přes konzoli «Counter-Strike», například «rcon_password» nebo «sv_password».

Ve druhém souboru doporučuji nastavit heslo pro připojení k serveru přes CVar «sv_password» a nastavit heslo pro správu z konzole samotného serveru přes CVar «rcon_password».

Seznam všech CVar proměnných můžete najít zde http://txdv.github.io/cstrike-cvarlist

Také pravděpodobně bude potřeba nainstalovat další mapy, například «fy_pool_day».

Všechny mapy pro CS 1.6 najdete zde:

~\/serverfiles\/cstrike\/maps

Najdeme požadovanou mapu, nahrajeme ji přímo na server (pokud je v archivu, rozbalíme), přesuneme soubor s příponou „.bsp“ do složky s soubory „~\/serverfiles\/cstrike\/maps“ a restartujeme server.

~.\/csserver restart

Mimochodem, všechny dostupné příkazy serveru můžete zobrazit takto

~.\/csserver

 

Výsledek

Jsem spokojen s výsledkem. Všechno funguje rychle a bez zpoždění.

LinuxGSM má mnoho dalších nastavení, například integraci s Telegramem a Slackem pro upozornění, ale některé funkce ještě vyžadují úpravy.

Celkově doporučuji k použití!

Zdroje

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

Jak jsem si všiml, centralhardware ne všechny Synology NAS mohou běžet v Dockeru, zde je seznam zařízení, které mohou https://www.synology.com/ru-ru/dsm/packages/Docker.

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster