Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Γεια σου Χαμπρ! Πιο συγκεκριμένα, απατεώνες που ψάχνουν πώς να ρυθμίσουν έναν διακομιστή minecraft για να παίξουν με φίλους.

Το άρθρο προορίζεται για μη προγραμματιστές, μη sysadmin, γενικά, όχι για το κύριο κοινό του Habr. Το άρθρο περιέχει οδηγίες βήμα προς βήμα για τη δημιουργία ενός διακομιστή minecraft με αποκλειστική IP, προσαρμοσμένη για άτομα που απέχουν πολύ από το IT. Εάν αυτό δεν αφορά εσάς, είναι καλύτερα να παραλείψετε το άρθρο.

Τι είναι ένας διακομιστής;

Τι είναι λοιπόν ένας διακομιστής; Εάν βασιστούμε στην έννοια του "διακομιστή" ως στοιχείο λογισμικού, τότε ο διακομιστής είναι ένα πρόγραμμα που μπορεί να λαμβάνει, να επεξεργάζεται και να μεταδίδει δεδομένα που λαμβάνονται από χρήστες (πελάτες) που είναι συνδεδεμένοι σε αυτόν τον διακομιστή. Στο παράδειγμα ενός ιστότοπου - ο ιστότοπος βρίσκεται σε κάποιον διακομιστή ιστού στον οποίο έχετε πρόσβαση μέσω ενός προγράμματος περιήγησης. Στην περίπτωσή μας, ο διακομιστής του minecraft δημιουργεί έναν κόσμο στον οποίο συνδέονται οι παίκτες (πελάτες), οι οποίοι μπορούν να περπατήσουν, να σπάσουν μπλοκ κ.λπ. Ο διακομιστής του minecraft είναι υπεύθυνος για τη σύνδεση των παικτών και οποιασδήποτε από τις ενέργειές τους.

Προφανώς, ο διακομιστής πρέπει να λειτουργεί στον υπολογιστή (μηχανή). Μπορείτε να ανεβάσετε τον διακομιστή στον οικιακό σας υπολογιστή, αλλά σε αυτήν την περίπτωση:

  • Διακυβεύετε την ασφάλεια του υπολογιστή σας ανοίγοντας θύρες σε αυτόν
  • Ο διακομιστής θα φορτώσει τον υπολογιστή σας, κάτι που μπορεί να επηρεάσει την εργασία σας με αυτόν
  • Δεν μπορείτε να διατηρήσετε τον υπολογιστή του σπιτιού σας σε λειτουργία 24 ώρες το 7ωρο: μερικές φορές τον απενεργοποιείτε, μερικές φορές ο υπολογιστής σας χάνει τη σύνδεσή του στο Διαδίκτυο κ.λπ.
  • Για να αποκτήσετε πρόσβαση στον διακομιστή σας από τον έξω κόσμο, θα πρέπει να έχετε πρόσβαση στον υπολογιστή σας χρησιμοποιώντας διεύθυνση IP, που για τους «οικιακούς» παρόχους Διαδικτύου είναι δυναμικός, δηλαδή μπορεί να αλλάζει κάθε 2-3 μέρες για λόγους που δεν τον ελέγχετε.

Και πώς λύνουμε αυτά τα προβλήματα;

Η λύση σε όλα αυτά τα προβλήματα είναι η χρήση εικονική μηχανή με στατικός, δηλαδή μια αμετάβλητη διεύθυνση IP.

Δύσκολη ορολογία; Ας το καταλάβουμε.
Ας στραφούμε στη Wikipedia.

Виртуальная машина (VM, от англ. virtual machine) — программная и/или аппаратная система, эмулирующая аппаратное обеспечение некоторой платформы...

Για να το θέσω σε μια πολύ πρόχειρη γλώσσα, είναι ένας υπολογιστής μέσα σε έναν υπολογιστή. Μπορείτε επίσης να εγκαταστήσετε ένα λειτουργικό σύστημα σε αυτό και να εργαστείτε μαζί του όπως με έναν κανονικό υπολογιστή.

Πού θα το πάμε;

