Servidor de Minecraft¶
En este artículo
- Funcionalidades de implementación
- Funcionalidades de implementación
- Requisitos del sistema
- Primeros pasos tras la implementación del servidor de Minecraft
- Gestión de cuentas y servidores de juego en MCSMManager
- Configuración de un proxy inverso para HTTPS
- Pedir un servidor de Minecraft mediante la API
Información
Minecraft Server es un software de servidor que le permite iniciar un servidor de Minecraft multijugador para jugar en línea.
Funcionalidades de implementación¶
- Juego multijugador: el servidor permite conectar y jugar simultáneamente con hasta 255 jugadores;
- Mundo de juego personalizable: el administrador puede crear mundos únicos, instalar plugins y mods;
- Gestión del control de acceso: capacidad de asignar diferentes derechos a los jugadores en diferentes partes del mundo;
- Protección contra griefers: herramientas para proteger el mundo del vandalismo de los jugadores;
- Copia de seguridad: guardado automático del mundo del servidor para prevenir la pérdida de datos;
- Múltiples mundos: opcionalmente, puede iniciar múltiples mundos diferentes en un solo servidor;
- API: un conjunto de interfaces para que el servidor interactúe con otras aplicaciones;
- Monitoreo: seguimiento de usuarios en línea, actividad, registros de eventos;
- Rendimiento: optimizado para funcionar en un servidor dedicado con un gran número de jugadores.
Funcionalidades de implementación¶
| ID | Nombre del Software | SO Compatible | VM | BM | VGPU | GPU | CPU Mín. (Núcleos) | RAM Mín. (GB) | HDD/SSD Mín. (GB) | Dominio Personalizado | Activo |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 65 | Minecraft: Java Edition Server | Ubuntu 22.04 | + | + | + | - | 1 | 1 | - | No | PEDIR |
- Instalación automática de MCSMManager: un servicio de gestión de clústeres para servidores de Minecraft que le permite:
- Iniciar, detener y reiniciar servidores de Minecraft automáticamente;
- Monitorear el estado del servidor y recibir alertas;
- Gestionar plugins, mods y configuraciones en los servidores;
- Actualizar las versiones del servidor y de los plugins;
- Equilibrar la carga entre los servidores del clúster;
- Realizar copias de seguridad de mundos y datos del servidor;
- Restaurar servidores desde copias de seguridad;
- Escalar el clúster añadiendo o eliminando servidores.
- Tras instalar MCSMManager, se crea la siguiente estructura de directorios en
/opt/mcsmanager/: daemon/- catálogo del servicio daemon, incluyendo:data/Config/global.json- el archivo de configuración global del servicio.
web/- catálogo de la interfaz web;start-daemon.sh- script de inicio del daemon;start-web.sh- script de inicio de la interfaz web;usage.txt- documentación de uso.- Se utilizan catálogos y archivos adicionales para configurar HTTPS y gestionar certificados:
/var/lib/docker/volumes/nginx_secrets- un almacén de secretos, como claves y certificados para Nginx, organizado a través de Docker Volumes;/data/nginx- el catálogo principal para almacenar la configuración de Nginx y archivos relacionados;user_conf.d/- un subdirectorio para configuraciones personalizadas de Nginx;nginx-certbot.env- un archivo de entorno que contiene variables para Certbot para operar automáticamente con Nginx;
/root/nginx- un catálogo donde pueden ubicarse copias de seguridad o configuraciones adicionales de Nginx gestionadas manualmente.
Nota
A menos que se especifique lo contrario, instalamos la última versión de lanzamiento del software desde el sitio web del desarrollador o los repositorios del sistema operativo.
Requisitos del sistema¶
Los requisitos de recursos para Minecraft aumentan a medida que crece el número de jugadores en el servidor. Los grupos de juego grandes requieren más RAM y espacio en disco. Requisitos del sistema recomendados para un servidor de Minecraft:
- Procesador (CPU): 2 núcleos o más, idealmente 2 GHz o superior;
- RAM: mínimo 2 GB para 1-2 jugadores, 5 GB para 3-6 jugadores, 8 GB para 6+ jugadores;
- Sistema operativo: Minecraft está disponible para todos los sistemas operativos populares, pero el SO requiere recursos adicionales;
- Espacio en disco: mínimo 2 GB para 1-2 jugadores, 18 GB para 3-5 jugadores, 35 GB para 6+ jugadores.
Primeros pasos tras la implementación del servidor de Minecraft¶
Tras pagar su pedido, recibirá una notificación en el correo electrónico con el que se registró, informándole de que su servidor está listo para funcionar. Contendrá la dirección IP del VPS, así como un nombre de usuario y contraseña para la conexión. Los clientes de nuestra empresa gestionan el hardware en el panel de control de servidores y API — Invapi.
Los datos de autorización que se pueden encontrar en la pestaña Configuration >> Tags del panel de control del servidor o en el correo electrónico son:
- Link: en la etiqueta webpanel;
- Login y Password llegan en un correo electrónico a su buzón después de que se despliegue el software cuando su servidor esté listo para funcionar.
Gestión de cuentas y servidores de juego en MCSMManager¶
La primera vez que haga clic en el enlace de la etiqueta webpanel, se le pedirá que configure el panel de control y cree una cuenta de administrador. El proceso de configuración inicial consta de los siguientes pasos:
-
En la ventana abierta, haga clic en el botón
Start. -
Cree una cuenta de administrador rellenando los campos obligatorios.
-
Indique su estado de usuario:
- Nuevo usuario (primera vez que utiliza el sistema)
- Usuario existente
-
Seleccione el tipo de aplicación para el despliegue (por ejemplo, servidor de juego Minecraft Bedrock Edition).
Nota
Por defecto, el sistema se instala con Open JRE 17, lo cual debe tenerse en cuenta al elegir y desplegar el servidor de juego. Al instalar versiones modernas de Minecraft, primero debe actualizar Java a una versión compatible.
-
Especifique el equipo objetivo para instalar la aplicación.
-
Defina el método de despliegue:
- Instalación rápida de Minecraft
- Despliegue a través de imágenes de Docker
- Otras opciones disponibles
-
Seleccione la versión del software:
- Minecraft 1.21.1
- Minecraft 1.20.1
- Forge 1.20.6
- Otras versiones disponibles.
-
Espere a que finalice la instalación.
Configuración del nodo remoto¶
Una vez finalizada la instalación, configure el nodo remoto:
- Vaya a la sección Nodes en el menú lateral;
- Haga clic en el botón
Add Nodeo seleccione uno existente para editarlo; -
Configure la conexión al nodo remoto:
- Introduzca el nombre del nodo (por ejemplo,
minecraft{SERVER_ID}); - Introduzca la dirección de conexión (
wss://minecraft{SERVER_ID}.hostkey.com); - Establezca el puerto de conexión (12444);
- Deje el campo Remote Node Key en blanco a menos que se requieran configuraciones especiales.

- Introduzca el nombre del nodo (por ejemplo,
-
Haga clic en el botón
SaveoUpdate; - Como resultado, el estado del nodo debería cambiar a Up:

Creación y gestión de un servidor de juego¶
-
Cree una instancia de servidor:
- Vaya a la sección Instances en el menú lateral;
- Haga clic en el botón
Create Instance; -
En la ventana abierta, seleccione:
- Node: seleccione el nodo configurado previamente:

- Server type: por ejemplo, MC Java Edition Server:




- Instance name: introduzca el nombre deseado (por ejemplo,
minecraft{SERVER_ID}vanilla):

-
Haga clic en el botón
Ok; - Tras la creación, la instancia aparecerá en la lista con el nombre especificado.
-
Configuración inicial del servidor:
- Seleccione la instancia creada en la lista;
- Vaya a la pestaña Configuration Files:

- Busque y edite el archivo
eula.txt:- Cambie el valor de eula=false a eula=true para aceptar el acuerdo de licencia;
- Guarde los cambios:


- Vuelva a la pestaña Overview o Console.
-
Inicio y monitoreo del servidor:
- Haga clic en el botón
Launchen la página de la instancia:

- En la consola del servidor, siga el proceso de carga;
- Preste atención a los mensajes de error o advertencias;
- Tras la carga completa, la consola mostrará el mensaje Done con el tiempo de carga indicado.
- Haga clic en el botón
-
Gestión de un servidor en ejecución:
- En la sección Basic Information, se muestran los siguientes elementos:
- Server Name;
- Hora de inicio del trabajo;
- Número de reinicios;
- Codificación de salida (UTF-8);
- Estado del servidor (Online/Offline);
- Uso de recursos (CPU, RAM).
- En la sección Basic Information, se muestran los siguientes elementos:
-
Configuración del servidor:
- Vaya a la pestaña Configuration Files;
- Busque y edite el archivo server.properties:
- gamemode: modo de juego (supervivencia, creativo, aventura);
- difficulty: dificultad (pacífica, fácil, normal, difícil);
- pvp: activar/desactivar PvP (true/false);
- max-players: número máximo de jugadores;
- server-port: puerto del servidor;
- level-name: nombre del mundo;
- view-distance: distancia de renderizado;
- accepts-transfers: transferencia de archivos (true/false);
- allow-flight: permitir vuelo (true/false);
- allow-nether: acceso al Nether (true/false);
- broadcast-console-to-ops: enviar mensajes de consola a operadores (true/false);
- broadcast-rcon-to-ops: enviar mensajes RCON a operadores (true/false);
- Guarde los cambios y reinicie el servidor para aplicar la configuración.
Nota
Información detallada sobre la configuración principal de MCSMManager está disponible en la documentación del desarrollador.
Configuración de un proxy inverso para HTTPS¶
Atención
Configurar HTTPS es una tarea compleja que requiere conocimientos profesionales en tecnologías de red. Desaconsejamos encarecidamente a los usuarios habituales intentar configurar manualmente una conexión HTTPS. Antes de proceder, asegúrese de comprender completamente la arquitectura de red del sistema y los principios de trabajo con certificados SSL. Una configuración incorrecta puede provocar un funcionamiento inestable del servidor o la pérdida total de acceso al panel de control.
Configurar un proxy inverso para HTTPS es importante para garantizar la seguridad, el rendimiento y la facilidad de gestión del servidor. Cifra el tráfico, evitando la interceptación de datos, y también enruta las solicitudes, proporcionando equilibrio de carga y fiabilidad. El proxy centraliza la gestión de certificados SSL, simplifica la configuración del servidor y puede almacenar datos en caché, mejorando el rendimiento. Sin embargo, si el sistema no requiere alta seguridad, carga o infraestructura compleja (por ejemplo, para pruebas locales o proyectos pequeños), puede prescindir de configurar un proxy inverso.
Paso 1: Preparación de certificados SSL
Si ya tiene un certificado SSL (por ejemplo, uno autofirmado o de una Autoridad de Certificación externa), puede utilizarlo. De lo contrario, siga estos pasos:
-
Obtención del certificado:
-
Para un certificado autofirmado, utilice el comando:
Si el certificado se obtuvo de Let's Encrypt u otra Autoridad de Certificación, asegúrese de que los archivosopen ssl req -x509 -newkey rsa:4096 -keyout /data/nginx/ssl/domain.key -out /data/nginx/ssl/domain.crt -sha256 -days 365.crty.keyestén en el directorio/data/nginx/ssl/.
-
Nota
El proceso de emisión de certificados SSL para un servidor en MCSMManager se basa en el uso de un contenedor Docker y la herramienta Certbot para obtener automáticamente certificados de Let’s Encrypt. Más detalles sobre la obtención instantánea y actualización de certificados SSL de Let's Encrypt se describen en el artículo Free Domain Certbot
- Preparación del directorio para almacenar certificados:
-
Asegúrese de que los certificados estén en un directorio seguro, por ejemplo:
-
Paso 2: Preparación de la configuración de Nginx
-
Creación de configuración para el daemon:
En el directorio donde se encuentran los archivos de configuración de Nginx (
/data/nginx/user_conf.do similar), cree un archivo de configuración para el daemon.Ejemplo de configuración para el daemon (
daemon_https.conf):```nginx server { listen 12444 ssl http2; listen [::]:12444 ssl http2;
ssl_certificate /data/nginx/ssl/domain.crt; ssl_certificate_key /data/nginx/ssl/domain.key;
location / { proxy_pass http://127.0.0.1:24444; proxy_set_header Host $host; proxy_set_header X-Real-Ip $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; } }
**Creación de configuración para el panel**: Ejemplo de configuración para el panel (`web_https.conf`): ```nginx server { listen 12333 ssl http2; listen [::]:12333 ssl http2; ssl_certificate /data/nginx/ssl/domain.crt; ssl_certificate_key /data/nginx/ssl/domain.key; location / { proxy_pass http://127.0.0.1:23333; proxy_set_header Host $host; proxy_set_header X-Real-Ip $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; } } -
Activación de configuraciones:
Para que Nginx utilice estas configuraciones, cree enlaces simbólicos en el directorio
/data/nginx/user_conf.d/(o en otro donde se almacenen las configuraciones activas):ln -s /data/nginx/user_conf.d/daemon_https.conf /etc/nginx/sites-enabled/ ln -s /data/nginx/user_conf.d/web_https.conf /etc/nginx/sites-enabled/O, si desea añadir las configuraciones directamente al archivo
nginx.conf, ábralo y añada los bloques de configuración antes de la última llave de cierre}:
Paso 3: Verificación y reinicio de Nginx
-
Verificación de la configuración:
Antes de reiniciar Nginx, asegúrese de que la configuración es correcta, utilice el comando:
Si todo está correcto, verá el mensaje:
-
Reinicio de Nginx:
Tras verificar correctamente la configuración, reinicie Nginx para aplicar los cambios:
Paso 4: Configuración de redirección automática de HTTP a HTTPS
Para garantizar que todas las solicitudes HTTP se dirijan automáticamente a HTTPS, cree una configuración adicional para la redirección:
-
Configuración de redirección de HTTP a HTTPS:
En la configuración de Nginx, añada un servidor que escuchará en el puerto 80 (HTTP) y redirigirá todas las solicitudes a HTTPS:
Paso 5: Conexión y verificación
-
Conexión vía HTTPS:
Tras recargar Nginx, verifique la disponibilidad de sus servicios vía HTTPS:
- Panel de control:
https://your-domain.com:12333/ - Daemon:
https://your-domain.com:12444/
- Panel de control:
-
Configuración de WebSocket:
Si su aplicación utiliza WebSocket para interactuar con daemons, asegúrese de que sus configuraciones de proxy admiten correctamente WebSocket:
En la configuración de Nginx, añada:
-
Verificación de la conexión:
Si todo está configurado correctamente, debería ver conexiones HTTPS funcionando correctamente. El panel de control mostrará la página de inicio de sesión, y el daemon mostrará el estado "OK".
Nota
Información detallada sobre la configuración de un proxy inverso para HTTPS se puede encontrar en la documentación del desarrollador.