Hallo, Habr! Genau genommen, die Abenteurer, die nach Möglichkeiten suchen, einen Minecraft-Server für Spiele mit Freunden einzurichten.
Der Artikel richtet sich an Nicht-Programmierer, Nicht-Systemadministratoren, kurz an nicht die Hauptzielgruppe von Habr. In dem Artikel gibt es eine Schritt-für-Schritt-Anleitung zur Erstellung eines Minecraft-Servers mit einer festen IP-Adresse, die für Menschen fern von IT angepasst ist. Wenn das nicht auf Sie zutrifft, sollten Sie den Artikel besser überspringen.
Was ist ein Server?
Was ist also ein Server? Wenn wir den Begriff "Server" als einen Bestandteil von Software betrachten, dann ist ein Server ein Programm, das Daten von Benutzern (Clients), die mit diesem Server verbunden sind, empfangen, verarbeiten und weitergeben kann. Am Beispiel einer Website: Die Website befindet sich auf einem bestimmten Webserver, auf den Sie über den Browser zugreifen. In unserem Fall generiert der Minecraft-Server die Welt, zu der sich Spieler (Clients) verbinden können, die gehen, Blöcke abbauen usw. können. Der Minecraft-Server ist verantwortlich für das Verbinden der Spieler und alle ihre Handlungen.
Offensichtlich muss der Server auf einem Computer (Maschine) laufen. Man kann den Server auf seinem eigenen Heimcomputer hochfahren, aber in diesem Fall:
- Setzen Sie die Sicherheit Ihres eigenen Computers aufs Spiel, indem Sie Ports darauf öffnen.
- Der Server wird Ihren Computer belasten, was die Arbeit mit ihm behindern kann.
- Sie können Ihren Heimcomputer nicht 24/7 betriebsbereit halten: manchmal schalten Sie ihn aus, manchmal verliert Ihr Computer die Internetverbindung usw.
- Um von außerhalb auf Ihren Server zugreifen zu können, müssen Sie den Computer über IP-Adresse, der bei "Heimanwender"-Internetprovidern dynamisch, das heißt, er kann sich alle 2-3 Tage aus Gründen ändern, die nicht von Ihnen abhängen.
Und wie lösen wir diese Probleme?
Die Lösung für all die genannten Probleme liegt in der Verwendung einer virtuellen Maschine für statischen, also einer unveränderlichen IP-Adresse.
Komplizierte Terminologie? Lassen Sie uns das klären.
Lassen Sie uns auf Wikipedia schauen.
Eine virtuelle Maschine (VM, von engl. virtual machine) ist ein Software- und/oder Hardwaresystem, das eine Hardware-Plattform emuliert...Um es ganz grob zu erklären – es ist ein Computer in einem Computer. Darauf kann auch ein Betriebssystem installiert werden, und man kann damit arbeiten, wie mit einem normalen Computer.
Wo bekommen wir sie her?
Die Antwort ist einfach — . Es ist eine Plattform, die eine Vielzahl von verschiedenen Cloud-Diensten bereitstellt, die für alle nützlich sind, die mit dem Web arbeiten und darüber hinaus. Um einen Minecraft-Server zu erstellen, eignet sich eines der Produkte von AWS hervorragend — Amazon EC2 — eine Cloud-VM, die rund um die Uhr verfügbar ist. AWS bietet eine minimale VM (10GB SSD, 1GB RAM) ein Jahr kostenlos, außerdem ermöglicht es, 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 auf die Website und registrieren Sie sich. Anschließend wechseln Sie zur Verwaltungs-Konsole.

In der Konsole finden Sie unter den Diensten EC2 und wechseln Sie dazu.
Es ist wichtig, ein Rechenzentrum auszuwählen, einfach gesagt, den Ort, an dem die Amazon-Server stehen. Die Auswahl sollte von Ihrem Standort abhängen, da die Internetgeschwindigkeit unterschiedlich ist, und es sollte ein Rechenzentrum ausgewählt werden, mit dem die Kommunikation aus Ihrer Stadt am schnellsten ist.