Η απάντηση είναι απλή - AWS. Πρόκειται για μια πλατφόρμα που παρέχει πολλές διαφορετικές υπηρεσίες cloud που είναι χρήσιμες για όλους όσοι εργάζονται με τον ιστό και όχι μόνο. Για να δημιουργήσετε έναν διακομιστή minecraft, ένα από τα προϊόντα AWS είναι τέλειο - Amazon EC2 - μια εικονική μηχανή cloud που είναι διαθέσιμη 24/7. Η AWS προσφέρει μια ελάχιστη εικονική μηχανή (10 GB SSD, 1 GB RAM) δωρεάν για ένα χρόνο, επιπλέον, καθιστά δυνατή τη δέσμευση μιας δωρεάν αποκλειστικής (στατικής) διεύθυνσης IP για μόνιμη πρόσβαση στο VM (εικονικό μηχάνημα) στην ίδια διεύθυνση.

Δημιουργία και διαμόρφωση VM

Μεταβείτε στον ιστότοπο AWS και εγγραφείτε. Στη συνέχεια, μεταβείτε στην κονσόλα διαχείρισης.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Στην κονσόλα, ανάμεσα στις υπηρεσίες, βρείτε EC2 και πήγαινε σε αυτό.

Είναι σημαντικό να επιλέξετε ένα κέντρο δεδομένων, με άλλα λόγια, το μέρος όπου βρίσκονται οι διακομιστές της Amazon. Θα πρέπει να επιλέξετε ανάλογα με την τοποθεσία σας, επειδή η ταχύτητα επικοινωνίας στο Διαδίκτυο είναι διαφορετική και θα πρέπει να επιλέξετε ένα κέντρο δεδομένων με το οποίο η επικοινωνία από την πόλη σας θα είναι όσο το δυνατόν πιο γρήγορη.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Για να επιλέξετε ένα κέντρο δεδομένων, συνιστώ να χρησιμοποιήσετε την υπηρεσία Wonder Network, το οποίο μετρά τον ρυθμό με τον οποίο αποστέλλονται τα πακέτα σε άλλες πόλεις.
Στην περίπτωσή μου (Μόσχα), με πλησίασε ένα ιρλανδικό κέντρο δεδομένων.

Ήρθε η ώρα να δημιουργήσετε μια εικονική μηχανή. Για να το κάνετε αυτό, μεταβείτε στην καρτέλα παράδειγμα εκκίνησης

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Ας ξεκινήσουμε τη διαμόρφωση του VM.

1) Επιλέξτε την εικόνα του λειτουργικού συστήματος. Για να αυξήσετε τους διακομιστές, το linux είναι πολύ βολικό, θα χρησιμοποιήσουμε το κιτ διανομής CentOS7

Θα πρέπει να σημειωθεί ότι δεν θα υπάρχει γραφικό περιβάλλον στην εικονική σας μηχανή, η πρόσβαση στο μηχάνημα θα γίνεται μέσω της κονσόλας. Περιλαμβάνει τον έλεγχο της εικονικής μηχανής χρησιμοποιώντας εντολές και όχι με ποντίκι υπολογιστή. Μην το φοβάστε: δεν θα πρέπει να σας σταματήσει τώρα ή να εγκαταλείψετε την ιδέα να ξεκινήσετε τον δικό σας διακομιστή minecraft καθώς είναι "πολύ περίπλοκο". Η εργασία με το μηχάνημα μέσω της κονσόλας είναι εύκολη - θα το διαπιστώσετε σύντομα μόνοι σας.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

2) Τώρα ας ορίσουμε την τεχνική διαμόρφωση του VM. Για δωρεάν χρήση, η Amazon προσφέρει μια διαμόρφωση t2.micro, δεν αρκεί για έναν ολοκληρωμένο μεγάλο διακομιστή Minecraft, αλλά αρκετά για να παίξετε με φίλους.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

3) Οι υπόλοιπες ρυθμίσεις αφήνονται από προεπιλογή., Αλλά σταματάμε στην καρτέλα Διαμόρφωση ομάδων ασφαλείας.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Εδώ πρέπει να διαμορφώσουμε την πρόσβαση στη θύρα για τον διακομιστή minecraft.

Με απλά λόγια, μια θύρα είναι ένας μη αρνητικός αριθμός που υποδεικνύει σε ποιον απευθύνονται τα εισερχόμενα δεδομένα από τον έξω κόσμο. Μπορεί να υπάρχουν πολλές διαφορετικές υπηρεσίες και διακομιστές σε ένα VM, επομένως όλα τα εισερχόμενα πακέτα δεδομένων αποθηκεύουν στην κεφαλίδα τους τη θύρα (αριθμό) του προορισμού (υπηρεσία, διακομιστής) μέσα στο VM.

