Logo
Published on

Come proteggere il proprio server Minecraft in modo gratuito!

Authors

I server di Minecraft utilizzano software complessi e, nonostante aggiornamenti e ottimizzazioni costanti, sono spesso vulnerabili a diversi attacchi informatici. Tra questi, uno dei più comuni è l'attacco DDoS, che consiste nell'invio massiccio di dati per sovraccaricare il sistema, provocando lag estremo o addirittura il crash. Per questo motivo, è fondamentale mantenere segreto l'indirizzo IP della macchina che ospita il server. In questo articolo vedremo come proteggere il proprio server Minecraft in modo completamente gratuito, concentrandoci sulla configurazione di un sistema Anti-DDoS.

Sfortunatamente questo tipo di attacco è solo una delle vulnerabilità presenti, questa guida non include come proteggere il vostro server da bug, exploit, plugin malevoli o attacchi inerenti a software ospitati sul vostro VPS/dedicato oltre al vostro server Minecraft!

In cosa consiste?

Al giorno d'oggi è molto comune che qualche malintenzionato provi a effettuare attacchi DDoS, Griefing o simili per cercare di arrecare danni ad un server Minecraft. Sfortunatamente questa pratica si è diffusa a perdita d'occhio e col passare del tempo è diventata sempre più semplice; la causa principale è che sempre più persone non sono a conoscenza di questo problema o non sanno come risolverlo in modo ottimale. L'obiettivo di questo articolo è insegnarvi come evitare che ciò accada riducendo drasticamente i rischi!

Quando si ospita un server su un VPS, bisognerà inserire l’IP e la porta di esso per collegarsi, in questo modo il server accetterà una connessione diretta dall'indirizzo IP del giocatore, inviando i pacchetti necessari per processare l'evento.

Utilizzare un dominio e reindirizzarlo al vostro IP rende indifferente il risultato, è solo una questione estetica.


Quale sarebbe il problema?

Presto detto! Il problema è che in questo modo chiunque potrebbe inviare dati e/o pacchetti col solo scopo di causare danni e sovraccaricare il vostro server, come se entrassero tantissimi giocatori nello stesso momento, senza troppe difficoltà. 

Questa eventualità, menzionata prima, può portare a far laggare eccessivamente il server, alzare il ping in modo drastico o addirittura farlo crashare.

Il modo più semplice per evitarlo è configurare uno dei molti servizi Anti-DDoS per server Minecraft!


Come funziona?

Di seguito un piccolo esempio per far capire le differenza nell'usare usare uno di questi servizi e non farlo, prendiamo per esempio il giocatore Gino che prova a connettersi al nuovo server Minecraft che ha trovato:

Senza Anti-DDoS

Gino —->  play.ilvostrobellissimoserver.it —-> 127.0.0.1:25565 

Con un Anti-DDoS

Gino —-> play.ilvostrobellissimoserver.it —-> Anti-DDoS —-> 127.0.0.1:25565 

Come si può vedere quando si utilizza uno di questi servizi il giocatore NON invia dati direttamente al vostro server, ma “passa” tramite i server del vostro gestore, che ha il compito di reindirizzare eventuali pacchetti malevoli fuori dal vostro server, accettando solo connessioni sicure e verificate.


Guida: Come configurare un Anti-DDoS

Requisiti

  • Un dominio e l'accesso ai suoi DNS
  • Accesso al VPS/dedicato dove è ospitato il server Minecraft

Scelta del gestore

Il primo step è scegliere il gestore migliore per le vostre esigenze, i più affidabili, conosciuti e utilizzati da grandi server sono:

Sono tutti validi e molto simili nella loro versione gratuita, consultate i loro siti per visualizzare i vari piani scegliendo quello che più vi aggrada! 

Offrono mediamente un limite di 20-30 giocatori collegati simultaneamente con 1 TB di connessione mensile ciascuno.

Il consiglio è di scegliere quello con i server geograficamente più vicini al vostro, ridurrà il ping e avrà una connessione mediamente più stabile!


Creazione account

Create un account sul sito del gestore da voi scelto, (se possibile configurate il 2FA!), successivamente create un network e dategli il nome che preferite.


Setup record DNS

Adesso dovrete recarvi alla pagina di gestione DNS del vostro dominio, in questo caso utilizzerò CloudFlare:

Ogni gestore ha un procedimento diverso, alcuni bisogna creare più record o utilizzare il loro plugin in modo che funzioni, riferitevi alla documentazione dell’Anti-DDoS da voi scelto!

Creare un record CNAME 

Come primo passo dovrete creare un record di tipologia CNAME, l'esempio sottostante prevede che il mio IP: play.serverbello.it punti ai server del mio gestore:

Name: Sottodominio con il quale i vostri giocatori si connetteranno, in questo caso ho usato “play”.

Target: Questo sarà un codice specifico che potete trovare nella sezione DNS/Backend del pannello del vostro gestore Anti-DDoS.

Proxy Status: Disattivato

TTL: Automatico


Aggiungere il server al pannello

Recatevi nel pannello dove siete stati reindirizzati dopo aver creato un account sul sito da voi scelto in precedenza, andate nella sezione Backend, cliccate su crea e inserite l’IP e la porta del vostro server Minecraft, per fare un esempio supponiamo che il vostro IP sia 127.0.0.1 e la vostra porta 25565 (porta default di Minecraft), in questo caso dovrete inserire: 127.0.0.1:25565, ricordatevi di salvare!