Zur Auswahl eines Rechenzentrums empfehle ich den Dienst , der die Übertragungsgeschwindigkeit mit anderen Städten misst.
In meinem Fall (Moskau) war ein irisches Rechenzentrum geeignet.
Es ist Zeit, eine virtuelle Maschine zu erstellen. Gehen Sie dazu auf den Tab Instanz starten

Beginnen wir mit der Konfiguration der VM.
1) Wählen wir das Betriebssystem-Image aus. Zum Hochfahren von Servern ist Linux sehr praktisch, wir werden die Distribution CentOS7
verwenden. Es ist zu beachten, dass auf Ihrer virtuellen Maschine keine grafische Oberfläche vorhanden sein wird; der Zugriff auf die Maschine erfolgt über die Konsole. Diese ermöglicht die Verwaltung der VM durch Befehle und nicht durch die Computermaus. Fürchten Sie sich nicht davor: das sollte Sie nicht jetzt abhalten oder von der Idee, Ihren Minecraft-Server zu starten, abbringen, weil es "zu kompliziert" ist. Es ist nicht schwierig, mit der Maschine über die Konsole zu arbeiten — bald werden Sie sich selbst davon überzeugen.

2) Jetzt bestimmen wir die technische Konfiguration der VM. Für die kostenlose Nutzung bietet Amazon die Konfiguration t2.micro, zu wenig für einen vollwertigen großen Minecraft-Server, aber um mit Freunden zu spielen, reicht es aus.

3) Die restlichen Einstellungen lassen wir auf Standard, bleiben aber auf dem Tab Sicherheitsgruppen konfigurieren.

Hier müssen wir den Zugang zu den Ports für den Minecraft-Server einrichten.
Wenn man es einfach erklärt, ist der Port eine nicht negative Zahl, die angibt, an wen die eingehenden Daten aus der Außenwelt gerichtet sind. Auf der VM können sich viele verschiedene Dienste und Server befinden, daher speichern alle eingehenden Datenpakete in ihrem Header den Port (Nummer) des Empfängers (Dienstes, Servers) innerhalb der VM.
Für Minecraft-Server ist die Verwendung des Ports de facto der Standard. 25565Fügen wir eine Regel hinzu, die angibt, dass der Zugang zu Ihrer VM über diesen Port zulässig ist.


Wir gehen zum Fenster zum Abschluss der Erstellung der VM, indem wir auf die Schaltfläche Überprüfen und Starten
Einrichtung eines SSH-Schlüsselpaares für die VM
Das heißt, die Verbindung zur Maschine wird über das SSH-Protokoll hergestellt.
Das SSH-Protokoll funktioniert folgendermassen: Es wird ein Schlüsselpaar (öffentlicher und privater Schlüssel) generiert, der öffentliche Schlüssel wird auf der VM gespeichert, der private Schlüssel auf dem Computer der Person, die sich mit der VM (Client) verbindet. Bei der Verbindung überprüft die VM, ob der passende private Schlüssel vom Client vorhanden ist.
Klicken Sie auf die Schaltfläche Starten. Vor Ihnen erscheint das folgende Fenster:

Geben Sie den Namen des Schlüsselpaares (zu Ihrem Komfort) ein und klicken Sie auf Schlüsselpaar herunterladen. Sie sollten eine .pem Datei herunterladen, die Ihren privaten Schlüssel enthält. Klicken Sie auf die Schaltfläche Instanzen starten. Sie haben soeben eine virtuelle Maschine erstellt, auf der ein Server eingerichtet wird.
Einen statischen IP-Adresse erhalten
Jetzt müssen wir eine statische IP-Adresse für unsere VM erhalten und zuweisen. Dazu finden wir im Menü den Tab Eingehende IPs und klicken darauf. Im Tab klicken wir auf die Schaltfläche Eingehende IP-Adresse zuweisen und erhalten eine statische IP-Adresse.

