Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

¡Hola, Habr! Más bien, buscadores que quieren levantar un servidor de Minecraft para jugar con amigos.

El artículo está dirigido a no programadores, no administradores de sistemas, en general, no a la audiencia principal de Habr. En el artículo — una guía paso a paso para crear un servidor de Minecraft con IP dedicada, adaptada para personas ajenas a la informática. Si esto no te describe — es mejor que saltes este artículo.

¿Qué es un servidor?

Entonces, ¿qué es un servidor? Si nos basamos en el concepto de "servidor" como un componente de software, este representa un programa que puede recibir, procesar y transmitir datos, recibidos de usuarios (clientes) que están conectados a ese servidor. Tomando como ejemplo un sitio web — el sitio reside en un cierto servidor web, al que accedes a través del navegador. En nuestro caso — el servidor de Minecraft genera un mundo al que se conectan los jugadores (clientes), que pueden caminar, romper bloques, etc. El servidor de Minecraft es responsable de la conexión de los jugadores y de cualquier acción que realicen.

Es obvio que el servidor debe estar ejecutándose en un ordenador (máquina). Puedes levantar un servidor en tu computadora doméstica, pero en tal caso:

  • Pones en riesgo la seguridad de tu propia computadora abriendo puertos en ella.
  • El servidor cargará tu computadora, lo que puede interferir con el trabajo.
  • No puedes mantener una computadora doméstica en funcionamiento 24/7: a veces la apagas, a veces tu computadora pierde conexión a Internet, etc.
  • Para acceder a tu servidor desde el mundo exterior, tendrás que conectar con la computadora a través de IP, que para los proveedores de internet "domésticos" es dinámico, es decir, puede cambiar cada 2-3 días por razones ajenas a ti.

¿Y cómo resolveremos estos problemas?

La solución a todos los problemas mencionados es utilizar una máquina virtual para una IPestática

, es decir, inalterable.
¿Terminología complicada? Vamos a desglosarlo.

Consultemos a Wikipedia.

Una máquina virtual (VM, del inglés virtual machine) es un sistema de software y/o hardware que emula el hardware de una cierta plataforma...

Si se explica de manera muy básica — es una computadora dentro de otra computadora. También se le puede instalar un sistema operativo y trabajar con ella como con una computadora normal.

¿Dónde la obtendremos? AWSEs una plataforma que ofrece una variedad de servicios en la nube, útiles para todos los que trabajan con la web y más. Para crear un servidor de Minecraft, uno de los productos de AWS es ideal — Amazon EC2 — una máquina virtual en la nube que está disponible 24/7. AWS ofrece una máquina virtual mínima (10GB SSD, 1GB RAM) gratuitamente durante un año, además de permitir vincular una dirección IP estática gratuita para un acceso constante a su VM (máquina virtual) desde la misma dirección.

Creando y configurando la VM

Visite el sitio web AWS y regístrese. Luego, acceda a la consola de administración.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

En la consola, entre los servicios, busque EC2 y acceda a él.

Es importante elegir el centro de datos, en otras palabras, el lugar donde se encuentran los servidores de Amazon. La elección debe basarse en su ubicación, ya que la velocidad de comunicación en Internet varía, y debe elegir un centro de datos con el que la comunicación desde su ciudad sea lo más rápida posible.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Para elegir el centro de datos, recomiendo utilizar el servicio WonderNetwork, que mide la velocidad de transferencia de paquetes con otras ciudades.
En mi caso (ciudad de Moscú), el centro de datos irlandés me funcionó.

Ha llegado el momento de crear una máquina virtual. Para ello, acceda a la pestaña Launch instance

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Comenzaremos a configurar la VM.

1) Elegiremos la imagen del sistema operativo. Para levantar servidores, Linux es muy conveniente, usaremos la distribución CentOS7

Es importante notar que no habrá entorno gráfico en su máquina virtual; el acceso a la máquina se realizará a través de la consola. Esto implica administrar la VM mediante comandos y no con un ratón. No se asuste: esto no debería detenerlo ahora ni hacerle desistir de la idea de levantar su servidor de Minecraft, ya que "es demasiado complicado". Trabajar con la máquina a través de la consola no es difícil; pronto lo comprobará usted mismo.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

