Saltar a contenido

Pterodactyl Control Panel

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 servidores de juegos populares. Configura automáticamente el software, las dependencias y los parámetros de inicio, admite la selección de la versión del juego y la adición de plantillas personalizadas.
  • Gestión precisa de recursos: Controla la RAM, la CPU, el 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 de seguridad localmente o en la nube (S3, FTP, GDrive) con cifrado y recuperación instantánea.
  • Capacidad multiserver eficiente: Ejecuta cada servidor en un contenedor Docker aislado. Distribuye automáticamente la carga entre los nodos, asigna puertos sin conflictos y permite la agrupación de 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 servidores de juegos según el cronograma con modo de prueba y reversión (rollback) 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. Actualiza automáticamente 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

Componentes principales del sistema:

Componente Propósito
Panel Interfaz de gestión web (PHP/Laravel). Proporciona el panel de administración e interfaz de usuario para la gestión de servidores
Wings Daemon para el inicio de servidores de juegos físicos (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 contenerización, requerida 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 la 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 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 de la 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:

  • Enlace: en la etiqueta webpanel. Para acceder al panel de administración, añada /admin al enlace 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 :

Creación de 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 otorgar derechos de administrador;
  5. Haga clic en Create User:

Creación de una ubicación

Qué es una Location

Una Location es una agrupación lógica de nodos por ubicación geográfica o propósito. Se utiliza para organizar servidores, por ejemplo: "EU", "US", "Asia", "Production", "Testing". Los usuarios no ven las ubicaciones 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 de ubicación corto (p. ej., "US1", "EU1");
    • Description: descripción de la ubicación (p. ej., "Data center in the USA");
  4. Haga clic en Create:

Creación de un Nodo

Qué es un Nodo

Un Nodo 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 Nodo

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 un nombre de dominio para el nodo;
  • Los puertos 8080 (Wings API) y 12333 (comunicación Wings/Daemon SSL) estén abiertos en el firewall.

Creación de 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 la 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 si el nodo no está detrás de un proxy.
  4. Configure la 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: Importante al usar HTTPS

Si el Panel opera sobre 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 ajustes para una 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

Configuración de 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 juego.

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).

Instalación de 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:

Cree un directorio para la configuración:

mkdir -p /etc/pterodactyl
Descargue Wings:

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

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

wings version

Debería aparecer la versión de Wings (p. ej., wings vv1.12.1).

Configuración de 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
    

Creación de 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

Inicio de Wings

Recargue la configuración de systemd

systemctl daemon-reload
Habilite el inicio automático e inicie Wings

systemctl enable --now wings
Compruebe el estado

systemctl status wings

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

Comprobación de funcionamiento

Compruebe 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.

Verifique 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. Actualice 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 aparecer la información de recursos (CPU, RAM, Disco).

Si el Nodo muestra estado Online

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

Resolución de problemas

El Nodo muestra estado Offline

Compruebe el estado de Wings:

systemctl status wings

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

systemctl start wings

Compruebe 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.

Creación de un Nido y adición de un Huevo

Creación de un Nido

  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 nido (p. ej., "Minecraft");
    • Description: descripción del nido;
  4. Haga clic en Save:

Descarga de un Huevo 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. Encuentre 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).

Huevos populares

Importación del Huevo 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.

Verificación del Huevo 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 los siguientes campos estén completados:

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

Creación de 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:

Detalles principales:

  • 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.

Gestión de asignaciones:

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

Límites de funciones de la aplicación:

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

Gestión de recursos:

  • 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.

Configuración de Nest:

  • 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 se complete la instalación (el estado Installing cambiará a Offline):

Inicio y configuración del 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/<dirección IP>:25565
Si la respuesta muestra "online": true, el servidor está funcionando y es accesible para los jugadores.

Dirección de conexión:

<dirección IP>: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 ×