Trasforma il tuo Synology NAS in un server di gioco

Trasforma il tuo Synology NAS in un server di gioco

Saluti!

Quindi, per tutti i motivi noti, devi trascorrere più tempo a casa davanti al monitor.
In questo stato di cose, bisogna ricordare gli affari dei tempi passati.

Come risulta dal titolo di questo articolo, parleremo della configurazione di un Synology NAS come server di gioco.

Attenzione - ci sono molti screenshot nell'articolo (gli screenshot sono cliccabili)!

Prima di iniziare, ecco un elenco degli strumenti di cui avremo bisogno:

Synology NAS - Non vedo alcuna restrizione qui, penso che chiunque andrà bene, se non ci sono piani per mantenere un server per 10k giocatori.

docker - non sono richieste competenze particolari, è sufficiente comprendere in senso figurato il principio del lavoro.

LinuxGSM - puoi leggere cosa è LinuxGSM on off. sito web https://linuxgsm.com.

Al momento (aprile 2020) ci sono 105 server di gioco disponibili su LinuxGSM.
L'intero elenco può essere visualizzato qui https://linuxgsm.com/servers.

Steam - un mercatino con i giochi.

Il server di gioco LinuxGSM ha l'integrazione con SteamCMD, ovvero il server di gioco LinuxGSM può essere utilizzato solo per i giochi di Steam.

Installazione di Docker su Synology NAS

A questo punto, tutto è semplice, vai al pannello di amministrazione di Synology, quindi al "Centro pacchetti", trova e installa Docker.

centro pacchettiTrasforma il tuo Synology NAS in un server di gioco
Lanciamo e vediamo qualcosa di simile (ho già installato questo contenitore)

Gestione dei contenitoriTrasforma il tuo Synology NAS in un server di gioco
Successivamente, vai alla scheda “Registro”, digita “gameservermanagers” nella ricerca, seleziona l’immagine “gameservermanagers/linuxgsm-docker” e fai clic sul pulsante “Download”.

gameservermanagers/linuxgsm-dockerTrasforma il tuo Synology NAS in un server di gioco
Successivamente, vai alla scheda "Immagine", attendi che l'immagine finisca di caricarsi e fai clic sul pulsante "Avvia".

Scarica l'immagineTrasforma il tuo Synology NAS in un server di gioco
Nella finestra che si apre, vai su "Impostazioni avanzate", quindi sulla scheda "Rete" e seleziona la casella "Utilizza la stessa rete di Docker Host".

Il resto delle impostazioni, ad esempio, come "Nome contenitore", lo modifichiamo a nostra discrezione.
Nome del contenitore: come puoi immaginare, questo è il nome del contenitore, tornerà utile in seguito. Consiglio di chiamarlo in modo succinto, ad esempio, lascia che sia "test".

Successivamente, fare clic più volte sul pulsante "Applica" o "Avanti" fino al completamento delle impostazioni.

Impostazioni avanzateTrasforma il tuo Synology NAS in un server di gioco
Vai alla scheda "Contenitore" e visualizza un nuovo contenitore in esecuzione (in caso contrario, avvia).
Qui puoi interrompere, avviare, eliminare ed eseguire altre azioni.

Esecuzione di un contenitoreTrasforma il tuo Synology NAS in un server di gioco

Configurazione di un contenitore Docker LinuxGSM

Prima di potersi connettere a Synology NAS tramite SSH, è necessario abilitare l'accesso SSH stesso nel pannello di amministrazione.

Connessione tramite SSHTrasforma il tuo Synology NAS in un server di gioco
Successivamente, è necessario utilizzare l'indirizzo IP interno del server Synology NAS per connettersi tramite SSH.

Andiamo al terminale (o qualsiasi altro analogo, ad esempio, sotto Windows questo PuTTY) e utilizzare il seguente comando:

ssh user_name@IP

Nel mio caso sembra così

ssh [email protected]

Indirizzo IP del server Synology NASTrasforma il tuo Synology NAS in un server di gioco
Dopo l'autorizzazione, è necessario eseguire il comando per accedere al contenitore "test" stesso (il campo "Nome contenitore" nelle impostazioni Docker) sotto l'utente "root"

sudo docker exec -u 0 -it test bash

Connessione a DockerTrasforma il tuo Synology NAS in un server di gioco
Prima di installare "LinuxGSM" è necessario eseguire alcuni passaggi.

Imposta una password per l'utente "root".

passwd

Successivamente, aggiorna tutti i pacchetti

apt update && apt upgrade && apt autoremove

In attesa della fine del processo...

Pacchetti di aggiornamentoTrasforma il tuo Synology NAS in un server di gioco
Successivamente, installa le utilità necessarie

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

Poiché non è l'idea migliore eseguire diverse azioni sotto "root", aggiungeremo un nuovo utente "test".

adduser test

E consenti al nuovo utente di utilizzare "sudo"

usermod -aG sudo test

Passaggio al nuovo utente "test"

su test

Installazione delle utilitàTrasforma il tuo Synology NAS in un server di gioco

Installazione e configurazione di LinuxGSM

Considera un esempio di configurazione di LinuxGSM utilizzando l'esempio di "Counter-Strike" alias "CS 1.6" https://linuxgsm.com/lgsm/csserver

Andiamo alla pagina con l'istruzione "Counter-Strike" linuxgsm.com/lgsm/csserver.

Nella scheda "Dipendenze", copia il codice sotto "Ubuntu 64 bit".

Al momento della stesura di questo codice, questo è il seguente:

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

Installazione delle dipendenzeTrasforma il tuo Synology NAS in un server di gioco
Durante il processo di installazione, è necessario accettare la "Licenza Steam":

