Herzlich Willkommen zu diesem Tutorial. Hier zeige ich dir, wie du einen eigenen Minecraft Server unter Debian 11 installieren kannst.
Installation der Voraussetzungen
Anfangs muss java, sudo und iptables installiert werden. Außerdem aktualisieren wir die Paketquellen des Debian Servers und installieren alle anstehende Updates:
apt-get update apt-get upgrade apt-get install openjdk-17-jre openjdk-17-jdk sudo iptables -y
Installation des Minecraft Servers
Im nächsten Schritt werden wir ein Verzeichnis erstellen, in welchem der Minecraft Server ausgeführt wird. Außerdem wird die neueste Minecraft Server Version heruntergeladen. Dazu muss der Download Link von der Minecraft Webseite kopiert werden: https://www.minecraft.net/en-us/download/server (Rechtsklick auf minecraft_server.X.X.X.jar, Link kopieren). Je nach Server Version muss der Name des letzten Punktes (minecraft_server.1.18.2.jar) geändert werden.
mkdir -p /opt/Minecraft cd /opt/Minecraft wget https://launcher.mojang.com/v1/objects/c8f83c5655308435b3dcf03c06d9fe8740a77469/server.jar mv server.jar minecraft_server.1.18.2.jar
Nun muss eine Datei erstellt werden, um den Lizenzbestimmungen zuzustimmen:
echo 'eula=true' > /opt/Minecraft/eula.txt
Minecraft Server absichern
Ein Service sollte aus Sicherheitsgründen nie mit dem Root-Benutzer ausgeführt werden. Deshalb werden wir nun einen Nutzer anlegen, welcher berechtigt ist, die Server Instanz auszuführen:
sudo adduser --system --no-create-home svc_minecraft chown -R svc_minecraft: /opt/Minecraft
Minecraft Server Service erstellen und zum Autostart hinzufügen
Um den Server auch nach einem Neustart hinweg automatisch starten zu lassen, muss ein Service angelegt werden:
nano /etc/systemd/system/minecraft-server.service
Hier fügen wir folgenden Inhalt ein:
[Unit] Description=Minecraft Server After=network.target [Service] Type=simple Restart=always WorkingDirectory=/opt/Minecraft User=svc_minecraft ExecStart=java -Xmx1024M -Xms1024M -jar minecraft_server.1.18.2.jar nogui [Install] WantedBy=multi-user.target
Der Inhalt muss natürlich je nach Minecraft Version angepasst werden. Verwendest du eine andere Server Version oder möchtest du mehr Arbeitsspeicher zuweisen, kannst du dies beim Punkt “ExecStart” ändern. Hast du alles angepasst, kannst du die Datei mittels Strg+O (und mit Enter bestätigen) speichern und den Editor mittels Strg+X verlassen.
Nun müssen die Services neu eingelesen werden. Danach kann der Server gestartet und zum Autostart hinzugefügt werden:
systemctl daemon-reload systemctl start minecraft-server systemctl enable minecraft-server
Um den Status des Servers einzusehen kann folgender Befehl genutzt werden:
systemctl status minecraft-server
Konfiguration Minecraft Server
Zur Konfiguration des Minecraft Servers muss die generierte server.properties Datei angepasst werden:
nano /opt/Minecraft/server.properties
Hier können unter anderem Parameter geändert werden, die den World-Seed, die Anzahl der Spieler oder die MOTD angeben. Eine ausführliche Liste aller Funktionen findest du hier: https://www.minecraftinfo.de/wiki/minecraft-server-server-properties-erklaert/
Nach dem Anpassen muss die Datei wieder gespeichert (Strg+O, Enter) und geschlossen (Strg+X) werden. Außerdem muss der Server neugestartet werden:
systemctl restart minecraft-server
Konfiguration Firewall
Folgende Firewall Regeln wende ich für den Betrieb des Servers an:
# Konfiguration aller Routen, Traffic zu akzeptieren sudo iptables -P INPUT ACCEPT sudo iptables -P FORWARD ACCEPT sudo iptables -P OUTPUT ACCEPT # IPTables leeren sudo iptables -F # Akzeptieren von SSH Verbindungen sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT sudo iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT # Akzeptieren von Minecraft Server Verbindungen sudo iptables -A INPUT -p tcp --dport 25565 -m state --state NEW,ESTABLISHED -j ACCEPT sudo iptables -A OUTPUT -p tcp --sport 25565 -m state --state ESTABLISHED -j ACCEPT # Akzeptieren von bereits aufgebauten Verbindungen sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # Konfiguration der INPUT Route, Traffic zu blockieren sudo iptables -P INPUT DROP
Zum Speichern der Firewall-Regeln kannst du iptables-persistent installieren. Während der Installation muss der Dialog “Save current IPv4 rules” und “Save current IPv6 Rules” mit Yes bestätigt werden:
apt-get install iptables-persistent
Schlusswort
Herzlichen Glückwunsch, du hast erfolgreich einen Minecraft Server erstellt. Um sich auf diesen zu verbinden kannst du nun die IP-Adresse des Linux Servers in den Minecraft Client eingeben. Um den Server nach außen zu publizieren kann ein Portforwarding im Router angelegt werden (Alles natürlich auf eigene Gefahr). Außerdem unterscheidet sich diese von Router zu Router.
Vielen Dank fürs lesen und viel Spaß!