Saltar a contenido

Panel de control de Pterodactyl

En este artículo

Información

Pterodactyl es un panel de gestión de servidores de juegos de código abierto y gratuito. Permite la gestión centralizada de servidores para Minecraft, CS2, Rust y más de 50 juegos adicionales a través de una interfaz web.

Pterodactyl. Funcionalidades principales

Pterodactyl es una solución moderna de gestión de servidores de juegos que combina:

  • Soporte para más de 50 juegos: Proporciona plantillas prediseñadas para una instalación rápida de los servidores de juegos más populares. Configura automáticamente el software, las dependencias y los parámetros de inicio; admite la selección de versiones del juego y la adición de plantillas personalizadas.
  • Gestión precisa de recursos: Controla la RAM, CPU, espacio en disco y la asignación de prioridad entre servidores. Evita sobrecargas, asigna recursos por cuotas y utiliza memoria SWAP para mayor estabilidad.
  • Copias de seguridad automáticas fiables: Garantiza copias de seguridad programadas y flexibles con selección de datos (servidor completo o archivos clave). Almacena las copias en local o en la nube (S3, FTP, GDrive) con cifrado y recuperación instantánea.
  • Capacidad multi-servidor eficiente: Ejecuta cada servidor en un contenedor Docker aislado. Distribuye automáticamente la carga entre los nodos, asigna puertos sin conflictos y permite agrupar servidores relacionados.
  • Acceso multiusuario flexible: Gestiona los permisos mediante un modelo basado en roles (roles preestablecidos + personalizados) con más de 50 permisos granulares. Admite acceso temporal, auditoría de acciones y autenticación de dos factores.

  • Consola de gestión en tiempo real: Proporciona un control total a través de una interfaz web con una terminal interactiva (similar a SSH). Incluye formato de color, historial de comandos, botones de acción rápida y notificaciones de eventos.

  • Monitorización de estadísticas en tiempo real: Muestra gráficos de uso de recursos (CPU, RAM, disco, red) y métricas del juego (jugadores conectados, TPS, ping). Permite crear paneles personalizados, configurar alertas y exportar datos a CSV.
  • Gestión simplificada de mods/plugins: Ofrece una tienda integrada para la instalación automática de mods, gestión de versiones y dependencias. Incluye un editor de configuración visual con resaltado de sintaxis y notificaciones de actualización.
  • Actualizaciones automáticas: Garantiza el funcionamiento ininterrumpido del sistema. Actualiza los game servers según el cronograma con modo de prueba y reversión en caso de errores. Actualiza el control panel con un solo comando (php artisan p:upgrade), comprobando la compatibilidad y migrando la base de datos sin pérdida de datos. Auto-actualiza el daemon Wings, manteniendo la compatibilidad con diferentes distribuciones de Linux.

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
326 Pterodactyl Ubuntu 22.04 + + + + 1 1 - No PEDIR

Para obtener información sobre las funcionalidades de implementación de este software, consulte este enlace.

Componentes principales del sistema:

Componente Propósito
Panel Interfaz de gestión web (PHP/Laravel). Proporciona el panel de administración y la interfaz de usuario para la gestión de servidores
Wings Daemon para el inicio físico del servidor de juegos (Go). Se instala por separado en las máquinas donde se ejecutarán los servidores de juegos
Database MariaDB para almacenar configuraciones, usuarios, servidores y ajustes
Docker Plataforma de contenedores, necesaria para el funcionamiento de Wings y el aislamiento de los servidores de juegos

Archivos de configuración

Ruta Propósito
/var/www/pterodactyl/.env Ajustes principales del Panel: conexión a la base de datos, Redis, APP_URL, APP_KEY
/var/www/pterodactyl/storage/logs/laravel.log Registros de operación del Panel (errores de aplicación, peticiones)
/var/log/nginx/pterodactyl.app-error.log Registros del servidor web NGINX para el Panel
/etc/pterodactyl/config.yml Configuración de Wings: token de autorización, URL del Panel, ajustes de Docker. Se crea durante la instalación de Wings
/var/lib/pterodactyl/volumes/ Directorio de datos del servidor de juegos: archivos de mundo, configuraciones, plugins. Se crea tras la instalación de Wings

