Installare il proprio server Minecraft nel 2026: guida completa
Credit: Mojang Studios / Microsoft
Guida completa

Installare il proprio server Minecraft nel 2026: guida completa

Fabian Fabian Lainé
Seguici su

In breve

Configurare il proprio server Minecraft Java nel 2026 sul cloud non è più roba solo per esperti: questa guida completa vi accompagna passo dopo passo nella creazione di un'istanza sicura presso Scaleway (o qualsiasi altro fornitore) per circa 20 EUR/mese, senza limiti di plugin né controllo di sistema. Due ore, qualche comando Linux, e avrete un vero server stabile con backup automatici.

Voglia di giocare a Minecraft con i tuoi amici, la tua classe o la tua community senza passare da un hosting chiavi in mano che vi limita i plugin e vi fa pagare 15 EUR al mese per 2 GB di RAM? Buona notizia: nel 2026, mettere in piedi il proprio server Minecraft Java Edition sul cloud è diventato accessibile a chiunque — anche se non avete mai toccato Linux in vita vostra. Questa guida funziona su tutti i provider europei o mondiali, e prendiamo Scaleway come esempio per restare su un cloud sovrano francese. Mettete in conto un paio d'ore, una carta di credito, e la voglia di seguire i passaggi nell'ordine.

Questo tutorial è scritto per i veri principianti — non per gli esperti di terminale. Spiegheremo tutto passo dopo passo: cosa fa SSH, a cosa serve un firewall, perché non si fa mai girare un server in root, cosa significa ogni riga di comando che digitiamo. Alla fine, avrete un server Minecraft ufficiale, sicuro, che si riavvia da solo quando va in crash, con backup automatici replicati fuori dal server, e un IP fisso raggiungibile da qualsiasi luogo. Il tutto per circa 24 EUR al mese, o molto meno se lo spegnete quando nessuno gioca.

Cosa saprete fare alla fine: creare un'istanza Scaleway con Ubuntu 24.04 LTS, metterla in sicurezza con una chiave SSH e un firewall, installare Java 25, installare PaperMC 26.1.2, configurare un servizio systemd, impostare backup cron replicati su un bucket S3, e collegarvi dal client Minecraft come dei veri esperti.

1. Perché il cloud piuttosto che un hosting chiavi in mano?

Gli hosting specializzati Minecraft (Aternos, BisectHosting, Nitrado, OMGServ, Shockbyte…) offrono un'interfaccia web dove cliccate su un pulsante e voilà, il vostro server è online. È semplice, sì, ma ci sono diversi intoppi:

  • Prezzo elevato per poca RAM: mettete in conto 8-20 EUR/mese per 2-4 GB di RAM. Sul cloud, la stessa configurazione costa la metà.
  • Plugin limitati: alcuni hosting bloccano l'installazione di plugin personalizzati, o di mod server (Forge, Fabric).
  • Zero controllo di sistema: impossibile installare uno strumento aggiuntivo, cambiare la versione di Java, o collegare un backup S3.
  • L'IP non è vostro: l'indirizzo del server cambia spesso, il che rompe tutti i link che avete dato ai vostri giocatori.

Su un cloud generalista come Scaleway (azienda francese, datacenter a Parigi, Amsterdam e Varsavia), affittate una vera macchina virtuale Linux. Ne fate letteralmente ciò che volete. Il contropartita? Bisogna imparare a digitare qualche comando in un terminale. E indovinate un po', è proprio lo scopo di questa guida.

Consiglio: Aternos è gratuito e pratico per testare Minecraft con gli amici una volta al mese. Non appena volete un server permanente, personalizzato o che accetti più di 5 giocatori contemporaneamente, il cloud vince a mani basse.

Perché Scaleway? Cloud sovrano francese, e alternative

In questa guida scegliamo Scaleway, un hosting francese i cui datacenter si trovano a Parigi, Amsterdam e Varsavia. Non è una scelta tecnica ma una scelta di sovranità: i vostri dati restano in Europa, sotto giurisdizione francese ed europea (GDPR rigoroso, nessun Cloud Act americano applicabile), e sostenete l'ecosistema cloud europeo. Un piccolo gesto, ma che conta quando si sommano i mesi di abbonamento.

Rassicuratevi: tutti i comandi che seguono funzionano in modo identico su qualsiasi altro cloud purché scegliate un'istanza Ubuntu 24.04 LTS. Ecco le principali alternative se le preferite:

  • OVHcloud (francese, Roubaix / Gravelines / Strasburgo) — alternativa sovrana, tariffe simili sui VPS e sulle istanze Public Cloud.
  • Hetzner (tedesco) — probabilmente il miglior rapporto qualità-prezzo d'Europa per un server Minecraft, ma l'interfaccia è un po' più spartana.
  • Infomaniak (svizzero) — cloud sovrano svizzero, tariffe leggermente più alte ma neutralità elvetica e forte impegno ecologico.
  • DigitalOcean, Vultr, Linode / Akamai — americani, popolari tra i gamer, ma soggetti alla giurisdizione statunitense.
  • AWS, Google Cloud, Microsoft Azure — hyperscaler, decisamente sovradimensionati (e con fatturazione di conseguenza) per un server Minecraft tra amici.

Ricordate soprattutto questo: solo la creazione dell'istanza nella console (capitolo 4) cambia da un cloud all'altro. Tutti i comandi SSH, l'installazione di Java 25, Paper, il servizio systemd e i backup automatici funzionano in modo identico. Se siete già su un altro provider, passate direttamente al capitolo 5.

2. Cosa vi serve prima di iniziare

  • Un computer con Windows 10/11, macOS o Linux. Nessun software speciale da installare: basta il terminale integrato.
  • Una carta di credito. Scaleway non è gratuito, eh. Considerate 20-25 EUR per il primo mese se lasciate il server acceso 24 ore su 24, oppure solo qualche euro se lo spegnete quando nessuno gioca (vedi capitolo 18).
  • Un indirizzo email valido per creare l'account Scaleway e ricevere le fatture.
  • Circa 2 ore a disposizione. La prima volta ci si prende il tempo di capire tutto. Le volte successive sarà questione di 15 minuti netti.
  • Il gioco Minecraft Java Edition installato sul computer dei giocatori. Attenzione alla trappola: la versione Bedrock (Xbox, PS5, mobile, Switch) non è compatibile con un server Java. Questa guida copre esclusivamente Java Edition.

Creare il vostro account Scaleway

Andate su console.scaleway.com e cliccate su «Iscriviti». Inserite la vostra email e una password sicura. Scaleway vi invia un link di verifica via email: cliccateci sopra. Poi, nella console, andate in Billing » Payment methods e aggiungete la vostra carta di credito. Verrà effettuato un piccolo addebito di prova di 1 EUR, che sarà rimborsato qualche giorno dopo. Una volta validata la carta, il vostro account passa a «Verificato» e potete creare istanze.

3. Scegliere l'istanza Scaleway giusta

Un'«istanza» è solo il termine elegante per macchina virtuale: un computer noleggiabile a ore. Scaleway propone diverse gamme. Ecco quelle che ci interessano nel 2026, con le tariffe verificate su scaleway.com/fr/pricing (IVA esclusa):

IstanzavCPURAMPrezzo/oraPrezzo/meseGiocatori consigliati
STARDUST1-S11 GB~0,0006 EUR~0,50 EURNessuno (RAM troppo bassa)
PLAY2-PICO12 GB0,014 EUR~10 EUR2 a 4 (vanilla leggero)
PLAY2-NANO24 GB0,028 EUR20 EUR5 a 10 (consigliato)
PLAY2-MICRO48 GB0,054 EUR~39 EUR15 a 25 con plugin
PLAY2-SMALL416 GB0,108 EUR~78 EUR25+ con modpack corposi

Aggiungi a questo un IPv4 flessibile a 0,005 EUR/ora (circa 3,60 EUR/mese). È l'indirizzo pubblico e fisso che i vostri amici useranno per connettersi. Senza di esso, il vostro server è raggiungibile solo in IPv6, e diciamocelo francamente: pochi ISP la supportano correttamente oggi.

Consiglio: per un server da 5 a 10 giocatori tra amici con qualche plugin Paper, prendete la PLAY2-NANO. È il miglior rapporto qualità/prezzo nel 2026. Potrete sempre fare l'upgrade più avanti senza reinstallare — lo vedremo nell'ultimissimo capitolo.

4. Creare la vostra istanza Scaleway passo dopo passo

Bene, la teoria è bella e buona, ma ora si clicca. Seguite i passaggi nell'ordine, è davvero guidato:

  1. Accedete a console.scaleway.com.
  2. In alto a sinistra, verificate di essere in un'Organization e in un Project (il progetto «default» va benissimo).
  3. Nel menu a sinistra, andate su Compute » Instances, poi cliccate su «Create Instance».
  4. Availability zone: scegliete PAR-1 (Parigi) se giocate dalla Francia, per un ping minimo.
  5. Instance type: selezionate la gamma PLAY2 poi PLAY2-NANO.
  6. Image: scegliete InstantApp / OS » Ubuntu » 24.04 Noble Numbat. È la versione LTS (supporto a lungo termine) consigliata nel 2026.
  7. Volumes: lasciate il disco SSD predefinito (almeno 20 GB, ampiamente sufficienti per un mondo Minecraft).
  8. SSH keys: la genereremo subito dopo, al capitolo 5. Per ora, lasciate questa sezione, ci torneremo.
  9. Name: chiamate l'istanza minecraft-server per ritrovarla facilmente quando avrete dieci progetti in parallelo.
  10. Cliccate su «Create instance». Sarà pronta in circa 30 secondi.

Una volta creata l'istanza, Scaleway le assegna un IPv4 pubblico temporaneo. Lo sostituiremo con un IP flessibile al capitolo 8, in modo che non cambi mai più.

5. Generare e registrare una chiave SSH

SSH (Secure Shell) è il protocollo che vi permette di pilotare la macchina remota dal vostro computer, digitando comandi in un terminale. Una chiave SSH è un file segreto che sostituisce la password: è al tempo stesso più sicuro e più pratico (non dovete ricordare nulla).

Una coppia di chiavi SSH è composta da due file che vanno insieme come un lucchetto e la sua chiave:

  • id_ed25519: la chiave privata. Resta sul vostro computer, non la condividete MAI con nessuno, nemmeno con vostra nonna.
  • id_ed25519.pub: la chiave pubblica. Questa la copiamo sul server Scaleway. È il lucchetto: solo la chiave privata può aprirlo.

Su Windows 10/11, macOS o Linux

Aprite un terminale (su Windows: PowerShell, disponibile tramite il menu Start). Digitate il seguente comando, che genera una coppia di chiavi moderna in formato Ed25519:

Sulla vostra macchina locale
$ ssh-keygen -t ed25519 -C "minecraft-scaleway"

Il programma vi chiede dove salvare la chiave: premete Invio per accettare la posizione predefinita (~/.ssh/id_ed25519). Vi chiede anche una passphrase (password opzionale per proteggere la chiave). Per un primo server, potete lasciarla vuota (Invio due volte), ma è più sicuro impostarne una — ad esempio il nome del vostro gatto.

Per visualizzare il contenuto della chiave pubblica e copiarla:

Sulla vostra macchina locale
$ cat ~/.ssh/id_ed25519.pub
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... minecraft-scaleway

Selezionate l'intera riga visualizzata (inizia con ssh-ed25519 AAAA…) e copiatela con Ctrl+C (o Cmd+C su Mac).

Aggiungere la chiave pubblica in Scaleway

Nella console Scaleway, cliccate sul vostro nome in alto a destra e poi su « SSH Keys ». Cliccate su « Add an SSH key », incollate il contenuto di id_ed25519.pub, chiamate la chiave mon-pc e confermate.

Tornate poi sulla vostra istanza minecraft-server e, nella scheda SSH keys, aggiungete la chiave all'istanza. Scaleway la installerà automaticamente nell'account root della VM.

Checkpoint - A che punto siamo? Avete un account Scaleway, un'istanza PLAY2-NANO in esecuzione, e la vostra chiave SSH pubblica è registrata su di essa. Non vi resta che collegarvi. Tirate un sospiro di sollievo, siete sulla buona strada.

6. Collegarsi in SSH per la prima volta

Recuperate l'IP pubblico della vostra istanza nella console Scaleway (colonna Public IP). Qui prendiamo 51.15.42.100 come esempio, sostituitelo con il vostro ovunque lo vediate.

Nel vostro terminale (PowerShell su Windows, Terminal su Mac/Linux), digitate:

Sulla vostra macchina locale
$ ssh root@51.15.42.100

Questo comando, in sostanza, dice: «collegati in SSH alla macchina 51.15.42.100, con l'utente root». La primissima volta, SSH mostra un messaggio del tipo «The authenticity of host…». Digitate yes e premete Invio per accettare la chiave del server (è un'impronta che garantisce che state parlando davvero con la vostra macchina e non con un intruso che ne ha rubato l'IP).

Se tutto funziona, vedrete un prompt del tipo root@minecraft-server:~#. Complimenti: siete dentro il vostro server Linux remoto, come se foste seduti davanti ad esso. Sensazione strana le prime volte, ma ci si abitua in fretta.

Attenzione utenti Windows: se ssh non viene riconosciuto, aprite Impostazioni » App » Funzionalità facoltative, quindi installate OpenSSH Client. Riavviate PowerShell dopo e riprovate.

7. Aggiornare il sistema e metterlo in sicurezza

Una macchina appena installata va sempre aggiornata prima di ogni altra cosa. Su Ubuntu si usa apt, il gestore dei pacchetti (l'equivalente di uno store di applicazioni, ma a riga di comando). Due comandi essenziali da ricordare:

Sull'istanza Scaleway (root)
$ apt update
$ apt upgrade -y

apt update aggiorna l'elenco dei pacchetti disponibili; apt upgrade -y installa gli aggiornamenti di sicurezza (il -y risponde «sì» alle domande al posto vostro). L'operazione richiede da 1 a 3 minuti, è un buon momento per andare a prendere un bicchiere d'acqua.

Creare un utente non-root

Regola d'oro di Linux: non si fa mai girare un servizio (come Minecraft) sotto l'account root. Root ha tutti i poteri; se il servizio viene violato, l'attaccante ottiene il controllo dell'intera macchina. Attenzione, è proprio qui che il 90% dei tutorial gratuiti su YouTube sbaglia: lanciano tutto come root e vi espongono a una compromissione stupida. Noi, invece, creiamo un utente dedicato minecraft con diritti limitati:

Sull'istanza Scaleway (root)
$ adduser --disabled-password --gecos "" minecraft

Questo comando crea l'utente minecraft, senza password (ci si collegherà solo via SSH con chiave) e senza porre le domande abituali (nome completo, telefono…). Una cartella /home/minecraft viene creata automaticamente nel processo, ed è lì che vivrà il server.

Copiate la vostra chiave SSH pubblica per questo utente:

Sull'istanza Scaleway (root)
$ mkdir -p /home/minecraft/.ssh
$ cp /root/.ssh/authorized_keys /home/minecraft/.ssh/authorized_keys
$ chown -R minecraft:minecraft /home/minecraft/.ssh
$ chmod 700 /home/minecraft/.ssh
$ chmod 600 /home/minecraft/.ssh/authorized_keys

Questa serie di comandi duplica la chiave autorizzata di root verso l'utente minecraft, quindi imposta i permessi affinché SSH accetti la chiave (0700 sulla cartella, 0600 sul file: leggibile solo dal proprietario). È un po' pignolo ma SSH è molto rigido su questo aspetto, ed è per il vostro bene.

Disabilitare la connessione SSH come root

Ora che potete collegarvi come minecraft, disabilitiamo le connessioni SSH come root per ridurre i rischi. Modificate la configurazione SSH:

Sull'istanza Scaleway (root)
$ nano /etc/ssh/sshd_config

nano è un editor di testo semplice che funziona direttamente nel terminale — perfetto per i principianti (le scorciatoie sono indicate in fondo allo schermo). Cercate la riga #PermitRootLogin prohibit-password (o simile), e sostituitela con:

File /etc/ssh/sshd_config
PermitRootLogin no
PasswordAuthentication no

Salvate con Ctrl+O poi Invio, uscite con Ctrl+X. Ricaricate SSH per applicare le modifiche:

Sull'istanza Scaleway (root)
$ systemctl reload ssh

NON CHIUDETE ASSOLUTAMENTE la sessione SSH in corso! L'errore classico è ricaricare SSH, chiudere la finestra per riflesso, e poi rendersi conto di non avere più accesso alla propria macchina. Aprite una nuova finestra di terminale e testate la connessione come minecraft:

Sulla vostra macchina locale (nuova finestra)
$ ssh minecraft@51.15.42.100

Se funziona, tutto ok. Altrimenti, tornate nella sessione root ancora aperta e correggete la configurazione prima di perdere l'accesso. Sul serio, non saltate questo passaggio di test — è la rete di sicurezza.

Suggerimento fail2ban (opzionale): per bloccare i tentativi di brute-force SSH, installate fail2ban con apt install -y fail2ban. Banna automaticamente gli IP che accumulano troppi tentativi di accesso falliti. Sono cinque minuti da configurare e vi risparmiano migliaia di tentativi di bot cinesi nei log.

8. Configurare i Gruppi di sicurezza Scaleway

Un firewall, è una regola che filtra ciò che ha il diritto di entrare e uscire dalla macchina. Scaleway propone i Gruppi di sicurezza: un livello di filtraggio ancora prima che il traffico arrivi sulla vostra VM. Per default, tutto è aperto. Restringeremo al minimo strettamente necessario, perché «tutto aperto» non è mai una buona idea su Internet.

  1. Console Scaleway » Instances » Security groups.
  2. Cliccate su «Create security group», chiamatelo sg-minecraft.
  3. Regole inbound (in entrata): autorizzate solo:
    • Porta TCP 22 dal vostro IP personale (recuperatelo su mon-ip.com). Serve per l'SSH.
    • Porta TCP 25565 da 0.0.0.0/0. È la porta ufficiale di Minecraft Java Edition.
  4. Regole outbound (in uscita): lasciate tutto autorizzato (il server ha bisogno di uscire su Internet per gli aggiornamenti e il caricamento dei backup).
  5. Collegate il gruppo alla vostra istanza: scheda Overview dell'istanza » Security group » sg-minecraft.

Collegare un IPv4 flessibile

Nel menu Network » Public IPs, cliccate su «Reserve IP», scegliete flexible IPv4, poi collegatelo all'istanza minecraft-server. Questo IP resterà il vostro indirizzo permanente anche se spegnete e riaccendete l'istanza mille volte. È quello che darete ai vostri giocatori.

9. Installare Java

Bene, la macchina è pronta e sicura. Ora diventa divertente: installeremo ciò che fa funzionare Minecraft. Java Edition 26.2 (uscita il 16 giugno 2026) richiede Java SE 25. Installiamo la versione headless (senza interfaccia grafica, più leggera), in JRE dato che ci serve solo eseguire del codice, non compilarlo:

Sull'istanza Scaleway
$ sudo apt install -y software-properties-common
$ sudo add-apt-repository -y universe
$ sudo apt update
$ sudo apt install -y openjdk-25-jre-headless

Su Ubuntu 24.04, OpenJDK 25 si trova nel repository universe che si attiva prima dell'installazione. Verificate la versione installata:

Sull'istanza Scaleway
$ java -version
openjdk version "25.0.1" 2026-01-21
OpenJDK Runtime Environment (build 25.0.1+9)
OpenJDK 64-Bit Server VM (build 25.0.1+9, mixed mode)

Dovreste vedere qualcosa come openjdk version "25.0.x". Se è così, perfetto, si può passare al prossimo passo.

10. Installare Paper (il server Minecraft ottimizzato)

Paper vs Vanilla, in 30 secondi

Vanilla è il server ufficiale di Mojang. Funziona, sì, ma è lento, mono-thread su parecchie operazioni, e non accetta alcun plugin. PaperMC è un fork di Spigot che reimplementa il server con ottimizzazioni massicce (chunk loading asincrono, anti-lag nativo, tick freeze…) e supporta i plugin Bukkit/Spigot. Per un server multi-giocatore, Paper è la scelta di default nel 2026, senza dubbio.

Scaricare Paper

Passate all'utente minecraft, create una cartella di lavoro e scaricate l'ultima build stabile. Al 15 luglio 2026, l'ultima versione stabile di Paper è la 26.1.2 build 74 (la build stabile per Minecraft 26.2 è in fase di rilascio; verificate su papermc.io/downloads/paper).

Sull'istanza Scaleway
$ sudo -iu minecraft
$ mkdir -p ~/server && cd ~/server
$ wget -O paper.jar https://api.papermc.io/v2/projects/paper/versions/26.1.2/builds/74/downloads/paper-26.1.2-74.jar

sudo -iu minecraft apre una sessione shell come utente minecraft (pensatelo come « cambiare cappello »). wget -O paper.jar scarica il file jar e lo rinomina paper.jar per semplificare i comandi successivi.

Accettare l'EULA

Mojang richiede di accettare il CLUF (End User License Agreement). Al primo avvio, il server crea un file eula.txt con eula=false. Lo si imposta esplicitamente su true, senza nemmeno avviarlo:

Sessione minecraft — cartella ~/server
$ echo "eula=true" > eula.txt

Facendo ciò, dichiarate di aver letto e accettato il CLUF Minecraft (account.mojang.com/documents/minecraft_eula). Dedicate due minuti a scorrerlo, non è mai tempo perso.

Primo avvio (test)

Si avvia Paper manualmente una prima volta per verificare che tutto funzioni e generare i file di configurazione. Si allocano 3 GB di RAM (Xmx3G) e si parte con 1 GB (Xms1G) su una PLAY2-NANO che ha 4 GB in totale (si tengono 1 GB per il sistema operativo, altrimenti Linux si soffoca):

Sessione minecraft — cartella ~/server
$ java -Xms1G -Xmx3G -jar paper.jar --nogui

Il primo avvio richiede un minuto (generazione del mondo, download delle librerie). Quando vedete la riga « Done! For help, type "help" », digitate stop e Invio per arrestare correttamente. Non fate assolutamente Ctrl+C, altrimenti il mondo rischia di corrompersi.

11. Configurare server.properties

Il file server.properties contiene tutte le impostazioni di gameplay. Apritelo con nano:

Sessione minecraft
$ nano ~/server/server.properties

Ecco le righe principali da regolare per un server amichevole da 10 giocatori:

File ~/server/server.properties
motd=Bienvenue sur notre serveur Playnews !
difficulty=normal
gamemode=survival
max-players=10
view-distance=8
simulation-distance=6
spawn-protection=8
online-mode=true
enable-command-block=false
pvp=true
white-list=false

Spiegazioni rapide, affinché non seguiate le istruzioni alla cieca:

  • motd: Message Of The Day, viene visualizzato nella lista dei server del client Minecraft.
  • difficulty: peaceful, easy, normal o hard.
  • view-distance: chunk caricati intorno al giocatore. 8 è un buon compromesso performance/immersione su PLAY2-NANO. 10-12 su PLAY2-MICRO.
  • simulation-distance: chunk dove i mob e la redstone «vivono». Più piccolo = meno lag.
  • online-mode=true: obbliga i giocatori ad avere un account Minecraft valido. Lasciatelo su true, a meno che non sappiate esattamente cosa state facendo.

12. Creare un servizio systemd

Avviare il server manualmente in una sessione SSH funziona, ok. Ma appena chiudete la finestra, il server si ferma di colpo. Vogliamo che venga eseguito in background, si riavvii automaticamente al boot della macchina, e si rilanci da solo se va in crash nel cuore della notte. systemd è il sistema di gestione dei servizi di Ubuntu; gli si scrive un file .service per spiegargli cosa fare.

Tornate temporaneamente root (o usate sudo) per creare il file:

Sull'istanza Scaleway
$ sudo nano /etc/systemd/system/minecraft.service

Incollate il seguente contenuto:

File /etc/systemd/system/minecraft.service
[Unit]
Description=Serveur Minecraft Paper
After=network.target

[Service]
Type=simple
User=minecraft
Group=minecraft
WorkingDirectory=/home/minecraft/server
ExecStart=/usr/bin/java -Xms1G -Xmx3G -jar paper.jar --nogui
Restart=on-failure
RestartSec=15
SuccessExitStatus=0 143

[Install]
WantedBy=multi-user.target

Dettaglio delle righe chiave:

  • User=minecraft: il servizio viene eseguito con l'utente non privilegiato, non root. Sicurezza, sempre e ancora.
  • Restart=on-failure: se Paper va in crash, systemd lo rilancia dopo 15 secondi. Potete dormire tranquilli.
  • SuccessExitStatus=0 143: 143 è il codice di uscita normale quando si digita stop nella console.

Ricaricate systemd, attivate il servizio al boot e avviatelo:

Sull'istanza Scaleway
$ sudo systemctl daemon-reload
$ sudo systemctl enable minecraft
$ sudo systemctl start minecraft

Verificate che sia effettivamente in esecuzione:

Sull'istanza Scaleway
$ sudo systemctl status minecraft
● minecraft.service - Serveur Minecraft Paper
     Loaded: loaded (/etc/systemd/system/minecraft.service; enabled)
     Active: active (running) since ...

Dovete vedere Active: active (running) in verde. Per guardare i log in tempo reale (super utile per il debug):

Sull'istanza Scaleway
$ sudo journalctl -u minecraft -f

(Ctrl+C per uscire dalla visualizzazione dei log, questo non ferma il server.)

13. Backup automatici

Un server senza backup significa giocare col fuoco: un bug di un plugin, un comando /fill mal posizionato alle 2 di notte, un disco che si guasta… e mesi di costruzioni spariscono. Un amico a cui è successo mi ha raccontato di aver perso tre mesi di castle building con i suoi amici perché non aveva predisposto nulla. Non commettete questo errore. Impostiamo un backup ogni 6 ore con rotazione su 7 giorni.

Create una cartella per i backup e uno script bash:

Sull'istanza Scaleway
$ sudo mkdir -p /var/backups/minecraft
$ sudo chown minecraft:minecraft /var/backups/minecraft
$ sudo -iu minecraft nano ~/backup.sh

Contenuto dello script:

File /home/minecraft/backup.sh
#!/bin/bash
DATE=$(date +%Y-%m-%d_%Hh%M)
BACKUP_DIR=/var/backups/minecraft
SERVER_DIR=/home/minecraft/server

# Comprime i mondi e i plugin
tar -czf "$BACKUP_DIR/mc-$DATE.tar.gz" -C "$SERVER_DIR" world world_nether world_the_end plugins server.properties

# Elimina i backup più vecchi di 7 giorni
find "$BACKUP_DIR" -name "mc-*.tar.gz" -mtime +7 -delete

Rendetelo eseguibile e testatelo:

Sessione minecraft
$ chmod +x ~/backup.sh
$ ~/backup.sh
$ ls -lh /var/backups/minecraft/
-rw-r--r-- 1 minecraft minecraft 42M ... mc-2026-07-15_15h30.tar.gz

Dovreste vedere un file mc-2026-07-15_15h30.tar.gz o simile. Programmate ora cron per eseguire lo script automaticamente ogni 6 ore:

Sessione minecraft
$ crontab -e

Aggiungete la riga:

Editor crontab (utente minecraft)
0 */6 * * * /home/minecraft/backup.sh >> /home/minecraft/backup.log 2>&1

Questa sintassi cron significa: al minuto 0, ogni 6 ore, tutti i giorni. I log vengono aggiunti a backup.log. Ecco fatto, avete dei backup locali ogni 6 ore. Peccato che si trovino sulla stessa macchina del server, il che rappresenta solo una mezza rete di sicurezza. Passiamo al capitolo successivo per blindare davvero la cosa.

14. Salvare fuori dal server con Scaleway Object Storage (S3)

Attenzione, è qui che il 90% delle persone sbaglia la prima volta — l'errore classico è credere che «ho i backup locali, va bene così, sono tranquillo». Peccato che se la vostra istanza si guasta, si corrompe, o viene eliminata per errore (succede più spesso di quanto si pensi), i backup se ne vanno con lei. Bisogna metterli altrove, in un posto isolato, replicato, ed economico.

Cos'è davvero lo storage S3?

S3, in origine, è il nome del servizio di storage di Amazon Web Services («Simple Storage Service»). Ma oggi è diventato uno standard: qualsiasi servizio che parli «API S3» può essere usato con gli stessi strumenti. Scaleway, OVH, Cloudflare R2, Backblaze B2… tutti compatibili.

La grande differenza rispetto a un disco rigido classico sta nel modello mentale:

  • Un disco è una gerarchia di cartelle e file, legata a una macchina. Se la macchina muore, il disco muore con lei.
  • Un bucket S3 è un grande secchio (letteralmente, «bucket» in inglese) nel quale depositate degli oggetti identificati da una chiave (il nome del file). Ogni oggetto è replicato automaticamente su più dischi nel datacenter, spesso persino su più datacenter (Multi-AZ). Una macchina può bruciarsi, il bucket, lui, se la vive tranquillo.
  • Non «montate» un bucket come un disco. Ci dialogate tramite HTTPS, inviando richieste PUT (deposito), GET (recupero), LIST (elenco). I vostri strumenti si occupano dei dettagli.

Il punto chiave per noi: un bucket è indipendente dalla vostra istanza. Potete distruggere l'intera VM, reinstallare Ubuntu da zero, e recuperare i vostri mondi Minecraft dal bucket in cinque minuti. Questo cambia tutto.

Perché Scaleway Object Storage?

Scaleway propone il proprio servizio compatibile S3, ospitato negli stessi datacenter francesi (PAR-1, PAR-2, PAR-3). Fatturato al Go e al mese, con il traffico entrante gratuito. Si mantiene tutto nell'ecosistema sovrano, e si paga una miseria.

Secondo il tariffario Scaleway al 15 luglio 2026:

  • Standard Multi-AZ: 0,01606 EUR / Go / mese IVA esclusa (dato replicato su più zone di disponibilità)
  • Traffico entrante (upload): gratuito
  • Traffico uscente (download): gratuito nel limite di una quota mensile generosa

Concretamente: per un server Minecraft di dimensioni ragionevoli (diciamo 10 Go di salvataggi accumulati su 7 giorni), si parla di circa 16 centesimi al mese. Il prezzo di un sms.

Fase 1 — Creare un bucket nella console

  1. Console Scaleway » menu di sinistra » Object Storage » Buckets.
  2. Cliccate su «Create bucket».
  3. Region: scegliete PAR (Paris) per rimanere vicini alla vostra istanza (upload più rapido).
  4. Bucket name: ad esempio mon-bucket-minecraft-backups. I nomi sono unici a livello globale su Scaleway, aggiungete un suffisso se il vostro è già occupato.
  5. Storage class: Standard. Vogliamo il dato disponibile in ogni momento.
  6. Visibility: Private. Ovviamente, non volete che chiunque scarichi i vostri mondi.
  7. Confermate. Il bucket è pronto in 5 secondi.

Fase 2 — Creare una chiave API

Uno strumento che carica sul bucket ha bisogno di un'identità per provare di averne il diritto. È una coppia chiave/segreto, come un login/password machine-to-machine.

  1. Cliccate sul vostro nome in alto a destra » «API keys».
  2. «Generate an API key». Nome: minecraft-backup. Preferred project: il progetto in cui vive il vostro bucket.
  3. Scaleway vi mostra una sola volta l'Access key e la Secret key. Copiatele subito in un posto sicuro (non su un post-it sulla scrivania, eh). Se perdete la Secret key, dovrete rigenerarne una.

Fase 3 — Installare e configurare s3cmd sull'istanza

Esistono due client CLI popolari per parlare con S3: s3cmd (semplice, orientato ai file) e rclone (più ricco, stile rsync). Scegliamo s3cmd, è il più leggibile per un principiante.

Sull'istanza Scaleway
$ sudo apt install -y s3cmd

Due modi per configurare s3cmd: la versione interattiva (s3cmd --configure, che vi pone 12 domande) oppure la versione diretta scrivendo a mano il file ~/.s3cfg. Optiamo per la seconda, più rapida e riproducibile.

Passate all'utente minecraft e create il file:

Sessione minecraft
$ nano ~/.s3cfg

Incollate questo contenuto, sostituendo VOTRE_ACCESS_KEY e VOTRE_SECRET_KEY con i valori mostrati da Scaleway:

File /home/minecraft/.s3cfg
[default]
access_key = VOTRE_ACCESS_KEY
secret_key = VOTRE_SECRET_KEY
host_base = s3.fr-par.scw.cloud
host_bucket = %(bucket)s.s3.fr-par.scw.cloud
bucket_location = fr-par
use_https = True
signature_v2 = False

Poi bloccate il file (contiene un segreto, non vogliamo che un altro utente possa leggerlo):

Sessione minecraft
$ chmod 600 ~/.s3cfg

L'endpoint Scaleway per la regione PAR-1 è s3.fr-par.scw.cloud — è l'URL che s3cmd contatterà. Per AMS o WAW, è s3.nl-ams.scw.cloud e s3.pl-waw.scw.cloud.

Passo 4 — Testare la connessione

Un piccolo ping al bucket per verificare che tutto comunichi correttamente:

Sessione minecraft
$ s3cmd ls
2026-07-15 14:22  s3://mon-bucket-minecraft-backups

Se il nome del vostro bucket appare, è perfetto: la chiave funziona. Altrimenti, ricontrollate l'access key, la secret key, e l'endpoint in ~/.s3cfg.

Inviate un primo file di test:

Sessione minecraft
$ echo "hello from minecraft" > /tmp/test.txt
$ s3cmd put /tmp/test.txt s3://mon-bucket-minecraft-backups/test.txt
$ s3cmd ls s3://mon-bucket-minecraft-backups/

Se vedete test.txt nell'elenco, siete ufficialmente collegati al cloud storage. Fate un piccolo high-five al vostro gatto.

Passo 5 — Modificare lo script di backup per caricare automaticamente

Riprendete lo script ~/backup.sh del capitolo 13 e aggiungeteci l'upload verso il bucket, più una politica di retention sul bucket (si mantengono 30 giorni nel cloud, contro 7 giorni in locale — costa poco, quindi tanto vale conservarne di più). Versione finale:

File /home/minecraft/backup.sh
#!/bin/bash
DATE=$(date +%Y-%m-%d_%Hh%M)
BACKUP_DIR=/var/backups/minecraft
SERVER_DIR=/home/minecraft/server
BUCKET=s3://mon-bucket-minecraft-backups/backups
ARCHIVE="$BACKUP_DIR/mc-$DATE.tar.gz"

# Compresse les mondes et les plugins
tar -czf "$ARCHIVE" -C "$SERVER_DIR" world world_nether world_the_end plugins server.properties

# Upload vers Scaleway Object Storage
s3cmd put "$ARCHIVE" "$BUCKET/mc-$DATE.tar.gz"

# Rotation locale : garde 7 jours
find "$BACKUP_DIR" -name "mc-*.tar.gz" -mtime +7 -delete

# Rotation distante : garde 30 jours
CUTOFF=$(date -d "30 days ago" +%Y-%m-%d)
s3cmd ls "$BUCKET/" | awk '{print $2, $4}' | while read d f; do
  fdate=$(echo "$f" | grep -oE '[0-9]{4}-[0-9]{2}-[0-9]{2}' | head -1)
  if [[ -n "$fdate" && "$fdate" < "$CUTOFF" ]]; then
    s3cmd del "$f"
  fi
done

Notate una cosa: la retention sul bucket può anche essere gestita tramite una lifecycle policy direttamente su Scaleway (Console » Bucket » scheda Lifecycle), che elimina automaticamente gli oggetti più vecchi di X giorni. È più elegante e non richiede alcuno script. Ma se siete alle prime armi, la versione nello script funziona perfettamente.

Testate il nuovo script:

Sessione minecraft
$ ~/backup.sh
$ s3cmd ls s3://mon-bucket-minecraft-backups/backups/
2026-07-15 15:30  42M  s3://mon-bucket-minecraft-backups/backups/mc-2026-07-15_15h30.tar.gz

Il vostro mondo vive ora in tre posizioni fisiche diverse all'interno del datacenter Scaleway. Il sonno sarà molto più tranquillo questa notte.

Ripristinare da S3 in caso di crash

Immaginiamo il peggio: la vostra istanza è morta, oppure volete ripartire da zero su una nuova VM pulita. Ecco la procedura di ripristino, a partire da una macchina appena installata:

Sulla nuova istanza Scaleway
$ sudo apt install -y s3cmd
$ sudo -iu minecraft
$ nano ~/.s3cfg   # incolla di nuovo la config del capitolo precedente
$ chmod 600 ~/.s3cfg

$ s3cmd ls s3://mon-bucket-minecraft-backups/backups/
... elenco dei backup disponibili ...

$ mkdir -p ~/server && cd ~/server
$ s3cmd get s3://mon-bucket-minecraft-backups/backups/mc-2026-07-15_15h30.tar.gz .
$ tar -xzf mc-2026-07-15_15h30.tar.gz

Ritrovate world/, world_nether/, world_the_end/, plugins/ e server.properties esattamente come al momento del backup. Riscaricate paper.jar, rimettete a posto il servizio systemd del capitolo 12, e systemctl start minecraft — siete tornati all'ultimo punto di salvataggio. Il tutto, in una decina di minuti.

Bonus tranquillità: per andare ancora oltre, potete attivare il versioning sul bucket (Console » Bucket » Settings). Ogni sovrascrittura di un file viene conservata — un giocatore che distruggesse tutto e ricostruisse sopra non potrebbe più sovrascrivere il vostro backup. Tre clic nella console.

15. Connettersi dal client Minecraft

Bene, avete allestito un server degno di un mini-hosting. Ora arriva la parte divertente: finalmente ci giocherete.

  1. Avviate il launcher ufficiale di Minecraft e selezionate la versione Java Edition 26.1.2 (identica al vostro Paper). Cliccate su Play.
  2. Nella schermata iniziale, cliccate su Multiplayer » Add server.
  3. Server Name: Mon serveur Scaleway. Server Address: 51.15.42.100 (il vostro IP flessibile).
  4. Cliccate su Done, poi fate doppio clic sul server. Dovreste essere in gioco in pochi secondi.
Consiglio nome di dominio: per non dover dare un IP ai vostri amici (è brutto da ricordare), acquistate un dominio (5 EUR/anno da Gandi o OVH), create un record DNS A mc.mon-domaine.fr che punti al vostro IP flessibile. Si collegheranno con un nome leggibile, e se un giorno cambiate IP, dovrete solo modificare il DNS.

16. Ottimizzazioni Paper (paper.yml, spigot.yml, bukkit.yml)

Paper genera diversi file di configurazione in ~/server/config/ dopo il primo avvio. Le impostazioni più efficaci per ridurre il lag:

paper-world-defaults.yml

  • chunks.entity-per-chunk-save-limit: limita le entità salvate per chunk (evita le fattorie di creature eccessive che rallentano tutti).
  • tick-rates.mob-spawner: allungare il tick degli spawner di mob riduce la CPU.
  • collisions.max-entity-collisions: 2 (predefinito 8): meno calcoli di collisione nelle folle di mob.

bukkit.yml

File ~/server/bukkit.yml
spawn-limits:
  monsters: 40
  animals: 8
  water-animals: 3
  ambient: 1

Ridurre questi limiti (default: 70, 10, 5, 15) diminuisce drasticamente il numero di mob attivi, e quindi il carico sulla CPU. Non noterete alcuna differenza lato giocatore, promesso.

Flag JVM di Aikar

I flag di Aikar sono un insieme di opzioni JVM ottimizzate per Minecraft, messe a punto da Aikar (storico sviluppatore di Paper). Copiateli e incollateli, non cercate di capire ogni singolo flag riga per riga, ci passereste la notte. Sostituite la riga ExecStart del vostro servizio systemd con:

File /etc/systemd/system/minecraft.service (riga ExecStart)
ExecStart=/usr/bin/java -Xms3G -Xmx3G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar paper.jar --nogui

Nota che Xms e Xmx sono impostati sullo stesso valore: è la raccomandazione di Aikar per evitare cicli di riallocazione della memoria, che provocano micro-freeze in gioco.

17. Quanto costa al mese?

Facciamo la somma per un'istanza PLAY2-NANO accesa 24 ore su 24 nel 2026:

  • Istanza PLAY2-NANO: 20,00 EUR/mese (2 vCPU, 4 GB RAM)
  • IPv4 flessibile: circa 3,60 EUR/mese
  • Volume SSD (20 GB inclusi, trascurabile oltre)
  • Larghezza di banda: gratuita presso Scaleway fino a diversi TB/mese
  • Bucket Object Storage (10 GB di backup): circa 0,16 EUR/mese

Totale: circa 24 EUR/mese IVA esclusa per un server disponibile 24 ore su 24 con backup replicati. Diviso per 5 giocatori, sono meno di 5 EUR a persona. E potete fermare l'istanza quando non giocate (vedi capitolo 18) per scendere ancora più in basso.

Su PLAY2-MICRO (8 GB RAM), contate piuttosto ~42 EUR/mese con l'IP.

18. Spegnere e riaccendere l'istanza per risparmiare

Scaleway fattura le istanze all'ora, solo quando sono Running. Se le fermate correttamente, non pagate più la CPU/RAM (solo lo storage e l'IP, qualche centesimo al giorno). Trucco formidabile per un server tra amici che gioca solo nel weekend: pagate 2 giorni su 7 invece di 7 giorni su 7.

