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:
Al momento (aprile 2020) ci sono 105 server di gioco disponibili su LinuxGSM.
L'intero elenco può essere visualizzato qui
Il server di gioco LinuxGSM ha l'integrazione con
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 pacchetti
Lanciamo e vediamo qualcosa di simile (ho già installato questo contenitore)
Gestione dei contenitori
Successivamente, vai alla scheda “Registro”, digita “gameservermanagers” nella ricerca, seleziona l’immagine “gameservermanagers/linuxgsm-docker” e fai clic sul pulsante “Download”.
gameservermanagers/linuxgsm-docker
Successivamente, vai alla scheda "Immagine", attendi che l'immagine finisca di caricarsi e fai clic sul pulsante "Avvia".
Scarica l'immagine
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 avanzate
Vai alla scheda "Contenitore" e visualizza un nuovo contenitore in esecuzione (in caso contrario, avvia).
Qui puoi interrompere, avviare, eliminare ed eseguire altre azioni.
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 SSH
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
ssh user_name@IP
Nel mio caso sembra così
ssh [email protected]
Indirizzo IP del server Synology NAS
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 Docker
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 aggiornamento
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 e configurazione di LinuxGSM
Considera un esempio di configurazione di LinuxGSM utilizzando l'esempio di "Counter-Strike" alias "CS 1.6"
Andiamo alla pagina con l'istruzione "Counter-Strike"
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 dipendenze
Durante il processo di installazione, è necessario accettare la "Licenza Steam":
Licenza Steam
Vai alla scheda "Installa", copia il codice dal 2° passaggio (saltamo il 1° passaggio, l'utente "test" esiste già):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
In attesa del download:
scaricare
E iniziamo l'installazione:
./csserver install
Se tutto è andato nella modalità normale, vedremo l'ambito “Install Complete!”
Installazione completata!
Iniziamo ... e vediamo l'errore "Trovato più indirizzi IP".
./csserver start
Trovati più indirizzi IP
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 csserver
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.cfg
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 server
Per visualizzare informazioni più dettagliate utilizzare il comando:
./csserver details
Informazioni dettagliate sul server
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 router
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
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
UPD
Come notato
Fonte: habr.com