Licenza SteamTrasforma il tuo Synology NAS in un server di gioco
Vai alla scheda "Installa", copia il codice dal 2° passaggio (saltamo il 1° passaggio, l'utente "test" esiste già):

InstallazioneTrasforma il tuo Synology NAS in un server di gioco

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

In attesa del download:

scaricareTrasforma il tuo Synology NAS in un server di gioco
E iniziamo l'installazione:

./csserver install

Se tutto è andato nella modalità normale, vedremo l'ambito “Install Complete!”

Installazione completata!Trasforma il tuo Synology NAS in un server di gioco
Iniziamo ... e vediamo l'errore "Trovato più indirizzi IP".

./csserver start

Trovati più indirizzi IPTrasforma il tuo Synology NAS in un server di gioco
Successivamente, devi indicare esplicitamente al server quale IP utilizzare.

Nel mio caso è:

192.168.0.166

Andiamo alla cartella, il cui percorso era nel messaggio come "posizione":

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

E guarda quali file ci sono in questa cartella:

ls

Elenco dei file nella cartella csserverTrasforma il tuo Synology NAS in un server di gioco
Copia il contenuto del file "_default.cfg" nel file "csserver.cfg":

cat _default.cfg >> csserver.cfg

E vai alla modalità di modifica del file "csserver.cfg":

nano csserver.cfg

Modifica del file csserver.cfgTrasforma il tuo Synology NAS in un server di gioco
Trova la linea:

ip="0.0.0.0"

E sostituiamo l'indirizzo IP proposto, nel mio caso è "192.168.0.166".

Risulterà qualcosa del genere:

ip="192.168.0.166"

Premiamo la combinazione di tasti:

Ctr + X

E dopo l'offerta per salvare, fai clic su:

Y

Torniamo alla cartella dell'utente "test":

cd ~

E prova ad avviare nuovamente il server. Il server ora dovrebbe avviarsi senza problemi:

./csserver start

Avvio del serverTrasforma il tuo Synology NAS in un server di gioco
Per visualizzare informazioni più dettagliate utilizzare il comando:

./csserver details

Informazioni dettagliate sul serverTrasforma il tuo Synology NAS in un server di gioco
Tra i parametri importanti vale la pena notare:

  • IP del server: 192.168.0.166:27015
  • IP Internet: xxx.xx.xxx.xx:27015
  • File di configurazione: /home/test/serverfiles/cstrike/csserver.cfg

In questa fase il server di gioco è già disponibile sulla rete locale.

Configurazione dell'inoltro dell'indirizzo IP

Giocare su una rete locale è bello, ma giocare con gli amici su Internet è meglio!

Per inoltrare l'indirizzo IP che il router ha ricevuto dal provider, utilizziamo il meccanismo NAT.

È anche pertinente notare che la maggior parte degli ISP utilizza indirizzi IP dinamici per i propri clienti.

Per comodità e stabilità del lavoro, è preferibile ottenere un indirizzo IP statico.

Poiché ho un router TP-Link Archer C60, fornisco un esempio di configurazione dell'inoltro, così come è implementato nel mio router.

Per altri router, presumo che la configurazione di inoltro sia simile.

Qui tutto è semplice: devi specificare l'inoltro dall'indirizzo IP esterno all'indirizzo IP interno del server per due porte:

  • 27015
  • 27005

Nel pannello di amministrazione del mio router appare così

Pannello di amministrazione del routerTrasforma il tuo Synology NAS in un server di gioco
Questo è tutto, dopo aver salvato le impostazioni del router, il server di gioco sarà disponibile sulla rete all'indirizzo IP esterno per le porte specificate!

Impostazioni aggiuntive sull'esempio di CS 1.6

Utilizzando CS 1.6 come esempio, vorrei fornire alcuni suggerimenti utili.

Sono presenti due file per la configurazione del server

Il primo è qui:

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

Il secondo è qui:

~/serverfiles/cstrike/csserver.cfg

Il primo file contiene le impostazioni generali come indirizzo IP, mappa per il primo avvio del server, ecc.

Il secondo file contiene le impostazioni dei comandi che possono essere eseguiti tramite la console Counter-Strike, come "rcon_password" o "sv_password".

Nel secondo file consiglio di impostare una password per la connessione al server tramite la CVar "sv_password" e di impostare una password per la gestione dalla console del server tramite la CVar "rcon_password".

Un elenco di tutte le variabili CVar può essere trovato qui http://txdv.github.io/cstrike-cvarlist

Inoltre, molto probabilmente sarà necessario installare schede aggiuntive, ad esempio "fy_pool_day".

Tutte le mappe per CS 1.6 sono qui:

~/serverfiles/cstrike/maps

Troviamo la mappa necessaria, la carichiamo direttamente sul server (se è nell'archivio, decomprimiamola), spostiamo il file con estensione ".bsp" nella cartella con i file "~/serverfiles/cstrike/maps" e riavviare il server.

~./csserver restart

A proposito, tutti i comandi del server disponibili possono essere visualizzati in questo modo

~./csserver

risultato

Sono soddisfatto del risultato. Tutto funziona rapidamente e non rallenta.

LinuxGSM ha molte impostazioni avanzate, come l'integrazione con Telegram e Slack per le notifiche, ma alcune funzionalità devono ancora essere migliorate.

In generale, MI consiglia di utilizzare!

fonti

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

Come notato hardware centrale non tutti i Synology NAS supportano la finestra mobile, ecco un elenco dei dispositivi che possono farlo https://www.synology.com/ru-ru/dsm/packages/Docker.

Fonte: habr.com

Aggiungi un commento