Due modi per fermarla:

  • Dalla console: scheda Overview dell'istanza » pulsante Power off.
  • Da SSH: sudo systemctl stop minecraft && sudo shutdown now.

Per riaccendere: pulsante Power on nella console. Il servizio Minecraft riparte da solo grazie a systemd (circa 30 secondi). Magico.

Attenzione: non distruggete assolutamente l'istanza senza avere un backup S3 in tasca! Fermare e terminare sono due azioni diverse. «Power off» conserva tutto; «Delete» cancella il disco. È il tipo di errore che si paga caro.

19. Risoluzione dei problemi: gli errori più frequenti

«Connection timed out» lato client Minecraft

Il traffico non raggiunge la porta 25565 del server. Verificate nell'ordine: (1) il servizio è in esecuzione: sudo systemctl status minecraft. (2) la porta è aperta nel gruppo di sicurezza Scaleway. (3) l'IP è quello giusto (attenzione agli errori di battitura, non si è mai riusciti a connettersi a un server digitando l'ottetto sbagliato). Testate dall'esterno:

Dalla vostra macchina locale
$ nmap -p 25565 51.15.42.100

«java.lang.OutOfMemoryError: Java heap space»

Non avete abbastanza RAM allocata. Su PLAY2-NANO (4 GB), mantenete -Xmx3G. Su PLAY2-MICRO (8 GB), passate a -Xmx6G. Su PLAY2-PICO (2 GB), limitate a -Xmx1500M ed evitate i modpack pesanti.

«Unable to bind to port 25565»

Un altro processo sta già usando la porta. Verificate:

Sull'istanza Scaleway
$ sudo ss -tulnp | grep 25565

Se c'è una vecchia istanza di Paper ancora attiva, uccidetela: sudo systemctl stop minecraft poi sudo pkill -u minecraft java. Poi riavviate il servizio.

«Outdated server / outdated client»

La versione di Paper installata sul server non corrisponde alla versione del client Minecraft. Verificate il nome del file paper-26.1.2-74.jar e selezionate la stessa versione nel launcher di Minecraft. Paper 26.2 experimental funziona con Minecraft 26.2 client, ma per un principiante, restate sulla versione stabile, qui non si fanno gli eroi.

«Permission denied (publickey)»

SSH rifiuta la connessione. Verificate che: (1) stiate usando l'utente giusto (minecraft@, non root@). (2) il file ~/.ssh/authorized_keys sul server contenga effettivamente la vostra chiave pubblica. (3) i permessi della cartella ~/.ssh siano a 700 e quelli del file authorized_keys a 600. Tutti e tre, altrimenti SSH fa i capricci.

20. Per andare oltre

Plugin Paper indispensabili

Caricate i file .jar in ~/server/plugins/ e riavviate il servizio.

  • EssentialsX: comandi /home, /tpa, /back, kit, economia… il coltellino svizzero.
  • LuckPerms: gestione fine dei permessi per gruppo (ospite, giocatore, VIP, moderatore, admin).
  • WorldEdit: costruzioni massicce, copia/incolla di intere regioni.
  • CoreProtect: storico delle azioni, roll-back in caso di griefing.
  • DiscordSRV: collegare la chat di Minecraft con un canale Discord. Gli amici fuori dal gioco vedono cosa succede.

Whitelist

Per un server privato tra amici, attivate la whitelist in modo che solo i nickname autorizzati possano connettersi. Nella console del server (o via SSH con screen/tmux):

Console del server Minecraft
whitelist on
whitelist add NicknameDelGiocatore

Migrazione verso un'istanza più grande

Il giorno in cui la PLAY2-NANO è satura (spoiler: succede quando siete troppo numerosi o quando vi lanciate in un modpack pesante), fermate l'istanza nella console, cliccate su Change instance type, scegliete PLAY2-MICRO o PLAY2-SMALL. Riavviate: il vostro mondo e la vostra configurazione restano identici. Nessuna reinstallazione. Due minuti cronometrati.

Condividi questo articolo

Avete già ospitato un server Minecraft? Su cosa?

Domande frequenti

Perché non restare su un hosting chiavi in mano come Aternos o Nitrado?
Gli hosting specializzati costano da 8 a 20 EUR/mese per poca RAM, spesso bloccano i plugin personalizzati, non offrono alcun controllo di sistema e cambiano regolarmente l'IP del server. Il cloud generalista vi offre una vera macchina Linux, possedete l'IP e potete installare ciò che volete. Aternos resta comunque comodo per fare qualche test gratuito una volta al mese.
Tutti i comandi funzionano anche su OVHcloud, Hetzner o DigitalOcean?
Sì, a patto di scegliere Ubuntu 24.04 LTS. Le schermate di creazione dell'istanza cambieranno, ma SSH, Java 25, PaperMC, systemd e i backup cron funzionano allo stesso modo su qualsiasi cloud.
Questa guida funziona anche per Minecraft Bedrock (Xbox, PS5, mobile)?
No, questa guida copre esclusivamente la Java Edition. Bedrock richiede una configurazione completamente diversa (server Bedrock Dedicated Server) e non funziona semplicemente su Linux.
Quanto costa davvero al mese se lascio il server acceso 24 ore su 24?
Una PLAY2-NANO (20 EUR/mese) più un IPv4 flessibile (3,60 EUR/mese) = circa 24 EUR/mese IVA inclusa. Se spegnete il server quando nessuno gioca, il costo scende a pochi euro. Scaleway fattura a ore: potete fermare l'istanza dalla console e non vi costa nulla quando è spenta.
Non ho mai aperto un terminale in vita mia, è davvero adatto a me?
Sì. Questa guida spiega ogni comando riga per riga, compreso cosa sia SSH, un firewall, o perché si crea un utente dedicato. Se sapete leggere e copiare/incollare, potete seguire questo tutorial.

Da ricordare

  • Il cloud generalista costa la metà rispetto a un hosting Minecraft chiavi in mano, senza alcun limite di plugin o di controllo del sistema.
  • Scaleway (francese) o le sue alternative europee garantiscono che i vostri dati restino in Europa, lontano dal Cloud Act americano.
  • Una PLAY2-NANO (2 vCPU, 4 GB RAM) basta ampiamente per 5-10 giocatori con plugin; il costo reale si aggira intorno ai 20-25 EUR/mese.
  • SSH, firewall, servizio systemd e backup cron: questa guida spiega ogni comando, anche se non conoscete Linux.
  • Un indirizzo IP fisso e flessibile (3,60 EUR/mese) è essenziale affinché i vostri amici si riconnettano sempre allo stesso server.

Commenti

Nessun commento per il momento. Sii il primo a reagire!

Lascia un commento

Ultimi articoli