Come costruire un server Minecraft
Spesso durante i corsi Minecraft, che tengo ai ragazzi, mi viene chiesto come implementare un server Minecraft.
Spiego loro che far partire un server Minecraft non è poi così difficile. La difficoltà maggiore sta nel procurarsi un server Linux pubblico.
Per i più grandi illustro come farlo in casa propria spendendo poche decine di euro, sfruttando o un vecchio pc o il proprio desktop. Condizione necessaria sarebbe anche avere una linea web in fibra con IP statico, ma chi oggi non l’ha?
Per i più piccoli purtroppo diventa difficile se non impossibile. Consigliamo di farsi dare una mano da un genitore/parente/amico del mestiere. Qualcuno poi ci riesce e con poche nozioni di base può partire con l’installazione di un server personale di Minecraft.
Gli ingredienti non sono poi tanti. Il consiglio è di seguire passo passo questa mini-guida. Per chi lo volesse mettiamo a disposizione un programma che fa tutto da solo…basta chiedere attraverso il link che troverete in fondo all’articolo.
Ecco cosa ci serve:
- Un server Linux con almeno 2GB di memoria in versione Ubuntu >=16 (preferibile)
- Una connessione internet sempre attiva
- Una connessione ssh (terminale) con lo stesso server
- Putty
- 10 minuti di tempo
I passaggi
Putty
Putty è il miglior programma per connettersi a server SSH in ambiente Windows. Lo troviamo direttamente nel sito https://www.putty.org/
Per connettersi al server Linux dobbiamo conoscerne l’indirizzo e quindi procedere con la connessione.
Per gli ambienti Mac e Linux è sufficiente utilizzare l’app Terminale già presente nei due sistemi operativi.
Server Linux – preparazione
Un server Linux pronto all’uso richiede pochi passaggi per essere pronto ad ospitare un server Minecraft.
Ogni riga comando inizierà con “sudo”. Questa non indica una particolare condizione fisiologica dell’installatore ma indica a Linux che il comando verrà eseguito con diritti amministrativi (Switch User DO).
Connettiamoci al server in SSH e digitiamo il seguente comando
sudo apt update
Il comando attualizza le liste di riferimento dei pacchetti. Linux mantiene in locale le liste dei sorgenti dei vari pacchetti installati e non. Il comando andrebbe eseguito sempre prima di effettuare un aggiornamento dei pacchetti installati, che sarà il comando successivo. Ricordo che spesso questi comandi richiedono la conferma esplicita dell’aggiornamento. Nel nostro caso premeremo sempre il tasto Y (yes) oppure S (Sì) a seconda della lingua di sistema.
sudo apt upgrade
Il comando aggiorna gli eventuali pacchetti installati che sono da aggiornare.
Fatto questo procediamo con l’installazione dei pacchetti necessari a Minecraft sia per l’installazione che per l’esecuzione:
sudo apt install wget screen default-jdk nmap systemd
Rispondiamo sempre affermativamente alle richieste di aggiornamento/installazione.
Nello specifico il comando installa:
- Wget (per scaricare il pacchetto jar di Minecraft)
- Screen (permette di eseguire finestre di terminale da quella principale p.e. ssh)
- Default-jdk (la macchina Java per eseguire Minecraft)
- Nmap (modulo per ricercare server, utilizzato come verifica che Minecraft funzioni correttamente)
- Systemd (strumento per eseguire Minecraft come servizio)
Attendiamo qualche minuto e al ritorno del prompt possiamo inserire l’utente minecraft per l’utilizzo del server Minecraft:
sudo useradd -m -r -d /opt/minecraft minecraft
Questo comando crea la cartella /opt/minecraft e la lega al nuovo utente, minecraft.
Ogni server Linux può ospitare diverse istanze di Minecraft server. L’istanza, in parole semplici, è un server. Significa che in un server Linux possiamo avere più server Minecraft.
In questa guida ne creiamo uno solo e lo chiamiamo “Survival”
Per fare ciò creiamo una cartella survival all’interno di minecraft:
sudo mkdir /opt/minecraft/survival
Preleviamo la versione di Minecraft con il seguente comando:
sudo wget -O /opt/minecraft/survival/minecraft_server.jar https://launcher.mojang.com/v1/objects/fe123682e9cb30031eae351764f653500b7396c9/server.jar
La parte “https://../server.jar” la recuperiamo direttamente dal sito ufficiale: https://minecraft.net/en-us/download/server/
Nella pagina copiamo il link come da figura
Preparazione ambiente Minecraft
sudo bash -c “echo eula=true > /opt/minecraft/survival/eula.txt”
ci permetterà di non dover accettare a mano la licenze EULA di Minecraft.
sudo chown -R minecraft /opt/minecraft/survival/
facciamo in modo che l’utente minecraft diventi il proprietario della cartella dove abbiamo installato Minecraft.
Ora prepariamo il file di configurazione di Minecraft, giusto lo stretto indispensabile:
sudo vi /etc/systemd/system/minecraft@.service
Dobbiamo incollarci le seguenti righe:
[Unit]
Description=Minecraft Server: %i
After=network.target
[Service]
WorkingDirectory=/opt/minecraft/%i
User=minecraft
Group=minecraft
Restart=always
ExecStart=/usr/bin/screen -DmS mc-%i /usr/bin/java -Xmx1G -jar minecraft_server.jar nogui
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval ‘stuff “say SERVER SHUTTING DOWN IN 5 SECONDS. SAVING ALL MAPS…”\015’
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval ‘stuff “save-all”\015’
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval ‘stuff “stop”\015’
[Install]
WantedBy=multi-user.target
Una volta copiate premiamo il tasto “Ins” (Insert) della nostra tastiera e quindi il tasto destro del mouse.
Per uscire e salvare nell’ordine: tasto ESC, quindi digitiamo “:wq”. Siamo di nuovo al prompt di Linux.
L’esecuzione
Avviamo il server con il seguente comando
sudo systemctl start minecraft@survival
attendiamo qualche secondo e digitiamo
sudo systemctl status minecraft@survival
per verificare che stia funzionando correttamente. Vedremo in verde “active (running)”.
Verifichiamo anche che sia in ascolto dei client…
nmap -p 25565 localhost
la risposta sarà simile a questa:
Starting Nmap 6.40 ( http://nmap.org ) at 2018-09-21 11:03 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00045s latency).
PORT STATE SERVICE
25565/tcp open minecraft
Ultimo passaggio riguarda l’attivazione del server Minecraft ad ogni riavvio.
sudo systemctl enable minecraft@survival
Possiamo ora riavviare il server Linux e vediamo se tutto è up and running!
sudo reboot
Ora il server Minecraft è pronto all’uso. Buon divertimento.
Opzione Java 8
Solo nel caso dovessimo installare dalla versione 1.13 in su di Minecraft dovremo, prima di eseguire il tutto procedere con l’aggiornamento di Java.
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Ora il server Minecraft è pronto
Ci siamo, il nostro server Minecraft è a posto. Se volessimo proteggerlo un poco proviamo ad utilizzare il comando ufw. Questo comando è da usare con cautela poiché serve per bloccare gli accessi al nostro server. Se si sbaglia e non si attiva la porta per connettersi da remoto (SSH porta 22) diventerà difficile ripristinare il tutto senza una connessione sulla console, per intenderci quella accessibile con la tastiera virtuale o meno collegata al server.
Rimandiamo ad un successivo articolo come proteggere il proprio server Linux.
Buon divertimento!
Ecco il programma già pronto per creare il tuo server Minecraft.
Se hai domande o dubbi sarò pronto a rispondere. Se ti è piaciuto il mio articolo condividilo sulle piattaforme social.