Come installare e configurare un server personale Minecraft
Installare e configurare un server dedicato Minecraft ad uso personale può essere unâopzione interessante sia per giocare con gli amici in una rete locale (LAN) - potendo sfruttare anche hardware non aggiornato - sia per giocare e sperimentare via internet attraverso lâinstallazione in remoto su un virtual server, ma con lâavvertenza che in tal caso sono indispensabili adeguate competenze sistemistiche e di networking per garantire la sicurezza del virtual server (poichĂŠ sarĂ inevitabilmente oggetto di âport scanningâ da parte di bot malevoli). Considerando inoltre il costo dei virtual server, se si vuole solamente giocare via internet può essere piĂš conveniente affittare un server Minecraft da uno dei numerosi provider che offrono questo servizio o direttamente da Minecraft che offre la possibilitĂ di attivare i Minecraft Realms dallâinterfaccia di avvio del gioco.
In questo articolo ci occupiamo del server Minecraft versione Bedrock, in quanto compatibile con il âcross-playâ tra piattaforme diverse, e piĂš specificatamente della versione per Linux Ubuntu, in quanto lâinstallazione di un sistema operativo Linux necessita di minori risorse hardware rispetto a Windows. Lâinstallazione di Linux in modalitĂ sever, ovvero senza interfaccia grafica, constente inoltre di risparmiare ulteriori risorse e utilizzare anche hardware piuttosto datato. I requisiti minimi raccomandati per il server Minecraft Bedrock sono: 1 Gb di Ram e processori 64 bit Intel o Amd con almeno due âcoreâ.
Il sistema operativo Linux Ubuntu server è disponibile per il download a questo indirizzo web ed, essendo un prodotto âopen sourcesâ, è utilizzabile gratuitamente. Il sever dedicato Minecraft è disponibile per il download sul sito ufficiale minecraft.net.
Eâ necessario evidenziare che anche per quanto riguarda i server, le versioni Minecraft bedrock e java non sono compatibili tra loro. In pratica, per accedere a un server dedicato bedrock occorre la versione bedrock di Minecraft mentre per accedere a un server dedicato java occorre la versione java di Minecraft.
Come giĂ accennato, la versione bedrock di Minecraft supporta il cross-play tra piattaforme diverse, per cui è possibile accedere al server dedicato da diversi dispositivi digitali dotati dellâapp Minecraft, inserendo lâindirizzo IP del server nel caso di personal computer, smartphone e tablet oppure cliccando sul server dedicato che appare nel tab âAmiciâ, âPartite LANâ (quindi esclusivamente in rete locale) nel caso delle console game.
Per quanto riguarda la manutenzione del server dedicato, è necessario mantenere lâallineamento tra il numero di versione del server Minecraft e il numero di versione dellâapp installata sui vari dispositivi digitali, aggiornando il software server ogni qualvolta viene rilasciato un aggiornamento di Minecraft, poichĂŠ questo viene generalmemente installato in automatico dai âdigital storeâ connessi ai vari smartphone, tablet, console e PC.
Il primo passo, una volta accertata la compatibilitĂ del proprio hardware con le specifiche minime consigliate per Ubuntu server, è procedere con lâinstallazione del sistema operativo Linux. In rete sono disponibili numerose guide su come installare Ubuntu server mentre la procedura guidata dâinstallazione è abbastanza intuitiva. Non è necessario attivare servizi server specifici, a parte OPENSSH server che può essere utile per gestire il server Linux da remoto (potendo anche scollegarlo da monitor, mouse e tastiera) ed eventualmente SAMBA file server, utile per trasferire file da Windows su una cartella condivisa invece che utilizzare un client FTP.
Se non lo avete già fatto in fase di installazione di Ubuntu, è opportuno configurare un indirizzo IP fisso di rete locale direttamente sul sever linux o indirettamente assegnando un indirizzo IP statico nelle impostazioni DHCP del vostro modem-router, in modo che il server dedicato Minecraft sia raggiungibile sempre allo stesso indirizzo IP. Trovate online diverse guide che illustrano passo passo come modificare manualmente il file di configurazione della scheda di rete in assenza di interfaccia grafica.
Se avete attivato il servizio SSH per gestire da remoto il server, potete accedervi e impartire comandi tramite un client ssh (ad esempio PuTTY). Per trasferire file, invece, potete utilizzare un client SFTP (ad esempio FileZilla) oppure il copia e incolla da Windows qualora abbiate attivato il servizio Samba.
Se invece accedete al server Ubuntu attraverso il login da testiera, potete scaricare il server dedicato Minecraft direttamente dalla shell CLI (Command Line Interface o interfaccia a riga di comando) con il comando wget oppure curl. Anche in questo caso trovate online numerose guide su come utilizzare questi comandi, ma prima dovete visualizzare nella barra di stato di un browser lâurl esatta del file da scaricare visitando la pagina di download del sito ufficiale minecraft.net e posizionando il cursore sul pulsante di download, dopo averlo attivato con il check sullâaccettazione dei termini legali di licenza e di privacy. Infatti, il nome del file da scaricare cambia ogni volta che viene rilasciata una nuova versione di Minecraft.
Una volta scaricato il file, create una nuova directory denominata âminecraftâ ad esempio nella directory /opt con il comando âsudo mkdir /opt/minecraft/â. Appropriatevi della cartella appena creata con il comando âsudo chown [nomeutente] /opt/minecraft/â sostituendo [nomeutente] con il nome di login che avete scelto durante lâinstallazione di Ubuntu server. Create una sottodirectory dentro la cartella âminecraftâ con il comando âmkdir /opt/minecraft/serverâ. Scompattate il file zip nella directory appena creata: âunzip nomefile.zip -d /opt/minecraft/serverâ. Se il comando unzip non è presente installate il pacchetto zip seguendo una delle guide online. Potete visualizzare lâelenco di file e cartelle create con il comando âls -al /opt/minecraft/serverâ. Cambiate directory con il comando âcd /opt/minecraft/serverâ. Rendete eseguibile il file bedrock_server con il comando âchmod ug+x bedrock_serverâ. Avviate il server minecraft seguendo le istruzioni contenute nel file bedrock_server_how_to.html contenuto nella suddetta cartella ovvero âLD_LIBRARY_PATH=. ./bedrock_serverâ. Se vi collegate allâindirizzo IP del server da un Minecraft installato su un dispositivo digitale vedrete apparire alcune informazioni sulla vostra connessione al server. Per chiudere il server minecraft e tornare alla shell CLI digitate âstopâ e invio.
Ovviamente la stessa procedura può essere effettuata da remoto con una connessione ssh, tuttavia sono necessari alcuni accorgimenti per poter chiudere il client ssh una volta avviato il server minecraft. In pratica occorre installare il comando âscreenâ che consente di avviare il server minecraft da una schermata secondaria, quindi tornare alla schermata principale per chiudere la connessione ssh.
Dopo aver installato screen (trovate on line le guide), fate il login dal terminale ssh e digitate âscreenâ, invio. Si apre una pagina con le informazioni di licenza che potete scorrere con la barra spaziatrice o con invio per trovarvi di nuovo sul prompt dei comandi. Spostatevi nella directory del server Minecraft (cd /opt/minecraft/server) e digitate il comando per avviare il server Minecraft (LD_LIBRARY_PATH=. ./bedrock_server). A questo punto dovete staccarvi dalla finestra creata da screen: digitate prima âCtrl+Aâ e poi âdâ per tornare alla finestra del terminale dalla quale avevate lanciato il comando screen. Infatti, digitando âscreen -lsâ il sistema vi informa che câè una finestra attiva ma staccata (Detached). Potete quindi uscire da ssh con il comando âexitâ mentre il server Minecraft resterĂ in esecuzione. Per terminare il server Minecraft accedete di nuovo al server Ubuntu con SSH e digitate âscreen -râ per ricollegarvi al terminale nel quale è in esecuzione il server Minecraft. Digitate âstopâ e invio per arrestarlo. Per uscire da screen digitate âCtrl+Aâ poi âkâ e confermate con âyâ. Digitate âexitâ e invio per chiudere il terminale SSH oppure âsudo poweroffâ per spegnere il server Linux Ubuntu.
Screen può essere utilizzato anche per far avviare in automatico il server Minecraft in background allâaccensione del server Linux Ubuntu. In breve, occorre creare un file da inserire nel sistema di avvio e arresto automatico delle applicazioni di Ubuntu (Systemd) e due file di script per lo start e lo stop del server Minecraft. Per creare i file direttamente dalla riga di comando, potete utilizzare lâeditor ânanoâ. Spostatevi nella directory del Systemd digitando âcd /etc/systemd/system/â quindi digitate il comando âsudo nano minecraft.serviceâ per creare un file denominato minecraft.service nel quale inserire, ad esempio, le seguenti istruzioni (consultate le guide online su come creare file per systemd):
[Unit]
Description=Bedrock Minecraft server
After=network.target
[Service]
User=nomeutente
WorkingDirectory=/opt/minecraft/server
Type=forking
ExecStart=/bin/bash /opt/minecraft/start.sh
ExecStop=/bin/bash /opt/minecraft/stop.sh
GuessMainPID=no
TimeoutStartSec=600
[Install]
WantedBy=multi-user.target
avendo lâaccortezza di sostituire il nomeutente dopo âUser=â con il vostro nome utente, quello utilizzato per il login su Ubuntu e per assegnare i permessi di proprietario alla cartella Minecraft, prima di salvare il file con âCtrl+Oâ, invio e âCtrl+Xâ.
A questo punto, spostatevi nella cartella /opt/minecraft dove dovete creare i due file di script a cui viene rimandata lâesecuzione dello start e dello stop del server Minecraft, ovvero start.sh e stop.sh.
Digitate ânano start.shâ e inserite, ad esempio, le seguenti istruzioni (consultate le guide online su come creare file di Bash scripting):
#!/bin/bash
screen -dmS minecraftSrv /bin/bash -c "LD_LIBRARY_PATH=/opt/minecraft/server /opt/minecraft/server/bedrock_server"
echo "Minecraft server started"
exit 0
quindi salvate il file e create il file "nano stop.sh" nel quale inserire, ad esempio, le seguenti istruzioni (consultate le guide online su come creare file di Bash scripting):
#!/bin/bash
screen -Rd minecraftSrv -X stuff "stop$(printf '\r')"
# Wait up to 20 seconds
StopChecks=0
while [ $StopChecks -lt 20 ]; do
if ! screen -list | grep -q "minecraftSrv"; then
break
fi
sleep 1;
StopChecks=$((StopChecks+1))
done
# Kill screen terminal
if screen -list | grep -q "minecraftSrv"; then
screen -S minecraftSrv -X quit
fi
echo "Minecraft server stopped"
exit 0
Rendete eseguibili i due script con âchmod ug+x start.sh stop.shâ e spostatevi nella cartella server âcd serverâ per provare il funzionamento dei due script digitando ../start.sh e verificando con âscreen -lsâ se il server Minecraft è stato avviato (dovrebbe essere presente un terminale screen minecraftSrv Detached) e poi ../stop.sh e verificando con âscreen -lsâ se il server Minecraft è stato arrestato (nessun terminale screen).
Dopo aver verificato il funzionamento manuale dei due script verificate il funzionamento del file minecraft.service che avete creato in precedenza impartendo i comandi: âsudo systemctl start minecraft.serviceâ, âsudo systemctl status minecraft.serviceâ e poi âCtrl+câ e infine âsudo systemctl stop minecraft.serviceâ.
Se tutto funziona abilitate lâavvio automatico del server Minecraft con il comando âsudo systemctl enable minecraft.serviceâ.
Non resta altro che illustrare una procedura per aggiornare il server Minecraft ogni qualvolta viene aggiornato Minecraft.
Attraverso una ricerca su internet è possibile anche reperire informazioni su come automatizzare lâaggiornamento e lâavvio di un server dedicato Minecraft, come ad esempio a questo indirizzo web: https://github.com/TheRemote/MinecraftBedrockServer dove è possibile visualizzare il codice di un programma che consente di installare un server dedicato Minecraft Bedrock su Ubuntu con le opzioni di avvio e aggiornamento automatico.
Per lâaggiornamento manuale del server, invece, illustriamo la procedura nel prossimo articolo assieme agli aspetti principali della configurazione e gestione del server dedicato Minecraft.