Kostenloser Minecraft-Server auf AWS ohne Linux-Kenntnisse
Hey Habr! Genauer gesagt, Gauner, die nach Möglichkeiten suchen, einen Minecraft-Server einzurichten, um mit Freunden zu spielen.
Der Artikel richtet sich im Allgemeinen an Nicht-Programmierer und Nicht-Systemadministratoren und nicht an die Hauptzielgruppe von Habr. Der Artikel enthält Schritt-für-Schritt-Anleitungen zum Erstellen eines Minecraft-Servers mit einer dedizierten IP, angepasst für Personen, die weit von der IT entfernt sind. Wenn es hier nicht um Sie geht, überspringen Sie den Artikel besser.
Was ist ein Server?
Was ist also ein Server? Wenn wir uns auf den Begriff „Server“ als Softwarekomponente verlassen, dann ist der Server ein Programm, das Daten empfangen, verarbeiten und übertragen kann, die von Benutzern (Clients) empfangen werden, die mit diesem Server verbunden sind. Am Beispiel einer Site: Die Site befindet sich auf einem Webserver, auf den Sie über einen Browser zugreifen. In unserem Fall generiert der Minecraft-Server eine Welt, mit der sich Spieler (Clients) verbinden, die laufen, Blöcke brechen usw. können. Der Minecraft-Server ist für die Verbindung der Spieler und aller ihrer Aktionen verantwortlich.
Natürlich muss der Server auf dem Computer (Maschine) laufen. Sie können den Server auf Ihrem Heimcomputer hochfahren, aber in diesem Fall:
Sie gefährden die Sicherheit Ihres eigenen Computers, indem Sie darauf Ports öffnen
Der Server belastet Ihren Computer, was Ihre Arbeit damit beeinträchtigen kann
Sie können Ihren Heimcomputer nicht rund um die Uhr betriebsbereit halten: Manchmal schalten Sie ihn aus, manchmal verliert Ihr Computer die Internetverbindung und so weiter.
Um von außen auf Ihren Server zuzugreifen, müssen Sie über auf Ihren Computer zugreifen IP Adresse, was für „Heim“-Internetanbieter gilt dynamisch, das heißt, es kann sich aus Gründen, die außerhalb Ihrer Kontrolle liegen, alle 2-3 Tage ändern.
Und wie lösen wir diese Probleme?
Die Lösung all dieser Probleme liegt in der Verwendung virtuelle Maschine mit statisch, also eine unveränderliche IP-Adresse.
Schwierige Terminologie? Lass es uns herausfinden.
Wenden wir uns Wikipedia zu.
Виртуальная машина (VM, от англ. virtual machine) — программная и/или аппаратная система, эмулирующая аппаратное обеспечение некоторой платформы...
Um es grob auszudrücken: Es handelt sich um einen Computer im Computer. Sie können darauf auch ein Betriebssystem installieren und wie mit einem normalen Computer damit arbeiten.
Wohin bringen wir es?
Die Antwort ist einfach: AWS. Dies ist eine Plattform, die viele verschiedene Cloud-Dienste bereitstellt, die nicht nur für alle nützlich sind, die mit dem Web arbeiten. Um einen Minecraft-Server zu erstellen, eignet sich eines der AWS-Produkte perfekt – Amazon EC2 - eine virtuelle Cloud-Maschine, die rund um die Uhr verfügbar ist. AWS bietet eine minimale virtuelle Maschine (24 GB SSD, 7 GB RAM) ein Jahr lang kostenlosDarüber hinaus ist es möglich, eine kostenlose dedizierte (statische) IP-Adresse für den dauerhaften Zugriff auf Ihre VM (virtuelle Maschine) unter derselben Adresse zu binden.
VM erstellen und konfigurieren
Gehen Sie zur Website AWS und registrieren. Gehen Sie dann zur Verwaltungskonsole.
Suchen Sie in der Konsole unter den Diensten EC2 und gehe dazu.
Es ist wichtig, ein Rechenzentrum auszuwählen, also der Ort, an dem sich die Amazon-Server befinden. Sie sollten je nach Standort wählen, da die Kommunikationsgeschwindigkeit im Internet unterschiedlich ist, und Sie sollten ein Rechenzentrum wählen, mit dem die Kommunikation aus Ihrer Stadt möglichst schnell erfolgt.
Zur Auswahl eines Rechenzentrums empfehle ich die Nutzung des Dienstes Wundernetzwerk, der die Rate misst, mit der Pakete an andere Städte gesendet werden.
In meinem Fall (Moskau) wurde ich von einem irischen Rechenzentrum kontaktiert.
Es ist Zeit, eine virtuelle Maschine zu erstellen. Gehen Sie dazu auf die Registerkarte Instanz starten
Beginnen wir mit der Konfiguration der VM.
1) Wählen Sie das Image des Betriebssystems aus. Um Server zu erhöhen, ist Linux sehr praktisch, wir werden das Distributionskit verwenden CentOS7
Es ist zu beachten, dass es auf Ihrer virtuellen Maschine keine grafische Umgebung gibt und der Zugriff auf die Maschine über die Konsole erfolgt. Dabei geht es darum, die VM über Befehle zu steuern, nicht über eine Computermaus. Haben Sie keine Angst davor: Es sollte Sie jetzt nicht davon abhalten oder die Idee, einen eigenen Minecraft-Server zu starten, aufgeben, weil es „zu kompliziert“ ist. Das Arbeiten mit der Maschine über die Konsole ist einfach – Sie werden es gleich selbst sehen.
2) Definieren wir nun die technische Konfiguration der VM. Zur kostenlosen Nutzung bietet Amazon eine Konfiguration an t2.micro, nicht genug für einen vollwertigen großen Minecraft-Server, aber genug, um mit Freunden zu spielen.
3) Die restlichen Einstellungen bleiben standardmäßig erhalten. Wir bleiben jedoch bei der Registerkarte stehen Konfigurieren Sie Sicherheitsgruppen.
Hier müssen wir den Portzugriff für den Minecraft-Server konfigurieren.
Vereinfacht ausgedrückt ist ein Port eine nicht negative Zahl, die angibt, an wen eingehende Daten von der Außenwelt gerichtet sind. Da es auf einer VM viele verschiedene Dienste und Server geben kann, speichern alle eingehenden Datenpakete in ihrem Header den Port (die Nummer) des Ziels (Dienst, Server) innerhalb der VM.
Für Minecraft-Server besteht der De-facto-Standard darin, den Port zu verwenden 25565. Fügen wir eine Regel hinzu, die angibt, dass der Zugriff auf Ihre VM über diesen Port zulässig ist.
Klicken Sie auf die Schaltfläche, um zum Fenster zum Abschluss der Erstellung der VM zu gelangen Überprüfen und starten
Einrichten eines SSH-Schlüsselpaars für die VM
Die Verbindung zur Maschine erfolgt also über das SSH-Protokoll.
Das SSH-Protokoll funktioniert wie folgt: Es wird ein Schlüsselpaar generiert (öffentlich und privat), der öffentliche Schlüssel wird auf der VM gespeichert und der private Schlüssel wird auf dem Computer der Person gespeichert, die sich mit der VM verbindet (Client). Beim Herstellen einer Verbindung prüft die VM, ob der Client über einen gültigen privaten Schlüssel verfügt.
Presse Einführung. Das folgende Fenster erscheint vor Ihnen:
Geben Sie zur Vereinfachung einen Namen für das Schlüsselpaar ein und klicken Sie Schlüsselpaar herunterladen. Sie müssen herunterladen .pem eine Datei, die Ihren privaten Schlüssel enthält. Drück den Knopf Instanzen starten. Sie haben gerade eine virtuelle Maschine erstellt, die den Server hosten wird.
Eine statische IP erhalten
Jetzt müssen wir eine statische IP abrufen und an unsere VM binden. Für dieses Menü finden wir die Registerkarte Elastische IPs und geh es durch. Klicken Sie auf der Registerkarte auf die Schaltfläche Weisen Sie eine elastische IP-Adresse zu und eine statische IP erhalten.
Nun muss die empfangene IP-Adresse an unsere VM gebunden werden. Wählen Sie es dazu aus der Liste und im Menü aus Aktionen wähle IP-Adresse zuordnen
Als nächstes binden Sie die VM an unsere IP-Adresse
Fertig!
Gehen Sie zu VM
Nachdem die VM nun konfiguriert und die IP-Adresse gebunden ist, verbinden wir uns mit ihr und installieren unseren Minecraft-Server.
Um über SSH eine Verbindung zur VM herzustellen, verwenden Sie das Programm PuTTY. Installieren Sie PuTTYgen sofort von derselben Seite
Öffnen Sie PuTTY nach der Installation. Jetzt müssen Sie die Verbindung einrichten.
Der Reiter Session Wählen Sie den Verbindungstyp SSH, Hafen 22. Geben Sie einen Namen für die Verbindung an. Der Hostname für die Verbindung über SSH ist eine Zeichenfolge wie: имя_пользователя@публичный_dns.
Der Standardbenutzername in AWS für CentOS ist − CentOS. Ihr öffentliches DNS kann hier eingesehen werden:
Der Reiter SSH -> Auth Geben Sie Ihren privaten SSH-Schlüssel an. Es wird in einer Datei gespeichert .pem, das wir zuvor heruntergeladen haben. Aber PuTTY kann nicht mit Dateien arbeiten .pem, es braucht das Format .ppk. Für die Konvertierung verwenden wir PuTTYgen. Anweisungen zum Konvertieren von der PuTTYgen-Website. Datei empfangen .ppk Speichern und hier eingeben:
Wir verbinden uns mit der VM, indem wir die Verbindung mit der Schaltfläche öffnen Offen.
Glückwunsch! Wir haben uns gerade mit der Konsole Ihrer VM verbunden. Es bleibt, unseren Server darauf zu heben.
Installieren und Konfigurieren eines Minecraft-Servers
Beginnen wir mit der Einrichtung unseres Servers. Zuerst müssen wir ein paar Pakete auf unserer VM installieren.
sudo yum install -y wget mc iptables iptables-services java screen
Lassen Sie uns herausfinden, wofür jedes der Pakete gedacht ist.
wget - ein Dienstprogramm zum Herunterladen von Dateien unter Linux. Damit laden wir die Serverdateien herunter.
mc - Konsolentexteditor. Unterscheidet sich in der Einfachheit und Benutzerfreundlichkeit für den unvorbereiteten Benutzer.
iptables - ein Dienstprogramm zum Verwalten und Konfigurieren einer Firewall, mit dessen Hilfe wir einen Port für einen Server auf unserer VM öffnen.
Java - Minecraft läuft auf Java, daher ist es notwendig, dass der Server funktioniert
Bildschirm ist ein Fenstermanager für Linux. Dadurch können wir unsere Konsole duplizieren, um den Server zu erhöhen. Tatsache ist, dass der Server über die Konsole gestartet werden muss. Wenn Sie die Verbindung zu Ihrer VM trennen, wird der Serverprozess gestoppt. Daher werden wir es in einem separaten Konsolenfenster ausführen.
Jetzt konfigurieren wir die Firewall.
Eine Firewall ist ein Software- oder Hardware-Software-Element eines Computernetzwerks, das den durch das Netzwerk fließenden Netzwerkverkehr gemäß festgelegten Regeln kontrolliert und filtert. (Wikipedia)
Mit einfachen Worten erklärt: Stellen Sie sich eine ummauerte Stadt vor. Sie wird ständig von außen angegriffen, während in der Stadt das normale Leben seinen Lauf nimmt. Für den Zugang zur Stadt gibt es in der Festungsmauer ein Tor, an dem Wachen stehen und anhand der Listen prüfen, ob diese Person in die Festung gelassen werden kann. Die Rolle der Mauer und des Tores in Computernetzwerken übernimmt die Firewall.
sudo mcedit /etc/sysconfig/iptables
Wir haben gerade eine Firewall-Konfigurationsdatei erstellt. Füllen Sie es mit Standardkonfigurationsdaten, einschließlich einer Regel für den Port 25565, der Standardport für den Minecraft-Server.
*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
Schließen Sie die Datei durch Klicken F10, um die Änderungen zu speichern.
Jetzt starten wir die Firewall und aktivieren das automatische Laden:
Wir speichern die Serverdateien in einem separaten Ordner, erstellen ihn, gehen dorthin und laden die Serverdateien herunter. Hierfür sollten Sie verwenden wget
mkdir minecraft
cd minecraft
wget <ссылка_на_jar>
Ich muss finden direkte Verbindung zum Download .jar Serverdatei. Zum Beispiel ein Link zur Serverdateiversion 1.15.2:
Zeigen Sie den Inhalt eines Ordners mit dem Befehl an ls, stellen Sie sicher, dass die Dateien heruntergeladen werden.
Beginnen wir mit der Serverdatei. Jetzt funktioniert der Server nicht: Er erstellt alle für die Arbeit erforderlichen Dateien und schwört, dass Sie mit den Bedingungen der EULA-Lizenz nicht einverstanden sind. Akzeptieren Sie die Bedingungen, indem Sie die Datei öffnen eula.txt
sudo mcedit eula.txt
Bestätigen Sie Ihr Einverständnis, indem Sie den Eintrag ändern in:
Es ist Zeit, den Server zu starten. Wie gesagt, der Server startet direkt von der Konsole aus, aber wenn wir die Hauptkonsole schließen, wird der Serverprozess gestoppt. Erstellen wir also eine weitere Konsole:
Der Server startet in etwa 45 Sekunden. Unterbrechen Sie den Vorgang nicht. Wenn der Server initialisiert ist und läuft, sehen Sie etwa Folgendes:
Glückwunsch! Sie haben gerade Ihren Minecraft-Server in Betrieb genommen. Jetzt ist es wichtig, die zweite Konsole ordnungsgemäß zu beenden, damit sie weiterhin mit dem laufenden Server funktioniert. Klicken Sie dazu auf Ctrl+ADann D. Sie sollten sich in der Hauptkonsole befinden und eine Meldung wie „ [detached from 1551.pts-0.ip-172-31-37-146]. Wenn Sie zur Konsole zurückkehren müssen, auf der der Server ausgeführt wird, verwenden Sie screen -r
Jetzt können Sie die Verbindung zu Ihrer VM trennen. Ihr Server ist unter der statischen IP-Adresse, die wir zuvor erhalten haben, auf Port 25565 erreichbar.
Es stellt sich heraus, dass die Adresse für die Eingabe des Servers lautet <ваш_статический_IP>:25565.
Abschluss
Wenn Sie dieser Anleitung folgen, können Sie problemlos einen kostenlosen Minecraft-Server mit einer dedizierten IP einrichten. Der Artikel wurde in der einfachsten Sprache verfasst und richtet sich an Laien. In diesem Zusammenhang ist es interessant, die Kommentare derjenigen zu hören, die gehackt wurden, denn bei der Vereinfachung des Materials können sachliche Fehler in der Terminologie gemacht werden.