Configurare il server

Ora bisogna configurare il server! 

Se avete un proxy (Come BungeeCord o Velocity):

Abilitate la funzione “Proxy-Protocol” (o HAProxy-Protocol se usate Velocity) nel file di configurazione del vostro proxy e nel pannello sopra citato (Sezione Backend). È una funzione integrata nei proxy che preserva informazioni importanti come l'indirizzo IP del client di origine. Senza di essa, il proxy non potrebbe trasmettere queste informazioni al server finale e l'IP di ogni giocatore risulterebbe identico. Questo protocollo rende il server più sicuro e consente ai giocatori di essere reindirizzati direttamente al vostro server. 

Se avete un server Spigot (o fork):

Spigot e i suoi principali fork non hanno questa funzione integrata di base, ciò significa che dovrete installare il plugin fornito dal vostro gestore, ricordatevi di NON utilizzare plugman o simili per attivarlo, ma riavviate il vostro server! Una volta fatto, assicuratevi di abilitare la funzione (cambia nome per ogni plugin), che obbliga gli utenti a connettersi tramite i server del vostro gestore ed evitare che il vostro indirizzo IP venga trovato!


Il gioco è fatto!

Se avete fatto tutto correttamente ora dovreste vedere il vostro server online senza differenze rispetto a prima, come capire se ha funzionato? 

Aprite il prompt dei comandi del vostro computer ed eseguite il comando:

ping play.serverbello.it

Dovrebbe mostrarvi un indirizzo IP numerico e altri valori sulla latenza, se l'indirizzo mostrato è diverso da quello del vostro VPS/dedicato significa che il procedimento è andato a buon fine!

Nel caso di qualsiasi problema con l'esecuzione di questo comando recatevi su mcsrvstat.us, inserite il vostro dominio, cliccate invio e attivate le Debug info, nella sezione IP address vedrete l'IP numerico a cui il vostro server punta!


Qualche problema?

Ecco una piccola lista degli errori più comuni e come risolverli!

“Invalid Hostname”

Se quando pingate il vostro server il MOTD è cambiato e segnala questo errore, significa che il vostro gestore non riesce a connettersi al vostro dominio correttamente, le cause potrebbero essere molte, ricontrollate che:

  • Il dominio o sottodominio da voi scelto sia registrato correttamente sul pannello del vostro gestore

  • Non abbiate altri record CNAME/SRV che vadano in contrasto con il dominio configurato o col target del vostro gestore

  • Abbiate scritto correttamente il vostro dominio 

Fate attenzione a controllare con attenzione questi punti, una sola mancanza, anche se minima, farà in modo che non funzioni!

“Vengo disconnesso appena entro”

In questo caso l'errore sembra causato dal fatto che il proxy del vostro gestore non stia riuscendo a collegarsi al vostro server, le cause possono essere:

  • L'indirizzo IP e/o porta da voi specificati sul pannello non sono gli stessi che il vostro server sta usando
  • Il vostro server non è raggiungibile

Per risolvere il primo problema basta semplicemente ricontrollare di aver inserito i dati correttamente sul pannello e assicurarsi che la porta specificata sia la stessa che il vostro server sta usando.

Per il secondo problema dovete controllare se il vostro server è raggiungibile dall'esterno, quindi usando un tool come yougetsignal.com, inserire i dati richiesti  e controllare se l'indirizzo e la porta da voi specificati siano aperti e che accettino connessioni.

“Quando entro il server lagga ed è molto lento!”

Anche in questa evenienza le cause potrebbero essere molteplici, le più comuni sono:

  • Il valore medio dei TPS del vostro server è basso e di conseguenza crea un lag generale ancora più accentuato rispetto a prima.

  • Il vostro server impiega più tempo del previsto a caricarsi, causato da processi in background che usano troppa CPU o RAM.

  • Il vostro server é geograficamente molto lontano dai proxy del vostro gestore, succede perchè i pacchetti devono fare molti più passaggi per arrivare a destinazione, questo può capitare se si acquistano server molto economici in parti remote del mondo.

Per monitorare le prestazioni del server, potete utilizzare il comando /tps (se state utilizzando Paper è integrato) oppure installando il plugin Spark. L'output del comando mostrerà una lista di numeri: più questi numeri sono vicini a 20, meglio è. Se invece i valori sono mediamente più bassi, dovrete identificare e ridurre le cause di lag sul vostro server Minecraft. Se volete una diagnostica più precisa, eseguite (sempre con Spark) il comando /Spark healthreport, vi fornirà dettagli maggiori sul vostro server e potrete verificare se non ha abbastanza risorse per processare i dati.

Per il terzo punto ahimè non c'è molto da fare, avete essenzialmente due opzioni, comprare un server geograficamente più vicino, o (se il gestore offre questo servizio) comprare un piano a pagamento per usufruire di eventuali loro server che il piano gratuito non includeva.

Nel caso in cui nessuno di questi errori sia quello che state riscontrando, la raccomandazione  è di riferirsi alle documentazioni apposite, se anche con esse non riuscite a risolvere il problema richiedete supporto sul loro Discord, saranno felici di aiutarvi!


Conclusioni

Adesso avete imparato come configurare un Anti-DDoS per il vostro server Minecraft! Ricordatevi di non condividere l'indirizzo IP numerico del vostro server e di usare un firewall con solo le porte necessarie aperte!