Avanzato 15 min

Installare pannello e alette Pterodactyl

Procedura completa: richiesta, installazione Pannello/Alimentazione, nodo, phpMyAdmin, MySQL e primi server di gioco.

#Pterodattilo#Wings#Giochi di pannello#Docker.#MySQL

Pronto per iniziare il tuo servizio? Controlla le offerte e ordina online.

Visualizza offerte e ordine

Obiettivo

Installare Pterodactyl Panel e Wings su un VPS Linux (Debian / Ubuntu), quindi configurare un nodo, phpMyAdmin e MySQL in modo pulito e sicuro.

Panel è l'interfaccia web. Wings è il demone che lancia i contenitori Docker dai server di gioco.

Architettura del pannello, ali e server
Pannello → Wings → contenitori di server di gioco
Panoramica del pannello Pterodactyl (catture ufficiali)
Pannello di interfaccia - cattura ufficiale pterodactyl.io
Tempo stimato circa 15 a 25 minuti con un dominio già indicato al VPS. L'installatore fa la maggior parte del lavoro.

Prerequisito

  • VPS Anthony IT Solutions (Debian 11/12 o Ubuntu 22.04/24.04)
  • Accesso radice in SSH (primo collegamento SSH)
  • Minimo consigliato: 2 vCPU / 4 GB RAM / 40GB disk
  • Un dominio (ad es. panel.votredomaine.fr) nella registrazione A all'IP del VPS
  • Porti: 22, 80/443, 8080 (Wings), 2022 (SFTP), + porte di gioco

1. Preparazione del sistema

Accedi come root, aggiorna e riavvia:

apt update apt full-upgrade -y apt install -y bash curl wget sudo unzip nano ca-certificates gnupg reboot

Ricollegare dopo il riavvio e controllare il sistema operativo:

cat /etc/os-release hostnamectl
Firewall Se UFW è attivo, lasciare SSH/HTTP/HTTPS aperto: Configurare UFW.

2. Installare pannello e alette

Avviare l'installatore interattivo:

bash <(curl -s https://pterodactyl-installer.se)
  1. Opzione di installazione

    Prima installazione Panel, poi Wings sulla stessa macchina (ideale per un singolo VPS).

  2. Dominio FQDN

    Ex. panel.votredomaine.fr - il DNS A deve già puntare al VPS.

  3. E-mail & SSL

    Inserisci una e-mail valida e accetti Lets Encrypt.

  4. Database

    Notare la password MySQL / utente del pannello visualizzato dallo script.

  5. Conto di amministrazione

    Creare pannello di amministrazione (e-mail, nome utente, password forte).

Controllare i servizi:

systemctl status nginx systemctl status mariadb systemctl status wings systemctl status docker

Aprire https://panel.votredomaine.fr e accedi con l'account amministratore creato.

3. Configure Node

  1. Affitto

    Admin → Affitti → Nuovo (ex. France / FR-01).

  2. Node

    Admin → Nodi → Creare:

    • Nome : node-01
    • FQDN : lo stesso dominio o node.votredomaine.fr
    • Memory / Disk: lasciare un margine per il sistema
    • Porto di Daemon : 8080
    • Porta SFTP : 2022

  3. Consentizioni

    Aggiungere IP pubblico + un intervallo di porte (ad es. 25565-25600, 30120).

  4. Alette di conflitto

    Aprire il nodo → scheda Configurazione → copiare il YAML visualizzato.

Nodi di amministrazione : elenco dei nodi Pterodactyl
Admin → Nodi: Crea il nodo (Crea Nuovo pulsante). Cuore verde = nodo online
Dettaglio di un nodo Pterodactyl (About)
Scheda di nodo: schede Informazioni / Impostazioni / Configurazione / Allocation / Server

Incolla la configurazione sul VPS:

sudo nano /etc/pterodactyl/config.yml

Poi riavviare le ali:

systemctl restart wings systemctl status wings
config.yml Contiene le ali token Mai condividere. Riavviare wings dopo ogni cambiamento.

4. Porte aperte (UFW)

ufw allow 22/tcp ufw allow 80/tcp ufw allow 443/tcp ufw allow 8080/tcp ufw allow 2022/tcp ufw allow 25565:25600/tcp ufw allow 30120/tcp ufw allow 30120/udp ufw enable ufw status

5. Installare phpMyAdmin (opzionale)

cd /var/www/pterodactyl/public mkdir -p phpmyadmin && cd phpmyadmin wget https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.zip unzip phpMyAdmin-5.2.1-all-languages.zip mv phpMyAdmin-5.2.1-all-languages/* . rm -rf phpMyAdmin-5.2.1-all-languages phpMyAdmin-5.2.1-all-languages.zip cp config.sample.inc.php config.inc.php nano config.inc.php

Definire un blowfish_secret casuale (32+ caratteri):

$cfg['blowfish_secret'] = 'REMPLACEZ_PAR_UNE_CHAINE_ALEATOIRE_32+';

Accesso: https://panel.votredomaine.fr/phpmyadmin

Security Proteggi phpMyAdmin (Basic Auth, IP whitelist o Fail2ban). Non esporre un account MySQL troppo privilegiato.

6. Configurare MySQL / MariaDB

Consigliato ascolto locale:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
bind-address = 127.0.0.1
systemctl restart mariadb

Creare utenti (forte password):

mysql -u root -p
CREATE DATABASE phpmyadmin DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'phpmyadmin'@'localhost' IDENTIFIED BY 'MOT_DE_PASSE_FORT'; GRANT ALL PRIVILEGES ON phpmyadmin.* TO 'phpmyadmin'@'localhost'; CREATE USER 'games'@'localhost' IDENTIFIED BY 'AUTRE_MOT_DE_PASSE_FORT'; GRANT ALL PRIVILEGES ON *.* TO 'games'@'localhost' WITH GRANT OPTION; FLUSH PRIVILEGES; EXIT;
Evitare admin@'%' Un account aperto all'intera rete è pericoloso se la porta 3306 è esposta. Preferito localhost.

7. Creare il primo server di gioco

  1. Uova

    Admin → Nests: scegliere l'egg (Paper, FiveM, ecc.).

  2. Utente

    Admin → Utenti: account cliente (o amministratore per testare).

  3. Server

    Admin → Server → Creare: nodo, allocazione, RAM/CPU/disc, uovo, quindi Avvia.

  4. Base MySQL

    Creare un database dedicato con l'utente games e informarlo nelle variabili del server.

Server di amministrazione: file server Minecraft
Admin → Server: dettagli di un server creato (risorse, nodo, proprietario)

8. Verifica

  • Pannello HTTPS OK
  • Node Collegato
  • systemctl is-active wings docker nginx mariadb → active
  • Il server di test inizia correttamente
journalctl -u wings -n 50 --no-pager docker ps df -h free -h

Risoluzione dei problemi

  • Nodo Offline : token / config.yml / porto 8080 / systemctl restart wings
  • SSL non riuscito: DNS A errato o la porta 80 chiuso
  • Installazione bloccata: Docker, disco completo, uovo non valido
  • MySQL ha rifiutato : utente/host/password o bind-address

Guide correlate