Recomendaciones de recursos para juegos

Requisitos aproximados por servidor de juego:

Juego RAM CPU Disco
Minecraft (Vanilla/Paper) 2-4 GB 2+ núcleos 5-10 GB
Minecraft con mods (Forge/Fabric) 4-8 GB 4+ núcleos 10-20 GB
CS2 / CS:GO 4-6 GB 4+ núcleos 15-20 GB
Rust 8-12 GB 4+ núcleos 20-30 GB
ARK: Survival Evolved 8-16 GB 6+ núcleos 30-50 GB
Terraria 1-2 GB 2+ núcleos 2-5 GB
Valheim 4-6 GB 4+ núcleos 5-10 GB

Primeros pasos tras la implementación de Pterodactyl

Después de 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 usuario y contraseña para la conexión. Los clientes de nuestra empresa gestionan el hardware en los servidores y el panel de control APIInvapi.

Los datos de autorización que pueden encontrarse en la pestaña Configuration >> Tags del panel de control del servidor o en el correo electrónico son:

  • Link: en la etiqueta webpanel. Para acceder al panel de administración, añada /admin a la URL principal;
  • Login: admin;
  • Password: enviado por correo electrónico a su dirección cuando el servidor esté listo para operar tras la implementación del software.

Primer inicio de sesión

  1. Abra un navegador web y navegue hasta la dirección de su panel Pterodactyl
  2. Haga clic en Login:

  3. Tras una autorización correcta, se le dirigirá a la página principal del panel.

  4. Para acceder al panel de administración, haga clic en el botón :

Crear un usuario

  1. En el menú de la izquierda del panel de administración, haga clic en el nombre de la sección Users;
  2. Haga clic en el botón Create New en la esquina superior derecha:

  3. Complete los campos requeridos:

    • Username: nombre de usuario;
    • Email: dirección de correo electrónico del usuario;
    • First Name: nombre;
    • Last Name: apellidos;
    • Password: contraseña (mínimo 8 caracteres, debe contener letras de diferentes mayúsculas/minúsculas y números);
  4. Si es necesario, seleccione Yes en la línea Administrator para conceder derechos de administrador;
  5. Haga clic en Create User:

Crear una ubicación (Location)

Qué es una Location

Una Location es un grupo lógico de nodos por ubicación geográfica o propósito. Se utiliza para organizar servidores, por ejemplo: "EU", "US", Asia, Producción, Pruebas. Los usuarios no ven las Locations directamente; esta es una herramienta administrativa.

  1. En el menú de la izquierda, seleccione Locations;
  2. Haga clic en el botón Create New en la esquina superior derecha:

  3. Complete los campos:

    • Short Code: código corto de la ubicación (p. ej., "US1", "EU1");
    • Description: descripción de la ubicación (p. ej., "Data center in the USA");
  4. Haga clic en Create:

Crear un nodo (Node)

Qué es un Node

Un Node es un servidor físico o virtual en el que se lanzan servidores de juegos a través de Wings. Cada nodo tiene sus propios recursos (CPU, RAM, disco) y puede servir múltiples servidores de juegos simultáneamente.

Preparación antes de crear un Node

Antes de crear un nodo, asegúrese de que:

  • Docker esté instalado en el servidor (preinstalado en las imágenes de HOSTKEY);
  • Tenga una dirección IP o nombre de dominio para el nodo;
  • Los puertos 8080 (Wings API) y 12333 (comunicación Wings/Daemon SSL) estén abiertos en el firewall.