2) Ahora definiremos la configuración técnica de la VM. Para uso gratuito, Amazon ofrece la configuración t2.micro, que es un poco escasa para un servidor de Minecraft grande, pero es suficiente para jugar con amigos.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

3) Dejamos los otros puntos de configuración por defecto, pero nos detenemos en la pestaña Configure Security groups.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Aquí es necesario configurar el acceso a los puertos para el servidor de Minecraft.

En términos simples, un puerto es un número no negativo que indica a quién se dirigen los datos entrantes del mundo exterior. En una VM puede haber muchos servicios y servidores diferentes, por lo tanto, todos los paquetes de datos entrantes llevan en su encabezado el puerto (número) del destinatario (servicio, servidor) dentro de la VM.

Para los servidores de Minecraft, el estándar de facto es el uso del puerto 25565. Agregaremos una regla que indique que el acceso a su VM a través de este puerto es permitido.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Pasamos a la ventana de finalización de creación de la VM haciendo clic en el botón Revisar y lanzar

Configuración del par de claves SSH para la VM

Así, la conexión a la máquina se realizará a través del protocolo SSH.

El protocolo SSH funciona de la siguiente manera: se genera un par de claves (pública y privada), se almacena la clave pública en la VM y la clave privada en el ordenador de la persona que establece la conexión a la VM (cliente). Al conectarse, la VM verifica la presencia de la clave privada adecuada en el cliente.

Haga clic en el botón Lanzar. Aparecerá la siguiente ventana:

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Ingrese el nombre del par de claves (para su conveniencia) y haga clic en Download key pair. Debe descargarse un .pem archivo que contiene su clave privada. Haga clic en el botón Launch instances. Acaba de crear una máquina virtual en la que se levantará el servidor.

Obtenemos una IP estática

Ahora necesitamos obtener y asociar una IP estática a nuestra VM. Para esto, en el menú encontramos la pestaña IPs elásticas y accedemos a ella. En la pestaña, hacemos clic en el botón Allocate Elastic IP address y obtenemos la IP estática.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Ahora, la IP obtenida debe ser asociada a nuestra VM. Para esto, la seleccionamos de la lista y en el menú Actions escogemos Associate IP address

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

A continuación, asociamos la VM a nuestra dirección IP.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

¡Listo!

Accedemos a la VM

Ahora que la VM está configurada y la dirección IP está asociada, nos conectamos a ella e instalamos nuestro servidor de Minecraft.

Para conectarse a la VM por SSH, utilizaremos el programa PuTTY. Instale PuTTYgen desde esta misma página

Después de instalar PuTTY, ábralo. Ahora es necesario configurar la conexión.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

  1. En la pestaña Session seleccione el tipo de conexión SSH, puerto 22. Indique un nombre para la conexión. El nombre del host para la conexión por SSH es una cadena de tipo: nombre_usuario@dns_público.

El nombre de usuario en AWS para CentOS por defecto es centos. Puede ver su DNS público aquí:

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Me ha salido la cadena centos@ec2-54-246-186-12.eu-west-1.compute.amazonaws.com

  1. En la pestaña SSH -> Auth indique su clave privada SSH. Se almacena en un archivo .pem, que descargamos anteriormente. Pero PuTTY no puede trabajar con archivos .pem, necesita un formato .ppk. Para la conversión, utilizaremos PuTTYgen. Instrucciones de conversión desde el sitio de PuTTYgen. El archivo obtenido .ppk Lo guardaremos y lo indicaremos aquí:

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

  1. Nos conectamos a la VM abriendo la conexión con el botón Abrir.
    ¡Felicidades! Acabamos de conectarnos a la consola de tu VM. Solo falta levantar nuestro servidor en ella.

Instalación y configuración del servidor de Minecraft

Comencemos la configuración de nuestro servidor. Primero, necesitamos instalar algunos paquetes en nuestra VM.

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