Jetzt müssen wir die erhaltene IP-Adresse unserer VM zuweisen. Dazu wählen wir sie aus der Liste aus und im Menü Aktionen wählen wir IP-Adresse zuweisen

Als nächstes binden wir die VM an unsere IP-Adresse.

Fertig!
Wir melden uns an der VM an.
Jetzt, wo die VM eingerichtet und die IP-Adresse zugewiesen ist, stellen wir eine Verbindung zu ihr her und installieren unseren Minecraft-Server.
Um eine Verbindung zur VM über SSH herzustellen, verwenden wir das Programm . Installieren Sie sofort PuTTYgen von dieser Seite.
Öffnen Sie nach der Installation PuTTY. Jetzt müssen wir die Verbindung einrichten.

- Im Tab Sitzung Wählen Sie den Verbindungstyp SSH, Port 22. Geben Sie einen Namen für die Verbindung an. Der Hostname für die Verbindung über SSH hat die Form:
benutzername@öffentlicher_dns.
Der Standardbenutzername in AWS für CentOS ist centos.Ihre öffentliche DNS-Adresse können Sie hier einsehen:

Ich habe die folgende Zeichenfolge: centos@ec2-54-246-186-12.eu-west-1.compute.amazonaws.com
- Im Tab SSH -> Auth geben Sie Ihren privaten SSH-Schlüssel an. Er wird in der Datei gespeichert.
.pem, den wir zuvor heruntergeladen haben. Aber PuTTY kann nicht mit Dateien arbeiten.pem, er benötigt das Format.ppk. Zum Konvertieren verwenden wir PuTTYgen. . Die erhaltene Datei.ppkSpeichern wir und geben hier an:

- Wir verbinden uns mit der VM, indem wir die Verbindungstaste drücken Offen.
Herzlichen Glückwunsch! Wir sind gerade mit der Konsole Ihrer VM verbunden. Jetzt müssen wir unseren Server darauf starten.
Installation und Konfiguration des Minecraft-Servers
Lassen Sie uns mit der Konfiguration unseres Servers beginnen. Zunächst müssen wir einige Pakete auf unserer VM installieren.
sudo yum install -y wget mc iptables iptables-services java screenLassen Sie uns klären, wofür jedes der Pakete benötigt wird.
- wget — ein Dienstprogramm zum Herunterladen von Dateien unter Linux. Damit werden wir die Serverdateien herunterladen.
- mc — ein textbasierter Editor. Er zeichnet sich durch seine Einfachheit und Benutzerfreundlichkeit für unerfahrene Benutzer aus.
- iptables — ein Dienstprogramm zur Verwaltung und Konfiguration der Firewall, mit dem wir den Port für den Server auf unserer VM öffnen werden.
- java — Minecraft läuft auf Java, daher ist es erforderlich, damit der Server funktioniert.
- Nun bleibt nur noch, den Bot zu starten. Um Prozesse auf dem Server zu starten, benutze ich gerne — ein Fensterverwaltungssystem für Linux. Damit können wir unsere Konsole duplizieren, um den Server zu starten. Der Server muss über die Konsole gestartet werden, denn wenn Sie sich von Ihrer VM abmelden, wird der Serverprozess gestoppt. Daher werden wir ihn in einem separaten Konsolenfenster starten.
Jetzt konfigurieren wir die Firewall.
Eine Firewall ist ein Software- oder hardwarebasierter Bestandteil eines Computernetzwerks, der den durch ihn fließenden Datenverkehr gemäß vorgegebenen Regeln kontrolliert und filtert. (Wikipedia)
Einfach ausgedrückt: Stellen Sie sich eine Festungsstadt vor. Sie wird ständig von außen angegriffen, während im Inneren des Stadtlebens alles normal verläuft. Um in die Stadt zu gelangen, hat die Burgmauer Tore, an denen Wachen stehen, die prüfen, ob die Person laut Liste hereingelassen werden kann. In Computernetzwerken übernehmen die Firewall die Rolle der Mauer und der Tore.
sudo mcedit /etc/sysconfig/iptablesGerade haben wir die Konfigurationsdatei der Firewall erstellt. Füllen wir sie mit den Standardkonfigurationsdaten aus, einschließlich der Regel für den Port 25565, der der Standardport für den Minecraft-Server ist.
*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
COMMITWir schließen die Datei mit einem Klick F10, wobei die Änderungen gespeichert werden.