Crear un nodo en el Panel

  1. En el menú de la izquierda del panel de administración, seleccione Nodes;

  2. Haga clic en el botón Create New en la esquina superior derecha:

  3. Complete los basic settings:

    • Name: nombre único del nodo (p. ej., hostkey-us-node1);
    • Location: seleccione la ubicación creada previamente;
    • Public: marque la casilla si el nodo debe ser visible para los usuarios;
    • FQDN: especifique el nombre de dominio del panel (p. ej., pterodactyl50514.hostkey.in) o la dirección IP;
    • Communicate Over SSL: marque la casilla si el Panel utiliza HTTPS;
    • Behind Proxy: deje deshabilitado if el nodo no está detrás de un proxy.
  4. Configure los resource settings:

    • Daemon Server File Directory: /var/lib/pterodactyl/volumes (no cambie esto);
    • Total Memory: especifique la RAM disponible en MB (p. ej., 4608 para un servidor de 6GB teniendo en cuenta la reserva);
    • Memory Over-Allocation: especifique 0 (sin sobreasignación);
    • Total Disk Space: especifique el espacio en disco disponible en MB (p. ej., 102400 para un disco de 120GB teniendo en cuenta la reserva);
    • Disk Over-Allocation: especifique 0 (sin sobreasignación);
    • Daemon Port: 8080 (deje el valor por defecto);
    • Daemon SFTP Port: 2022 (deje el valor por defecto).

  5. Haga clic en el botón Create Node.

Atención al usar HTTPS

Si el Panel opera mediante HTTPS, debe especificar un nombre de dominio en el campo FQDN, no una dirección IP. Especificar una dirección IP con SSL habilitado resultará en un error de validación.

Ejemplo de configuración All-in-One (4 vCore / 6GB RAM / 120GB SSD)

    Name: hostkey-us-node1
    Location: US1
    Public:     FQDN: pterodactyl50514.hostkey.in
    Communicate Over SSL:     Behind Proxy: 
    Total Memory: 4608 MB (dejando 1.5GB para el sistema)
    Memory Over-Allocation: 0
    Total Disk Space: 102400 MB (dejando 20GB para el sistema)
    Disk Over-Allocation: 0

Configurar asignaciones (Allocations)

Después de crear un nodo, debe configurar las Allocations; estas son combinaciones de direcciones IP y puertos que estarán disponibles para ser asignadas a los servidores de juegos.

  1. Tras crear el nodo, su página se abrirá automáticamente. Navegue hasta la pestaña Allocation;

  2. En la sección Assign New Allocations (lado derecho), complete los campos:

    • IP Address: introduzca la dirección IP del servidor;
    • IP Alias: especifique una descripción (p. ej., Main IP) o deje en blanco;
    • Ports: especifique un rango de puertos (p. ej., 25565-25570 para servidores de Minecraft).
  3. Haga clic en el botón verde Submit:

  4. Las Allocations creadas aparecerán en la tabla Existing Allocations (lado izquierdo). Cada fila representa una combinación IP:puerto independiente que puede asignarse a un servidor de juegos.

Nota

Sin configurar las Allocations, no podrá crear servidores en este nodo. Debe añadir al menos una dirección IP con puertos.

Recomendaciones de puertos

  • Minecraft: 25565-25570 (puerto estándar 25565);
  • CS2/CS:GO: 27015-27020 (puerto estándar 27015);
  • Rust: 28015-28020 (puerto estándar 28015);
  • Valheim: 2456-2460 (puerto estándar 2456).

Instalar Wings

Atención: Crítico para el funcionamiento

Después de crear un nodo y configurar las Allocations, debe instalar Wings en el servidor. Sin Wings, el nodo mostrará el estado Offline y no podrá iniciar servidores de juegos.

Conéctese al servidor vía SSH y ejecute los siguientes comandos:

Crear un directorio para la configuración:

mkdir -p /etc/pterodactyl
Descargar Wings:

curl -L -o /usr/local/bin/wings "https://github.com/pterodactyl/wings/releases/latest/download/wings_linux_amd64"
Otorgar permisos de ejecución:

chmod u+x /usr/local/bin/wings
Verificar la instalación:

wings version

Se debería mostrar la versión de Wings (p. ej., wings vv1.12.1).

Configurar Wings mediante Auto-Deploy (Recomendado)

  1. En el panel de administración, vaya a la pestaña Configuration del nodo creado;

  2. En la sección Auto-Deploy (lado derecho), haga clic en el botón Generate Token:

  3. Copie el comando generado. Debería ser algo parecido a esto:

        cd /etc/pterodactyl && wings configure --panel-url https://your-domain.com --token TOKEN --node 1
    

  4. Ejecute el comando copiado en el servidor:

        cd /etc/pterodactyl && wings configure --panel-url https://pterodactyl50514.hostkey.in --token TOKEN --node 1
    

    Debería aparecer el mensaje: Successfully configured wings.

  5. Verifique la configuración creada:

        cat /etc/pterodactyl/config.yml
    

Crear un servicio systemd

Cree un servicio systemd para el inicio automático de Wings:

cat > /etc/systemd/system/wings.service <<'EOF'
[Unit]
Description=Pterodactyl Wings Daemon
After=docker.service
Requires=docker.service
PartOf=docker.service

[Service]
User=root
WorkingDirectory=/etc/pterodactyl
LimitNOFILE=4096
PIDFile=/var/run/wings/daemon.pid
ExecStart=/usr/local/bin/wings
Restart=on-failure
StartLimitInterval=180
StartLimitBurst=30
RestartSec=5s

[Install]
WantedBy=multi-user.target
EOF

Iniciar Wings

Recargar la configuración de systemd:

systemctl daemon-reload
Habilitar el inicio automático e iniciar Wings:

systemctl enable --now wings
Comprobar el estado:

systemctl status wings

El estado debería mostrar Active: active (running).

Comprobación de funcionamiento

Ver los logs de Wings:

journalctl -u wings -n 50

Los logs deberían contener mensajes como:

  • fetching list of servers from API - Wings conectado al Panel;
  • configuring internal webserver - El servidor web de Wings se ha iniciado;
  • sftp server listening for connections - El servidor SFTP está funcionando.

Verificar la creación del directorio del servidor:

ls -la /var/lib/pterodactyl/volumes/

Comprobación de estado en el Panel de Administración

  1. Abra el panel de administración: https://your-domain.com/admin;
  2. Navegue a: Admin > Nodes > su nodo;
  3. Refresque la página (F5);
  4. El indicador de estado verde Online debería aparecer en la esquina superior derecha;
  5. En la pestaña About, debería mostrarse la información de recursos (CPU, RAM, Disco).

Si el Node muestra estado Online

¡El nodo está totalmente configurado y listo para crear servidores de juegos!

Resolución de problemas

El Node muestra estado Offline

Compruebe el estado de Wings:

systemctl status wings

Si Wings no se está ejecutando, inícielo:

systemctl start wings

Revise los logs en busca de errores:

journalctl -u wings -n 100

Problemas comunes:

  1. Wings no puede conectarse al Panel:

    • Compruebe la URL del panel en la configuración: cat /etc/pterodactyl/config.yml | grep remote;
    • Asegúrese de que el Panel sea accesible: curl -I https://your-domain.com.
  2. El puerto 8080 está bloqueado por el firewall:

    • Compruebe el puerto: netstat -tulpn | grep 8080;
    • Abra el puerto: ufw allow 8080/tcp.
  3. Problemas de SSL:

    • Si el Panel utiliza HTTPS, Wings también debe funcionar con SSL;
    • Compruebe los ajustes de SSL en /etc/pterodactyl/config.yml.

Configuración manual (Método alternativo)

Si el Auto-Deploy no funciona, puede configurar Wings manualmente:

  1. En el panel de administración, vaya a la pestaña Configuration del nodo;
  2. Copie el contenido del archivo de configuración del campo de texto de la izquierda;
  3. En el servidor, cree un archivo de configuración:

    nano /etc/pterodactyl/config.yml
    

  4. Pegue la configuración copiada y guarde (Ctrl+X, luego Y, luego Enter);

  5. Reinicie Wings: systemctl restart wings;
  6. Compruebe el estado: systemctl status wings.

Crear un nido (Nest) y añadir un huevo (Egg)