Για διακομιστές minecraft, το de facto πρότυπο είναι η χρήση της θύρας 25565. Ας προσθέσουμε έναν κανόνα που υποδεικνύει ότι επιτρέπεται η πρόσβαση στο VM σας μέσω αυτής της θύρας.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Μεταβείτε στο παράθυρο για την ολοκλήρωση της δημιουργίας του VM κάνοντας κλικ στο κουμπί Αναθεώρηση και εκκίνηση

Ρύθμιση ενός ζεύγους κλειδιών SSH για το VM

Έτσι, η σύνδεση με το μηχάνημα θα πραγματοποιηθεί χρησιμοποιώντας το πρωτόκολλο SSH.

Το πρωτόκολλο SSH λειτουργεί ως εξής: δημιουργείται ένα ζεύγος κλειδιών (δημόσιο και ιδιωτικό), το δημόσιο κλειδί αποθηκεύεται στο VM και το ιδιωτικό κλειδί αποθηκεύεται στον υπολογιστή του ατόμου που συνδέεται με το VM (πελάτης). Κατά τη σύνδεση, το VM ελέγχει ότι ο πελάτης διαθέτει έγκυρο ιδιωτικό κλειδί.

Κάντε κλικ στο κουμπί Εκκίνηση. Το παρακάτω παράθυρο θα εμφανιστεί μπροστά σας:

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Εισαγάγετε ένα όνομα για το ζεύγος κλειδιών (για τη διευκόλυνσή σας) και κάντε κλικ λήψη ζεύγους κλειδιών. Πρέπει να κάνετε λήψη ένα αρχείο που περιέχει το ιδιωτικό σας κλειδί. Κάντε κλικ στο κουμπί Εκκινήστε περιπτώσεις. Μόλις δημιουργήσατε μια εικονική μηχανή που θα φιλοξενεί τον διακομιστή.

Λήψη στατικής IP

Τώρα πρέπει να πάρουμε και να συνδέσουμε μια στατική IP στο VM μας. Για αυτό το μενού βρίσκουμε την καρτέλα Ελαστικά IP και περάστε το. Στην καρτέλα, κάντε κλικ στο κουμπί Εκχώρηση Elastic IP διεύθυνσης και πάρε στατική IP.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Τώρα η ληφθείσα διεύθυνση IP πρέπει να συνδεθεί με το VM μας. Για να το κάνετε αυτό, επιλέξτε το από τη λίστα και στο μενού Δράσεις επιλέγω Συσχετισμένη διεύθυνση IP

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Στη συνέχεια, συνδέστε το VM στη διεύθυνση IP μας

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Έγινε!

Μεταβείτε στο VM

Τώρα που το VM έχει διαμορφωθεί και η διεύθυνση IP είναι δεσμευμένη, ας συνδεθούμε σε αυτό και ας εγκαταστήσουμε τον διακομιστή minecraft.

Για να συνδεθείτε στο VM μέσω SSH, χρησιμοποιήστε το πρόγραμμα PuTTY. Εγκαταστήστε αμέσως το PuTTYgen από την ίδια σελίδα

Αφού εγκαταστήσετε το PuTTY, ανοίξτε το. Τώρα πρέπει να ρυθμίσετε τη σύνδεση.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

  1. Στην καρτέλα Συνεδρία επιλέξτε τύπο σύνδεσης SSH, Λιμάνι 22. Καθορίστε ένα όνομα για τη σύνδεση. Το όνομα κεντρικού υπολογιστή για σύνδεση μέσω SSH είναι μια συμβολοσειρά όπως: имя_пользователя@публичный_dns.