Jetzt starten wir die Firewall und fügen sie zur Autostart-Liste hinzu:
sudo systemctl enable iptables
sudo systemctl restart iptablesDie Serverdateien speichern wir in einem separaten Ordner, wir erstellen ihn, wechseln hinein und laden die Serverdateien herunter. Dazu sollten wir verwenden wget
mkdir minecraft
cd minecraft
wgetEs ist notwendig, den direkten Link zum Download .jar der Serverdatei zu finden. Zum Beispiel, der Link zur Serverdatei der Version 1.15.2:
wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jarÜberprüfen Sie den Inhalt des Ordners mit dem Befehl ls, stellen Sie sicher, dass die Dateien heruntergeladen wurden.

Wir starten die Serverdatei. Momentan wird der Server nicht arbeiten: Er wird alle benötigten Arbeitsdateien erstellen und sich beschweren, dass Sie den EULA-Lizenzbedingungen nicht zugestimmt haben. Akzeptieren Sie die Bedingungen, indem Sie die Datei öffnen eula.txt
sudo mcedit eula.txtBestätigen Sie Ihr Einverständnis, indem Sie den Eintrag ändern in:
eula=trueÖffnen Sie die Datei server.properties: dies ist die Konfigurationsdatei Ihres Servers.
Dort muss unbedingt die folgende Änderung vorgenommen werden:
online-mode=falseDie weiteren Einstellungen liegen in Ihrem Ermessen.
Server starten
Es ist Zeit, den Server zu starten. Wie bereits erwähnt, wird der Server direkt aus der Konsole gestartet, aber wenn wir das Haupt-Konsolenfenster schließen, wird der Serverprozess gestoppt. Daher erstellen wir eine weitere Konsole:
Nun bleibt nur noch, den Bot zu starten. Um Prozesse auf dem Server zu starten, benutze ich gerneIn dieser Konsole starten wir den Server:
sudo java -Xms512M -Xmx1024M -jar .jar --noguiDer Server benötigt etwa 45 Sekunden zum Starten, unterbrechen Sie den Prozess nicht. Wenn der Server initialisiert und gestartet wurde, sehen Sie etwa Folgendes:

Herzlichen Glückwunsch! Sie haben gerade Ihren Minecraft-Server eingerichtet und gestartet. Jetzt ist es wichtig, richtig aus der zweiten Konsole auszusteigen, damit sie mit dem laufenden Server weiterarbeiten kann. Drücken Sie dafür Ctrl+A, dann D. Sie sollten in der Hauptkonsole sein und eine Nachricht wie [von 1551.pts-0.ip-172-31-37-146 abgetrennt]sehen. Wenn Sie zur Konsole zurückkehren möchten, in der der Server läuft, verwenden Sie screen -r
Jetzt können Sie sich von Ihrer VM abmelden. Ihr Server wird unter der statischen IP-Adresse, die wir früher erhalten haben, auf dem Port 25565 verfügbar sein.

Das bedeutet, die Adresse für den Zugang zum Server lautet :25565.
Fazit
Mit dieser Anleitung können Sie problemlos einen kostenlosen Minecraft-Server mit einer dedizierten IP einrichten. Der Artikel wurde in möglichst einfacher Sprache verfasst und richtet sich an Laien. Daher wäre es interessant, die Kommentare erfahrener Nutzer zu hören, da bei der Vereinfachung von Inhalten faktische Fehler in der Terminologie auftreten können.
Quelle: habr.com