Crear un nido (Nest)

  1. En el menú de la izquierda, seleccione la sección Nests;
  2. Haga clic en el botón Create New en la esquina superior derecha:

  3. Complete los campos:

    • Name: nombre del nest (p. ej., "Minecraft");
    • Description: descripción del nest;
  4. Haga clic en Save:

Descargar un Egg ya preparado

  1. Abra el sitio web https://pelican-eggs.github.io/;

  2. Busque el juego deseado:

    • En la sección Game Eggs, seleccione una categoría (p. ej., Minecraft);
    • Busque el tipo de servidor deseado (p. ej., Paper, Vanilla, Forge);
  3. Haga clic en el nombre del servidor para abrir la página de GitHub;

  4. Busca el archivo egg-name.json (p. ej., egg-paper.json);

  5. Haga clic en el archivo y luego en el botón Raw en la esquina superior derecha;

  6. Guarde el archivo (Ctrl+S o clic derecho > Save as).

Eggs populares

Importar el Egg al Panel

  1. En el panel de administración, vaya a la sección Nests;

  2. Haga clic en el botón Import Egg en la esquina superior derecha:

  3. Haga clic en Choose File y seleccione el archivo .json descargado;

  4. Haga clic en Import:

El egg se importará con todos los ajustes, imágenes de Docker y variables.

Verificar el Egg importado

  1. En la lista de eggs, busque el importado (p. ej., Paper);

  2. Haga clic en él para ver los ajustes;

  3. Asegúrese de que lo siguiente esté completado:

    • Docker Images: lista de imágenes disponibles;
    • Install Script: script de instalación del servidor;
    • Variables: variables de entorno (versión, ajustes).

Crear un servidor

  1. En el menú de la izquierda, seleccione Servers;

  2. Haga clic en el botón Create New en la esquina superior derecha:

  3. Complete el formulario de creación:

Core Details:

  • Server Name: nombre del servidor (p. ej., Test Minecraft Server);
  • Server Owner: seleccione el usuario propietario de la lista;
  • Server Description: descripción (opcional);
  • Start Server when Installed: deje la casilla marcada.

Allocation Management:

  • Node: seleccione el nodo creado;
  • Default Allocation: seleccione IP:puerto de la lista;
  • Additional Allocations: deje en blanco.

Application Feature Limits:

  • Database Limit: 0;
  • Allocation Limit: 0;
  • Backup Limit: 0.

Resource Management:

  • CPU Limit: 0 (sin límites);
  • Memory: 2048 MiB (2GB para empezar);
  • Swap: 0 MiB;
  • Disk Space: 5120 MiB (5GB);
  • **Block IO Weight:500`;
  • Enable OOM Killer: deje deshabilitado.

Nest Configuration:

  • Nest: Minecraft;
  • Egg: Paper (¡no Sponge!);
  • **Docker Image:Java 21`;
  • Service Variables: deje los valores por defecto.

  • Haga clic en Create Server al final de la página;

  • Espere a que termine la instalación (el estado Installing cambiará a Offline):

Iniciar y configurar el servidor

  1. Tras la instalación, abra el servidor desde la lista (Admin > Servers):

  2. Vaya al panel de usuario (sin /admin), inicie sesión como el propietario del servidor;

  3. Haga clic en el botón Start:

  4. En el primer inicio, aparecerá una ventana de aceptación de licencia:

  5. Haga clic en I Accept para aceptar el EULA de Minecraft;

  6. Espere a que el servidor se inicie (el estado cambiará a Running):

Comprobación de rendimiento

Abra en su navegador (reemplace la IP por la suya):

https://api.mcsrvstat.us/3/<IP address>:25565
Si la respuesta muestra "online": true, el servidor está funcionando y es accesible para los jugadores.

Dirección de conexión:

<IP address>:25565

Nota

La información detallada sobre los ajustes principales de Pterodactyl se encuentra en la documentación para desarrolladores.

Pedir un servidor Pterodactyl mediante la API

Para instalar este software utilizando la API, siga estas instrucciones.

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×