Το προεπιλεγμένο όνομα χρήστη στο AWS για το CentOS είναι − CentOS. Μπορείτε να δείτε το δημόσιο DNS σας εδώ:

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Πήρα μια γραμμή [email protected]

  1. Στην καρτέλα SSH -> Auth παρέχετε το ιδιωτικό σας κλειδί SSH. Αποθηκεύεται σε αρχείο .pem, το οποίο κατεβάσαμε νωρίτερα. Αλλά το PuTTY δεν μπορεί να λειτουργήσει με αρχεία .pem, χρειάζεται τη μορφή .ppk. Θα χρησιμοποιήσουμε το PuTTYgen για τη μετατροπή. Οδηγίες μετατροπής από τον ιστότοπο PuTTYgen. Λήψη αρχείου .ppk Αποθηκεύστε και εισάγετε εδώ:

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

  1. Συνδέουμε στο VM ανοίγοντας τη σύνδεση με το κουμπί Ανοικτό.
    Συγχαρητήρια! Μόλις συνδεθήκαμε στην κονσόλα του VM σας. Μένει να ανεβάσουμε τον διακομιστή μας σε αυτό.

Εγκατάσταση και διαμόρφωση διακομιστή minecraft

Ας ξεκινήσουμε τη ρύθμιση του διακομιστή μας. Αρχικά, πρέπει να εγκαταστήσουμε μερικά πακέτα στο VM μας.

sudo yum install -y wget mc iptables iptables-services java screen

Ας μάθουμε για ποιον σκοπό προορίζεται το καθένα από τα πακέτα.

  • wget - ένα βοηθητικό πρόγραμμα για τη λήψη αρχείων σε linux. Με αυτό, θα κατεβάσουμε τα αρχεία διακομιστή.
  • mc - Πρόγραμμα επεξεργασίας κειμένου κονσόλας. Διαφέρει ως προς την απλότητα και την ευκολία στη χρήση για τον απροετοίμαστο χρήστη.
  • iptables - ένα βοηθητικό πρόγραμμα για τη διαχείριση και τη διαμόρφωση ενός τείχους προστασίας, με τη βοήθεια του θα ανοίξουμε μια θύρα για έναν διακομιστή στο VM μας.
  • Ιάβα - Το minecraft τρέχει σε java, επομένως είναι απαραίτητο να λειτουργήσει ο διακομιστής
  • οθόνη είναι ένας διαχειριστής παραθύρων για linux. Θα μας επιτρέψει να αντιγράψουμε την κονσόλα μας για να ανεβάσουμε τον διακομιστή. Το γεγονός είναι ότι ο διακομιστής πρέπει να ξεκινήσει μέσω της κονσόλας, εάν αποσυνδεθείτε από το VM σας, η διαδικασία διακομιστή θα σταματήσει. Επομένως, θα το εκτελέσουμε σε ξεχωριστό παράθυρο κονσόλας.

Τώρα ας διαμορφώσουμε το τείχος προστασίας.

Το τείχος προστασίας είναι ένα στοιχείο λογισμικού ή υλικού-λογισμικού ενός δικτύου υπολογιστών που ελέγχει και φιλτράρει την κυκλοφορία δικτύου που διέρχεται από αυτό σύμφωνα με καθορισμένους κανόνες. (Βικιπαίδεια)

Εξηγώντας με απλά λόγια: φανταστείτε μια περιτειχισμένη πόλη. Δέχεται συνεχώς επίθεση από έξω, ενώ η συνηθισμένη ζωή κυλάει στην πόλη. Για πρόσβαση στην πόλη, υπάρχει μια πύλη στο τείχος του φρουρίου, στην οποία στέκονται φρουροί και ελέγχουν σύμφωνα με τους καταλόγους εάν αυτό το άτομο μπορεί να επιτραπεί στο φρούριο. Ο ρόλος του τοίχου και της πύλης στα δίκτυα υπολογιστών εκτελείται από το τείχος προστασίας.

sudo mcedit /etc/sysconfig/iptables

Μόλις δημιουργήσαμε ένα αρχείο διαμόρφωσης τείχους προστασίας. Συμπληρώστε το με τυπικά δεδομένα διαμόρφωσης, συμπεριλαμβανομένου ενός κανόνα για τη θύρα 25565, η οποία είναι η τυπική θύρα για τον διακομιστή minecraft.

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 25565 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

Κλείστε το αρχείο κάνοντας κλικ F10, αποθηκεύοντας τις αλλαγές.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Τώρα ας ξεκινήσουμε το τείχος προστασίας και ας ενεργοποιήσουμε την αυτόματη φόρτωση:

sudo systemctl enable iptables
sudo systemctl restart iptables