Veamos para qué sirve cada uno de los paquetes.

  • wget — herramienta para descargar archivos en Linux. Con ella descargaremos los archivos del servidor.
  • mc — editor de texto de consola. Se caracteriza por su simplicidad y conveniencia para un usuario no preparado.
  • iptables — herramienta para gestionar y configurar el firewall, con ella abriremos el puerto para el servidor en nuestra VM.
  • java — Minecraft funciona con Java, por lo que es necesario para el funcionamiento del servidor
  • screen — gestor de ventanas para Linux. Te permitirá duplicar nuestra consola para levantar el servidor. El hecho es que el servidor debe ser ejecutado a través de la consola, si te desconectas de tu VM, el proceso del servidor se detendrá. Por eso lo ejecutaremos en una ventana de consola separada.

Ahora configuraremos el firewall.

Un firewall es un elemento programático o de hardware de una red informática que controla y filtra el tráfico de red que pasa a través de él de acuerdo con las reglas establecidas. (Wikipedia)

En términos simples: imagina una ciudad-fortaleza. Está constantemente atacada desde el exterior, mientras que la vida ordinaria fluye en la ciudad. Para acceder a la ciudad, hay puertas en la muralla de la fortaleza, donde hay guardias revisando listas para ver si pueden dejar pasar a una persona. El papel de la muralla y las puertas en las redes informáticas lo cumple el firewall.

sudo mcedit /etc/sysconfig/iptables

Acabamos de crear el archivo de configuración del firewall. Lo llenaremos con datos estándar de configuración, incluyendo una regla para el puerto 25565, que es el puerto estándar para el servidor de 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

Cerraremos el archivo presionando F10, guardando los cambios.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Ahora iniciamos el firewall y lo habilitamos para que se inicie automáticamente:

sudo systemctl enable iptables
sudo systemctl restart iptables

Almacenaremos los archivos del servidor en una carpeta separada, la crearemos, entraremos en ella y descargaremos los archivos del servidor. Para ello, se debe usar wget

mkdir minecraft
cd minecraft
wget

Es necesario encontrar el enlace directo para la descarga .jar del archivo del servidor. Por ejemplo, el enlace al archivo del servidor versión 1.15.2:

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

Revise el contenido de la carpeta con el comando Muestra el contenido del directorio. Si no se proporciona una ruta, se muestra el contenido del directorio actual., asegúrese de que los archivos han sido descargados.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Iniciaremos el archivo del servidor. Ahora el servidor no funcionará: creará todos los archivos necesarios para operar y mostrará un error por no aceptar los términos de la licencia EULA. Aceptaremos los términos abriendo el archivo eula.txt

sudo mcedit eula.txt

Confirme su aceptación cambiando la entrada a:

eula=true

Abra el archivo server.properties: este es el archivo de configuración de su servidor. Más sobre la configuración del servidor

Es necesario realizar el siguiente cambio:

online-mode=false

El resto de la configuración queda a su criterio.

Iniciando el servidor

Es hora de iniciar el servidor. Como mencioné, el servidor se inicia directamente desde la consola, pero si cerramos la consola principal, el proceso del servidor se detendrá. Por lo tanto, crearemos otra consola:

screen

En esta consola iniciaremos el servidor:

 sudo java -Xms512M -Xmx1024M -jar .jar --nogui

El servidor tarda alrededor de 45 segundos en iniciarse, no interrumpa el proceso. Cuando el servidor esté inicializado y en funcionamiento, verá algo como:

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

¡Felicidades! Acaba de elevar y iniciar su servidor de Minecraft. Ahora es importante salir correctamente de la segunda consola para que continúe funcionando con el servidor en marcha. Para ello, presione Ctrl+A, luego ataques. Debería volver a la consola principal y ver un mensaje como [desvinculado de 1551.pts-0.ip-172-31-37-146]. Si necesita volver a la consola donde se ejecuta el servidor, use screen -r

Ahora puede desconectarse de su VM. Su servidor estará disponible en la dirección IP estática que obtuvimos anteriormente, en el puerto 25565.

Servidor gratuito de Minecraft en AWS sin conocimiento previo de Linux

Por lo tanto, la dirección de acceso al servidor será :25565.

Conclusión

Con esta guía, podrás crear un servidor de minecraft gratuito con IP dedicada sin dificultad. El artículo está escrito en un lenguaje lo más simple posible y está dirigido a no especialistas. Por lo tanto, sería interesante escuchar los comentarios de los expertos, ya que al simplificar el material se pueden cometer errores reales en la terminología.

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster