Transforme o Synology NAS em um servidor de jogo



Saudações!

Portanto, por todos os motivos conhecidos, você precisa passar mais tempo em casa diante do monitor.
Nesta situação, é necessário relembrar os assuntos dos dias passados.

Como já ficou claro no título deste artigo, falaremos sobre a configuração do seu Synology NAS como um servidor de jogo.

Achtung - existem muitas capturas de tela no artigo (as capturas de tela são clicáveis)!

Antes de começar, aqui está uma lista de ferramentas que precisamos:

Synology NAS - não vejo nenhuma restrição aqui, acho que alguém o fará, se não houver planos de manter um servidor para 10 mil jogadores.

Docker - nenhuma habilidade especial é necessária, figurativamente o suficiente para entender o princípio do trabalho.

LinuxGSM - sobre o que um LinuxGSMpode ser lido. Online https://linuxgsm.com .

Atualmente (abril de 2020), 105 servidores de jogos estão disponíveis no LinuxGSM.
A lista inteira pode ser encontrada aqui https://linuxgsm.com/servers .

O Steam é um mercado com jogos.

O servidor de jogos LinuxGSM possui integração com o SteamCMD , ou seja, o servidor de jogos LinuxGSM pode ser usado apenas para jogos do Steam.

Instalar o Docker no Synology NAS


Nesta fase, tudo é simples, vá ao painel de administração da Synology e, em "Centro de pacotes", localize e instale o Docker.

Centro de pacotes

Começamos e vemos algo assim (eu já tenho esse contêiner instalado)

Gerenciamento de contêineres

Em seguida, vá para a guia "Registro", vá para a pesquisa "gameservermanagers", selecione a imagem "gameservermanagers / linuxgsm-docker" e clique no botão "Download".

gameservermanagers / linuxgsm-docker

Depois disso, vá para a guia "Imagem", aguarde o término do carregamento da imagem e clique no botão "Iniciar".

Download da imagem

Na janela que se abre, vá para "Configurações avançadas", depois vá para a guia "Rede" e marque a caixa "Usar a mesma rede que o Docker Host".

Outras configurações, por exemplo, como "Nome do contêiner", são alteradas a nosso critério.
Nome do contêiner - como você pode imaginar, esse é o nome do contêiner, que será útil mais tarde. Eu recomendo chamá-lo de alguma forma sucinta, por exemplo, que seja "teste".

Em seguida, clique no botão "Aplicar" ou "Avançar" várias vezes até que a configuração esteja concluída.

Configurações avançadas

Vá para a guia "Container" e veja o novo container lançado (se não, inicie).
Aqui você pode parar, iniciar, excluir e executar outras ações.

Lançamento de contêiner

Configurando o contêiner do LinuxGSM Docker


Antes de conectar ao Synology NAS via SSH, é necessário ativar o acesso SSH no painel de administração.

Conexão SSH

Em seguida, você precisa usar o endereço IP interno do servidor Synology NAS para conectar-se via SSH.

Vá para o terminal (ou qualquer outro analógico, por exemplo, no Windows, é PuTTY ) e use o seguinte comando:

ssh user_name@IP

No meu caso, parece com isso

ssh admin@192.168.0.166

Endereço IP do Synology NAS Server

Após a autorização, você precisa executar o comando para acessar o próprio contêiner "test" (o campo "Nome do contêiner" nas configurações do Docker) sob o usuário "root"

sudo docker exec -u 0 -it test bash

Conectar ao Docker

Antes de instalar o LinuxGSM, você precisa fazer algum trabalho.

Defina uma senha para o usuário root

passwd

Em seguida, atualize todos os pacotes

apt update && apt upgrade && apt autoremove

Estamos aguardando o final do processo ...

Atualizações de Pacotes

Em seguida, instale os utilitários necessários

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

Como, em "root", executar ações diferentes não é uma boa ideia, adicionamos um novo usuário, "test".

adduser test

E deixe o novo usuário usar o sudo

usermod -aG sudo test

Mudar para o novo usuário "teste"

su test

Instalar utilitários

Instale e configure o LinuxGSM


Vejamos um exemplo de configuração do LinuxGSM usando o exemplo "Counter-Strike", também conhecido como "CS 1.6" https://linuxgsm.com/lgsm/csserver

Vá para a página com a instrução "Counter-Strike" linuxgsm.com/lgsm/csserver .

Na guia "Dependências", copie o código em "Ubuntu 64 bits".

No momento da escrita, este código se parece com o seguinte:

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

Instalação de Dependências

Durante o processo de instalação, você deve concordar com a "Licença do Steam":

Licença Steam

Vá para a guia "Instalar", copie o código da 2ª etapa (pule a 1ª etapa, o usuário "teste" já existe):

Instalar

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

Aguardando download:

Baixar

E inicie a instalação:

./csserver install

Se tudo correu como de costume, veremos o estimado "Instalação concluída!"

Instalação concluída!

Começamos ... e vemos o erro "Vários endereços IP encontrados".

./csserver start

Vários endereços IP encontrados

Em seguida, você precisa informar explicitamente ao servidor qual IP usar.

No meu caso é:

192.168.0.166

Vá para a pasta, o caminho para o qual estava a mensagem como "local":

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

E veja quais arquivos estão nesta pasta:

ls

Lista de arquivos na pasta csserver

Copie o conteúdo do arquivo "_default.cfg" para o arquivo "csserver.cfg":

cat _default.cfg >> csserver.cfg

E vá para o modo de edição do arquivo "csserver.cfg":

nano csserver.cfg

Editando o arquivo csserver.cfg

Encontre a linha:

ip="0.0.0.0"

E substitua o endereço IP proposto, no meu caso, é "192.168.0.166".

Acontecerá algo como isto:

ip="192.168.0.166"

Prenda o atalho do teclado:

Ctr + X

E após a oferta, clique em salvar:

Y

Voltamos à pasta do usuário "test":

cd ~

E novamente tentamos iniciar o servidor. Agora o servidor deve iniciar sem problemas:

./csserver start

Início do servidor

Para visualizar informações mais detalhadas, use o comando:

./csserver details

Informações detalhadas do servidor

Dos parâmetros importantes, vale ressaltar:

  • IP do servidor: 192.168.0.166:27015
  • IP da Internet: xxx.xx.xxx.xx: 27015
  • Arquivo de configuração: /home/test/serverfiles/cstrike/csserver.cfg

Neste ponto, o servidor do jogo já está disponível na rede local.

Definindo o encaminhamento de IP


Jogar na rede local é bom, mas jogar com amigos pela Internet é melhor!

Para encaminhar o endereço IP que o roteador recebeu do provedor, usamos o mecanismo NAT .

Também será apropriado observar que a maioria dos provedores usa endereços IP dinâmicos para seus clientes.

Por conveniência e estabilidade, é aconselhável obter um endereço IP estático.

Como tenho um roteador TP-Link Archer C60, dou um exemplo de configuração do encaminhamento de chamadas, conforme implementado no meu roteador.

Para outros roteadores, presumo que a configuração de encaminhamento seja semelhante.

Tudo é simples aqui - você precisa especificar o encaminhamento do endereço IP externo para o endereço IP interno do servidor para duas portas:

  • 27015
  • 27005


No painel de administração do meu roteador, parece com isso

Painel do roteador do administrador

Isso é tudo, depois de salvar as configurações do roteador, o servidor do jogo estará disponível na rede em um endereço IP externo para as portas especificadas!

Configurações adicionais no exemplo do CS 1.6


Por exemplo, o CS 1.6 gostaria de dar algumas dicas úteis.

Existem dois arquivos para configuração do servidor:

o primeiro está aqui:

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

O segundo está aqui:

~/serverfiles/cstrike/csserver.cfg

O primeiro arquivo contém configurações gerais, como endereço IP, mapa para a primeira inicialização do servidor, etc.

O segundo arquivo contém as configurações dos comandos que podem ser executados no console do Counter-Strike, por exemplo, rcon_password ou sv_password.

No segundo arquivo, recomendo definir uma senha para conectar-se ao servidor através do CVar “sv_password” e definir uma senha para gerenciamento no console do próprio servidor através do CVar “rcon_password”.

Uma lista de todas as variáveis ​​CVar pode ser encontrada aqui http://txdv.imtqy.com/cstrike-cvarlist

Além disso, provavelmente será necessário instalar placas adicionais, por exemplo, "fy_pool_day".

Todos os mapas do CS 1.6 estão aqui:

~/serverfiles/cstrike/maps

Encontramos o mapa desejado, carregue-o diretamente no servidor (se estiver no arquivo, descompacte-o), mova o arquivo com a extensão ".bsp" para a pasta com os arquivos "~ / serverfiles / cstrike / maps" e reinicie o servidor.

~./csserver restart

A propósito, todos os comandos do servidor disponíveis podem ser visualizados desta maneira

~./csserver

Total


Estou satisfeito com o resultado. Tudo funciona rapidamente e não fica para trás.

O LinuxGSM possui muitas configurações adicionais, por exemplo, integração com o Telegram e o Slack para notificações, mas algumas funcionalidades ainda precisam de melhorias.

Em geral, eu recomendo usar!

Fontes


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-tutorial-completo-a25f20ff1149
http://txdv.imtqy.com/cstrike-cvarlist

UPD


Como notado hardware centralnem todo o Synology NAS pode no Docker, eis uma lista de dispositivos que podem https://www.synology.com/ru-ru/dsm/packages/Docker .

All Articles