Θα αποθηκεύσουμε τα αρχεία διακομιστή σε ξεχωριστό φάκελο, θα τον δημιουργήσουμε, θα μεταβούμε σε αυτόν και θα κατεβάσουμε τα αρχεία του διακομιστή. Για αυτό θα πρέπει να χρησιμοποιήσετε wget

mkdir minecraft
cd minecraft
wget <ссылка_на_jar>

Πρέπει να βρεθεί απευθείας σύνδεσμος για λήψη .jar αρχείο διακομιστή. Για παράδειγμα, ένας σύνδεσμος προς την έκδοση 1.15.2 του αρχείου διακομιστή:

wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar

Δείτε τα περιεχόμενα ενός φακέλου με την εντολή ls, βεβαιωθείτε ότι έχετε κατεβάσει τα αρχεία.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Ας ξεκινήσουμε το αρχείο διακομιστή. Τώρα ο διακομιστής δεν θα λειτουργεί: θα δημιουργήσει όλα τα απαραίτητα αρχεία για την εργασία και θα ορκιστεί ότι δεν συμφωνήσατε με τους όρους της άδειας χρήσης EULA. Αποδεχτείτε τους όρους ανοίγοντας το αρχείο eula.txt

sudo mcedit eula.txt

Επιβεβαιώστε τη συγκατάθεσή σας αλλάζοντας την καταχώριση σε:

eula=true

Ανοίξτε το αρχείο server.properties: Αυτό είναι το αρχείο διαμόρφωσης του διακομιστή σας. Μάθετε περισσότερα σχετικά με τις ρυθμίσεις διακομιστή

Πρέπει να κάνετε την ακόλουθη αλλαγή σε αυτό:

online-mode=false

Οι υπόλοιπες ρυθμίσεις είναι στο χέρι σας.

Έναρξη διακομιστή

Ήρθε η ώρα να ξεκινήσετε τον διακομιστή. Όπως είπα, ο διακομιστής ξεκινά απευθείας από την κονσόλα, αλλά αν κλείσουμε την κύρια κονσόλα, η διαδικασία διακομιστή θα σταματήσει. Ας δημιουργήσουμε λοιπόν μια άλλη κονσόλα:

screen

Σε αυτήν την κονσόλα, ξεκινήστε τον διακομιστή:

 sudo java -Xms512M -Xmx1024M -jar <название_файла_сервера>.jar --nogui

Ο διακομιστής ξεκινά σε περίπου 45 δευτερόλεπτα, μην διακόψετε τη διαδικασία. Όταν ο διακομιστής προετοιμαστεί και εκτελείται, θα δείτε κάτι σαν:

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Συγχαρητήρια! Μόλις σηκώθηκες και τρέχεις τον διακομιστή σου στο minecraft. Τώρα είναι σημαντικό να βγείτε σωστά από τη δεύτερη κονσόλα, ώστε να συνεχίσει να λειτουργεί με τον διακομιστή που λειτουργεί. Για να το κάνετε αυτό, κάντε κλικ Ctrl+Aτότε D. Θα πρέπει να είστε στην κύρια κονσόλα και να δείτε ένα μήνυμα όπως [detached from 1551.pts-0.ip-172-31-37-146]. Εάν πρέπει να επιστρέψετε στην κονσόλα όπου εκτελείται ο διακομιστής, χρησιμοποιήστε το screen -r

Τώρα μπορείτε να αποσυνδεθείτε από το VM σας. Ο διακομιστής σας θα είναι προσβάσιμος στη στατική διεύθυνση IP που λάβαμε νωρίτερα στη θύρα 25565.

Δωρεάν διακομιστής minecraft σε AWS με μηδενική γνώση linux

Αποδεικνύεται ότι η διεύθυνση για την είσοδο στον διακομιστή θα είναι <ваш_статический_IP>:25565.

Συμπέρασμα

Ακολουθώντας αυτήν την οδηγία, μπορείτε να δημιουργήσετε έναν δωρεάν διακομιστή Minecraft με μια αποκλειστική IP χωρίς δυσκολία. Το άρθρο γράφτηκε στην πιο απλή γλώσσα και έχει σχεδιαστεί για μη ειδικούς. Από αυτή την άποψη, είναι ενδιαφέρον να ακούμε τα σχόλια εκείνων που έχουν χακαριστεί, γιατί κατά την απλοποίηση του υλικού, μπορούν να γίνουν πραγματολογικά λάθη στην ορολογία.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο