Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Olá, Habr! Mais precisamente, bandidos que procuram como configurar um servidor de minecraft para jogar com amigos.

O artigo é destinado a não programadores, não administradores de sistemas, em geral, e não ao público principal do Habr. O artigo contém instruções passo a passo para criar um servidor Minecraft com IP dedicado, adaptado para pessoas distantes da TI. Se isso não é sobre você, é melhor pular o artigo.

O que é um servidor?

Então, o que é um servidor? Se confiarmos no conceito de “servidor” como componente de software, então o servidor é um programa que pode receber, processar e transmitir dados recebidos de usuários (clientes) que estão conectados a este servidor. Usando o site como exemplo, o site está localizado em algum servidor web, que você acessa através de um navegador. No nosso caso, o servidor minecraft gera um mundo ao qual se conectam jogadores (clientes), que podem andar, quebrar blocos, etc. O servidor Minecraft é responsável por conectar os jogadores e qualquer uma de suas ações.

Obviamente, o servidor deve estar rodando no computador (máquina). Você pode configurar um servidor no seu computador doméstico, mas neste caso:

  • Você coloca em risco a segurança do seu próprio computador ao abrir portas nele
  • O servidor sobrecarregará seu computador, o que pode interferir no seu trabalho com ele
  • Você não pode manter seu computador doméstico funcionando 24 horas por dia, 7 dias por semana: às vezes você o desliga, às vezes seu computador perde a conexão com a Internet, etc.
  • Para acessar seu servidor do mundo exterior, você terá que acessar seu computador via endereço de IP, que para provedores de Internet “domésticos” é dinâmico, ou seja, pode mudar a cada 2-3 dias por motivos fora do seu controle.

E como resolvemos esses problemas?

A solução para todos esses problemas é usar máquina virtual com estático, ou seja, um endereço IP imutável.

Terminologia complexa? Vamos descobrir.
Vamos voltar para a Wikipedia.

Виртуальная машина (VM, от англ. virtual machine) — программная и/или аппаратная система, эмулирующая аппаратное обеспечение некоторой платформы...

Em termos muito simples, é um computador dentro de um computador. Você também pode instalar um sistema operacional nele e trabalhar com ele como se fosse um computador normal.

Onde podemos conseguir isso?

A resposta é simples - AWS. Esta é uma plataforma que oferece diversos serviços em nuvem que são úteis para todos que trabalham com web e não só. Para criar um servidor Minecraft, um dos produtos AWS é perfeito - Amazon EC2 — uma máquina virtual em nuvem disponível 24 horas por dia, 7 dias por semana. AWS oferece uma máquina virtual mínima (SSD de 10 GB, 1 GB de RAM) grátis por um ano, além disso, permite vincular um endereço IP dedicado (estático) gratuito para acesso permanente à sua VM (máquina virtual) no mesmo endereço.

Criamos e configuramos uma VM

Vá para o site AWS e cadastre-se. Em seguida, vá para o console de gerenciamento.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

No console, entre os serviços, encontre EC2 e vá até ele.

É importante escolher um data center, simplesmente, o local onde os servidores da Amazon estão localizados. Você deve escolher dependendo da sua localização, pois a velocidade de comunicação na Internet varia, e você deve escolher um data center com o qual a comunicação da sua cidade será o mais rápida possível.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Para selecionar um data center, recomendo usar o serviço WonderNetwork, que mede a velocidade de transmissão de pacotes com outras cidades.
No meu caso (Moscou), o data center irlandês me convinha.

É hora de criar uma máquina virtual. Para fazer isso, vá para a guia Iniciar instância

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Vamos começar a configurar a VM.

1) Selecione a imagem do sistema operacional. Linux é muito conveniente para levantar servidores; usaremos o kit de distribuição CentOS7

Ressalta-se que não haverá ambiente gráfico em sua máquina virtual, o acesso à máquina será através do console. Envolve controlar a VM usando comandos em vez de um mouse de computador. Não tenha medo disso: isso não deve impedi-lo agora ou desistir da ideia de criar seu próprio servidor Minecraft porque é “muito difícil”. Trabalhar com a máquina através do console não é difícil - você verá por si mesmo em breve.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

2) Agora vamos definir a configuração técnica da VM. Para uso gratuito, a Amazon oferece a configuração t2.micro, não o suficiente para um grande servidor Minecraft completo, mas o suficiente para jogar com amigos.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

3) Deixe o restante das configurações como padrão, mas pare na aba Configurar grupos de segurança.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Aqui precisamos configurar o acesso às portas do servidor Minecraft.

Em termos simples, uma porta é um número não negativo que indica a quem são endereçados os dados recebidos do mundo exterior. Uma VM pode hospedar muitos serviços e servidores diferentes, portanto, todos os pacotes de dados recebidos armazenam a porta (número) do destino (serviço, servidor) dentro da VM em seu cabeçalho.

Para servidores Minecraft, o padrão de fato é usar a porta 25565. Vamos adicionar uma regra indicando que o acesso à sua VM por meio desta porta é aceitável.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Vamos para a janela de finalização da criação da VM clicando no botão Revisar e iniciar

Configurando um par de chaves SSH para uma VM

Assim, a conexão com a máquina será realizada através do protocolo SSH.

O protocolo SSH funciona da seguinte forma: um par de chaves (pública e privada) é gerado, a chave pública é armazenada na VM e a chave privada é armazenada no computador da pessoa que está se conectando à VM (cliente). Ao se conectar, a VM verifica se o cliente possui uma chave privada adequada.

Clique no botão Apresentação livro. A seguinte janela aparecerá na sua frente:

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Digite o nome do par de chaves (para sua conveniência) e clique em Baixar par de chaves. Você deveria baixar .pem um arquivo contendo sua chave privada. Clique no botão Iniciar instâncias. Você acabou de criar uma máquina virtual na qual o servidor será instalado.

Obtendo um IP estático

Agora precisamos obter e vincular um IP estático à nossa VM. Para este menu encontramos a aba IPs elásticos e seguimos em frente. Na aba, clique no botão Alocar endereço IP elástico e obtenha um IP estático.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Agora o endereço IP recebido deve estar associado à nossa VM. Para fazer isso, selecione-o na lista e no menu Opções escolher Associar endereço IP

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

A seguir, vincularemos a VM ao nosso endereço IP

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Feito!

Vamos para a VM

Agora que a VM está configurada e o endereço IP atribuído, vamos conectar-nos a ela e instalar nosso servidor Minecraft.

Para conectar-se à VM via SSH usaremos o programa PuTTY. Instale o PuTTYgen imediatamente a partir desta página

Depois de instalar o PuTTY, abra-o. Agora você precisa configurar a conexão.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

  1. Na guia Número da selecione o tipo de conexão SSH, porto 22. Especifique um nome para a conexão. O nome do host para conexão via SSH é uma string como: имя_пользователя@публичный_dns.

O nome de usuário padrão no AWS para CentOS é centos. Seu DNS público pode ser visualizado aqui:

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Eu peguei a linha [email protected]

  1. Na guia SSH -> Autenticação insira sua chave SSH privada. Está armazenado em um arquivo .pem, que baixamos anteriormente. Mas o PuTTY não funciona com arquivos .pem, ele precisa de um formato .ppk. Para conversão usaremos PuTTYgen. Instruções de conversão do site PuTTYgen. Arquivo recebido .ppk Vamos salvar e indicar aqui:

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

  1. Nos conectamos à VM abrindo a conexão com o botão Abra.
    Parabéns! Acabamos de nos conectar ao console da sua VM. Resta instalar nosso servidor nele.

Instalando e configurando um servidor Minecraft

Vamos começar a configurar nosso servidor. Primeiro, precisamos instalar vários pacotes em nossa VM.

sudo yum install -y wget mc iptables iptables-services java screen

Vamos descobrir para que serve cada um dos pacotes.

  • wget - um utilitário para baixar arquivos no Linux. Com ele iremos baixar os arquivos do servidor.
  • mc - editor de texto do console. É simples e fácil de usar para um usuário não treinado.
  • iptables — um utilitário para gerenciar e configurar um firewall, com sua ajuda abriremos uma porta para o servidor em nossa VM.
  • Java — minecraft roda em java, então é necessário que o servidor funcione
  • tela - gerenciador de janelas para Linux. Isso nos permitirá duplicar nosso console para aumentar o servidor. O fato é que o servidor deve ser iniciado através do console, se você se desconectar da sua VM, o processo do servidor será interrompido. Portanto, iremos executá-lo em uma janela de console separada.

Agora vamos configurar o firewall.

Um firewall é um elemento de software ou hardware-software de uma rede de computadores que controla e filtra o tráfego de rede que passa por ela de acordo com regras específicas. (Wikipédia)

Para explicar em termos simples: imagine uma cidade fortificada. Ele é constantemente atacado de fora, enquanto a vida normal continua na cidade. Para aceder à cidade existe um portão na muralha da fortaleza, onde os guardas se posicionam e verificam nas listas se esta pessoa pode entrar na fortaleza. O papel de parede e portão em redes de computadores é desempenhado por um firewall.

sudo mcedit /etc/sysconfig/iptables

Acabamos de criar um arquivo de configuração do firewall. Vamos preenchê-lo com dados de configuração padrão, incluindo uma regra para a porta 25565, que é a porta padrão para o servidor Minecraft.

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 25565 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

Feche o arquivo pressionando F10, salvando as alterações.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Agora vamos iniciar o firewall e habilitá-lo na inicialização:

sudo systemctl enable iptables
sudo systemctl restart iptables

Armazenaremos os arquivos do servidor em uma pasta separada, criaremos, acessaremos e baixaremos os arquivos do servidor. Para fazer isso você deve usar wget

mkdir minecraft
cd minecraft
wget <ссылка_на_jar>

Preciso encontrar link direto para baixar .jar arquivo do servidor. Por exemplo, link para o arquivo do servidor versão 1.15.2:

wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar

Veja o conteúdo de uma pasta usando o comando ls, certifique-se de que os arquivos foram baixados.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Vamos lançar o arquivo do servidor. Agora o servidor não funcionará: ele criará todos os arquivos necessários para o trabalho e reclamará que você não concordou com os termos da licença EULA. Aceite os termos abrindo o arquivo eula.txt

sudo mcedit eula.txt

Confirme seu acordo alterando a entrada para:

eula=true

Abra o arquivo server.properties: Este é o arquivo de configuração do seu servidor. Mais sobre configurações do servidor

A seguinte alteração deve ser feita nele:

online-mode=false

As configurações restantes ficam a seu critério.

Início do servidor

É hora de iniciar o servidor. Como já disse, o servidor inicia diretamente do console, mas se fecharmos o console principal, o processo do servidor será interrompido. Portanto, vamos criar outro console:

screen

Vamos iniciar o servidor neste console:

 sudo java -Xms512M -Xmx1024M -jar <название_файла_сервера>.jar --nogui

O servidor inicia em cerca de 45 segundos, não interrompa o processo. Quando o servidor for inicializado e em execução, você verá algo como:

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Parabéns! Você acabou de colocar seu servidor Minecraft em funcionamento. Agora é importante sair corretamente do segundo console para que ele continue funcionando com o servidor em execução. Para fazer isso, clique Ctrl+Aem seguida D. Você deve estar no console principal e ver uma mensagem como [detached from 1551.pts-0.ip-172-31-37-146]. Se você precisar retornar ao console onde o servidor está sendo executado, use screen -r

Agora você pode se desconectar da sua VM. Seu servidor estará acessível através do endereço IP estático que recebemos anteriormente, na porta 25565.

Servidor minecraft gratuito na AWS com zero conhecimento de Linux

Acontece que o endereço para entrar no servidor será <ваш_статический_IP>:25565.

Conclusão

Usando estas instruções, você pode configurar facilmente um servidor Minecraft gratuito com um IP dedicado. O artigo foi escrito na linguagem mais simples possível e destina-se a não especialistas. Nesse sentido, é interessante ouvir os comentários de quem está ocupado, pois ao simplificar o material podem ser cometidos erros factuais de terminologia.

Fonte: habr.com

Adicionar um comentário