> For the complete documentation index, see [llms.txt](https://docs.instantroot.de/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.instantroot.de/kvm-server/linux/minecraft-server-installieren.md).

# Minecraft Server installieren

In diesem Artikel erklären wir dir, wie du einen Minecraft Server auf einem KVM-Server installierst.

Diese Anleitung richtet sich an Nutzer, die Minecraft nicht über das INSTANTPANEL betreiben möchten, sondern den Server selbst auf einem eigenen Linux-Server einrichten.

### Voraussetzungen

Für die Installation benötigst du:

* einen KVM-Server mit Linux
* SSH-Zugriff auf den Server
* Root-Zugriff oder einen Benutzer mit sudo-Rechten
* eine Minecraft Java Edition Server-Datei
* installierte Java-Laufzeit
* einen geöffneten Minecraft-Port

In dieser Anleitung verwenden wir als Beispiel Debian oder Ubuntu.

### Wann ist ein eigener Minecraft Server auf KVM sinnvoll?

Ein eigener Minecraft Server auf einem KVM-Server ist sinnvoll, wenn du mehr Kontrolle über das System benötigst.

Das kann zum Beispiel der Fall sein, wenn du:

* mehrere Dienste auf einem Server betreiben möchtest
* eigene Startparameter verwenden willst
* spezielle Java-Versionen brauchst
* eigene Backups und Skripte nutzen möchtest
* mehrere Minecraft-Instanzen selbst verwalten willst
* eigene Firewall- oder Proxy-Regeln brauchst

Wenn du möglichst einfach einen Minecraft Server betreiben möchtest, ist ein fertiger Gameserver im INSTANTPANEL meistens bequemer.

### Unterschied zum INSTANTPANEL Gameserver

Ein Minecraft Server im INSTANTPANEL ist bereits vorbereitet. Du verwaltest ihn über eine grafische Oberfläche.

Ein Minecraft Server auf einem KVM-Server muss selbst installiert, gestartet, aktualisiert und abgesichert werden.

| INSTANTPANEL Gameserver           | Minecraft auf KVM-Server          |
| --------------------------------- | --------------------------------- |
| einfache Verwaltung               | manuelle Einrichtung              |
| Start und Neustart per Oberfläche | Start per Terminal oder systemd   |
| Dateien über Panel erreichbar     | Dateien per SSH/SFTP verwalten    |
| weniger Systemadministration      | mehr Eigenverantwortung           |
| ideal für Einsteiger              | ideal für fortgeschrittene Nutzer |

### Schritt 1: Per SSH verbinden

Verbinde dich zuerst per SSH mit deinem KVM-Server.

Beispiel:

`ssh root@SERVER-IP`

Ersetze `SERVER-IP` durch die IP-Adresse deines Servers.

Wenn du einen anderen SSH-Port verwendest, gib ihn mit an.

Beispiel:

`ssh root@SERVER-IP -p 2222`

### Schritt 2: System aktualisieren

Aktualisiere zuerst die Paketquellen und installiere verfügbare Updates.

Befehl:

`apt update && apt upgrade -y`

Ein aktuelles System ist wichtig, damit Sicherheitsupdates und aktuelle Paketversionen installiert sind.

### Schritt 3: Java installieren

Minecraft Java Server benötigen Java.

Welche Java-Version du brauchst, hängt von der Minecraft-Version ab.

| Minecraft-Version | Empfohlene Java-Version |
| ----------------- | ----------------------- |
| 1.20.5 und neuer  | Java 21                 |
| 1.18 bis 1.20.4   | Java 17                 |
| 1.17              | Java 16                 |
| 1.16.5 und älter  | Java 8                  |

Für aktuelle Minecraft-Versionen installierst du Java 21.

Befehl:

`apt install openjdk-21-jre-headless -y`

Wenn du Java 17 benötigst:

`apt install openjdk-17-jre-headless -y`

Prüfe danach die installierte Version.

Befehl:

`java -version`

### Schritt 4: Benutzer für Minecraft erstellen

Es ist empfehlenswert, Minecraft nicht dauerhaft als Root-Benutzer auszuführen.

Erstelle einen eigenen Benutzer.

Befehl:

`adduser minecraft`

Wechsle anschließend zu diesem Benutzer.

Befehl:

`su - minecraft`

### Schritt 5: Serverordner erstellen

Erstelle einen eigenen Ordner für deinen Minecraft Server.

Befehl:

`mkdir server`

Wechsle in den Ordner.

Befehl:

`cd server`

Der Serverordner enthält später alle wichtigen Dateien, zum Beispiel:

* Server-JAR
* Weltordner
* Einstellungen
* Logs
* Plugin- oder Mod-Dateien

### Schritt 6: Minecraft Server-Datei herunterladen

Lade nun die gewünschte Minecraft Server-Datei herunter.

Für Vanilla Minecraft findest du die Server-Datei auf der offiziellen Minecraft-Webseite.

Du kannst die Datei mit `wget` direkt auf den Server herunterladen.

Beispiel:

`wget -O server.jar "DOWNLOAD-LINK"`

Ersetze `DOWNLOAD-LINK` durch den direkten Download-Link der gewünschten Minecraft Server-Version.

Alternativ kannst du die Datei per SFTP in den Serverordner hochladen.

### Vanilla, Paper, Spigot, Forge oder Fabric?

Vor der Installation solltest du entscheiden, welche Server-Software du nutzen möchtest.

| Server-Software | Zweck                                              |
| --------------- | -------------------------------------------------- |
| Vanilla         | Originaler Minecraft Server ohne Plugins oder Mods |
| Paper           | Optimierter Server mit Plugin-Unterstützung        |
| Spigot          | Plugin-Server, häufig für ältere Setups            |
| Bukkit          | Grundlage vieler Plugin-Systeme                    |
| Forge           | Server für Forge-Mods                              |
| Fabric          | Server für Fabric-Mods                             |

Für die meisten Plugin-Server ist Paper empfehlenswert.

Für Mods brauchst du Forge oder Fabric, je nachdem, welche Mods du verwenden möchtest.

### Schritt 7: Server zum ersten Mal starten

Starte den Server einmalig, damit die ersten Dateien erstellt werden.

Befehl:

`java -Xms1G -Xmx2G -jar server.jar nogui`

Die Werte bedeuten:

| Parameter         | Bedeutung                         |
| ----------------- | --------------------------------- |
| `-Xms1G`          | Startet den Server mit 1 GB RAM   |
| `-Xmx2G`          | Erlaubt maximal 2 GB RAM          |
| `-jar server.jar` | Startet die Server-Datei          |
| `nogui`           | Startet ohne grafische Oberfläche |

Passe den RAM an dein gebuchtes Paket und deine Nutzung an.

Beispiel für maximal 4 GB RAM:

`java -Xms1G -Xmx4G -jar server.jar nogui`

### Schritt 8: EULA akzeptieren

Beim ersten Start stoppt der Server normalerweise wieder und erstellt die Datei `eula.txt`.

Öffne die Datei:

`nano eula.txt`

Ändere die Zeile:

`eula=false`

zu:

`eula=true`

Speichere die Datei und schließe den Editor.

Mit dieser Änderung bestätigst du die Minecraft EULA.

### Schritt 9: Server erneut starten

Starte den Server danach erneut.

Befehl:

`java -Xms1G -Xmx2G -jar server.jar nogui`

Wenn alles korrekt ist, startet der Server und erstellt weitere Dateien.

Dazu gehören unter anderem:

* `server.properties`
* `logs`
* `world`
* `banned-players.json`
* `ops.json`
* `whitelist.json`

### Schritt 10: Port in der Firewall öffnen

Der Standardport für Minecraft Java ist `25565`.

Wenn du UFW verwendest, öffnest du den Port so:

`ufw allow 25565/tcp`

Prüfe danach den Firewall-Status:

`ufw status`

Wenn du einen anderen Port in `server.properties` verwendest, musst du diesen Port öffnen.

Beispiel:

`ufw allow 25570/tcp`

### Schritt 11: Mit dem Server verbinden

Öffne Minecraft Java Edition und gehe auf **Mehrspieler**.

Füge deinen Server hinzu.

Serveradresse:

`SERVER-IP:25565`

Wenn du den Standardport `25565` nutzt, reicht oft auch nur die IP-Adresse.

Beispiel:

`123.123.123.123`

Wenn du einen anderen Port nutzt:

`123.123.123.123:25570`

### Server im Hintergrund laufen lassen

Wenn du den Server direkt im Terminal startest, stoppt er, sobald du die SSH-Verbindung beendest.

Deshalb solltest du den Server dauerhaft über `systemd`, `screen` oder `tmux` starten.

Für produktive Server ist `systemd` empfehlenswert.

### Minecraft mit systemd einrichten

Mit `systemd` wird dein Minecraft Server als Dienst eingerichtet. Dadurch kannst du ihn starten, stoppen, neustarten und automatisch beim Systemstart laden.

Wechsle zurück zum Root-Benutzer.

Befehl:

`exit`

Erstelle eine neue Service-Datei.

Befehl:

`nano /etc/systemd/system/minecraft.service`

Füge folgenden Inhalt ein:

`[Unit]`

`Description=Minecraft Server`

`After=network.target`

`[Service]`

`User=minecraft`

`WorkingDirectory=/home/minecraft/server`

`ExecStart=/usr/bin/java -Xms1G -Xmx2G -jar server.jar nogui`

`Restart=on-failure`

`[Install]`

`WantedBy=multi-user.target`

Speichere die Datei.

Lade systemd neu:

`systemctl daemon-reload`

Server starten:

`systemctl start minecraft`

Automatischen Start aktivieren:

`systemctl enable minecraft`

Status prüfen:

`systemctl status minecraft`

Server stoppen:

`systemctl stop minecraft`

Server neustarten:

`systemctl restart minecraft`

### RAM richtig einstellen

Beim Start legst du fest, wie viel Arbeitsspeicher Minecraft verwenden darf.

Beispiel:

`-Xms1G -Xmx4G`

Dabei bedeutet:

| Wert     | Bedeutung             |
| -------- | --------------------- |
| `-Xms1G` | Start-RAM             |
| `-Xmx4G` | maximal erlaubter RAM |

Setze `-Xmx` nicht höher als den tatsächlich verfügbaren Arbeitsspeicher deines Servers.

Der Server benötigt zusätzlich RAM für das Betriebssystem und andere Dienste.

### server.properties bearbeiten

Die wichtigsten Einstellungen findest du in der Datei `server.properties`.

Datei öffnen:

`nano /home/minecraft/server/server.properties`

Wichtige Einstellungen:

| Einstellung           | Bedeutung                             |
| --------------------- | ------------------------------------- |
| `server-port`         | Port des Minecraft Servers            |
| `max-players`         | maximale Spieleranzahl                |
| `motd`                | Serverbeschreibung in der Serverliste |
| `difficulty`          | Schwierigkeit                         |
| `gamemode`            | Spielmodus                            |
| `pvp`                 | PvP aktivieren oder deaktivieren      |
| `white-list`          | Whitelist aktivieren                  |
| `view-distance`       | Sichtweite                            |
| `simulation-distance` | Simulationsweite                      |
| `online-mode`         | Accountprüfung über Minecraft-Server  |

Nach Änderungen musst du den Minecraft Server neu starten.

Befehl:

`systemctl restart minecraft`

### OP-Rechte vergeben

OP-Rechte geben einem Spieler administrative Rechte auf dem Minecraft Server.

Wenn der Server läuft, kannst du in der Konsole folgenden Befehl ausführen:

`op Spielername`

Wenn du systemd verwendest, kannst du Befehle nicht direkt in derselben Konsole eingeben. In diesem Fall kannst du RCON einrichten oder den Server vorübergehend manuell starten.

Alternativ kannst du den Spieler in der Datei `ops.json` verwalten, wenn du weißt, was du tust.

### Whitelist aktivieren

Die Whitelist erlaubt nur eingetragenen Spielern den Zutritt.

In der Minecraft-Konsole:

`whitelist on`

Spieler hinzufügen:

`whitelist add Spielername`

Whitelist neu laden:

`whitelist reload`

Du kannst die Whitelist auch in `server.properties` aktivieren.

Eintrag:

`white-list=true`

Danach den Server neu starten.

### Backups erstellen

Erstelle regelmäßig Backups deiner Welt und Konfigurationsdateien.

Wichtige Dateien und Ordner:

* `world`
* `world_nether`
* `world_the_end`
* `server.properties`
* `ops.json`
* `whitelist.json`
* Plugin- oder Mod-Ordner
* Konfigurationsordner

Ein einfaches Backup kannst du als Archiv erstellen.

Beispiel:

`tar -czf minecraft-backup.tar.gz /home/minecraft/server`

Speichere Backups möglichst nicht nur auf demselben Server.

### Server aktualisieren

Für ein Update ersetzt du in der Regel die Server-JAR durch eine neuere Version.

Vorgehen:

1. Server stoppen.
2. Backup erstellen.
3. Neue Server-Datei herunterladen.
4. Alte `server.jar` ersetzen.
5. Server starten.
6. Logs prüfen.

Server stoppen:

`systemctl stop minecraft`

Server starten:

`systemctl start minecraft`

**Wichtig:** Aktualisiere nicht blind auf neue Versionen, wenn du Plugins, Mods oder Modpacks verwendest. Diese müssen zur neuen Version passen.

### Logs prüfen

Minecraft schreibt Logs in den Ordner `logs`.

Die aktuelle Logdatei ist meistens:

`logs/latest.log`

Du kannst die Datei so anzeigen:

`tail -f /home/minecraft/server/logs/latest.log`

Wenn der Server nicht startet, findest du dort oft die Ursache.

### Häufige Probleme

#### Server startet nicht

Prüfe:

* ist Java installiert?
* passt die Java-Version zur Minecraft-Version?
* heißt die Server-Datei wirklich `server.jar`?
* wurde die EULA akzeptiert?
* ist genug RAM verfügbar?
* enthält die Konsole eine Fehlermeldung?

Status prüfen:

`systemctl status minecraft`

Logs anzeigen:

`journalctl -u minecraft`

#### Unable to access jarfile

Diese Meldung bedeutet, dass die angegebene JAR-Datei nicht gefunden wurde.

Prüfe:

* liegt die Datei im richtigen Ordner?
* heißt die Datei `server.jar`?
* stimmt der Pfad in der systemd-Datei?
* hat der Benutzer Zugriff auf die Datei?

#### EULA wurde nicht akzeptiert

Wenn der Server wegen der EULA stoppt, prüfe die Datei `eula.txt`.

Der Eintrag muss so aussehen:

`eula=true`

Danach den Server neu starten.

#### Spieler können nicht verbinden

Prüfe:

* läuft der Server?
* ist Port `25565` geöffnet?
* nutzt du die richtige IP-Adresse?
* blockiert eine Firewall die Verbindung?
* steht in `server.properties` ein anderer Port?
* läuft der Server im Online-Modus?
* passt die Minecraft-Version?

#### Outdated server oder Outdated client

Diese Meldungen bedeuten, dass Minecraft Client und Server unterschiedliche Versionen verwenden.

Lösung:

* Client-Version anpassen
* Server-Version ändern
* bei Plugins oder Mods Kompatibilität prüfen

#### Server laggt

Mögliche Ursachen:

* zu wenig RAM
* zu hohe Sichtweite
* zu viele Entities
* zu viele Spieler
* zu viele Plugins oder Mods
* langsame Weltgenerierung
* zu viele Redstone-Schaltungen
* Server läuft zusätzlich mit anderen schweren Diensten

Prüfe zuerst die Auslastung des KVM-Servers.

Befehl:

`top`

oder:

`htop`

Falls `htop` nicht installiert ist:

`apt install htop`

### Sicherheit

Ein Minecraft Server ist öffentlich erreichbar, wenn du ihn für andere Spieler freigibst.

Achte deshalb auf folgende Punkte:

* Whitelist verwenden, wenn der Server privat ist
* OP-Rechte nur vertrauenswürdigen Spielern geben
* regelmäßig Backups erstellen
* System aktuell halten
* nur benötigte Ports öffnen
* keine unbekannten Plugins oder Mods installieren
* sichere Passwörter verwenden
* Server nicht dauerhaft als Root ausführen

### Support kontaktieren

Wenn du Hilfe benötigst, kontaktiere den Support.

Gib dabei bitte folgende Informationen an:

* Betriebssystem
* Minecraft-Version
* verwendete Server-Software
* Java-Version
* genaue Fehlermeldung
* relevante Logs
* ob du Vanilla, Paper, Forge oder Fabric verwendest
* ob der Server über systemd, screen oder manuell gestartet wird
* welche Änderungen zuletzt vorgenommen wurden

Sende niemals Passwörter, private SSH-Keys oder andere geheime Zugangsdaten an den Support.
