Valheim Dedicated Server einrichten
Ein eigener Valheim-Server läuft rund um die Uhr, auch wenn der Host-Spieler offline ist. Diese Anleitung richtet den Dedicated Server auf einem Linux-Server mit SteamCMD ein, erklärt die Startparameter und Ports, zeigt die Mod-Installation mit BepInEx und wie du deine Welt sicherst.
8 Min. Lesezeit · Zuletzt geprüft: Oktober 2026
Voraussetzungen
- Linux-Server mit Ubuntu 22.04/24.04 oder Debian 12 und Root-Zugriff
- Mindestens 2 CPU-Kerne und 4 GB RAM für eine kleine Gruppe – mit Mods und großen Basen eher 8 GB
- Rund 5 GB freier Speicher plus Platz für Welt-Backups
- Grundkenntnisse in SSH (siehe SSH absichern)
Schritt 1: Benutzer und SteamCMD einrichten
Der Server läuft unter einem eigenen Benutzer, nicht als root. Auf Ubuntu installierst du SteamCMD aus dem multiverse-Repository:
# Benutzer für den Gameserver anlegen sudo useradd -m -s /bin/bash valheim # 32-Bit-Architektur und SteamCMD (Ubuntu) sudo add-apt-repository multiverse sudo dpkg --add-architecture i386 sudo apt update sudo apt install -y steamcmd # Bibliotheken, die der Valheim-Server braucht sudo apt install -y libatomic1 libpulse-dev libpulse0
non-free. Aktiviere contrib non-free in deinen Paketquellen, dann funktioniert dieselbe Installation.Schritt 2: Valheim Dedicated Server installieren
Der Dedicated Server hat die Steam-App-ID 896660 und lässt sich anonym herunterladen – du brauchst keinen Steam-Account mit Valheim.
sudo -u valheim -i steamcmd +force_install_dir /home/valheim/server \ +login anonymous \ +app_update 896660 validate \ +quit
Mit demselben Befehl aktualisierst du den Server später. Nach einem Valheim-Update müssen Server und Spieler dieselbe Version haben, sonst erscheint beim Verbinden „Incompatible version“.
Schritt 3: Startskript anlegen
Im Installationsordner liegt start_server.sh. Bearbeite nicht das Original – ein Update überschreibt es. Lege eine eigene Kopie an:
#!/bin/bash export templdpath=$LD_LIBRARY_PATH export LD_LIBRARY_PATH=./linux64:$LD_LIBRARY_PATH export SteamAppId=892970 ./valheim_server.x86_64 \ -name "Mein Valheim Server" \ -port 2456 \ -world "Midgard" \ -password "geheim123" \ -public 1 \ -saveinterval 1800 \ -backups 4 export LD_LIBRARY_PATH=$templdpath
chmod +x /home/valheim/server/start_valheim.sh
| Parameter | Bedeutung |
|---|---|
-name | Name in der Serverliste |
-world | Weltname – existiert sie nicht, wird sie neu angelegt |
-password | Mindestens 5 Zeichen und darf nicht im Servernamen vorkommen, sonst startet der Server nicht |
-public | 1 = in der Community-Liste sichtbar, 0 = nur per IP erreichbar |
-saveinterval | Speicherintervall in Sekunden (Standard 1800 = 30 Minuten) |
-backups | Anzahl automatischer Welt-Backups (Standard 4) |
-crossplay | Öffnet den Server für Xbox/Game-Pass-Spieler über Relay-Server (siehe unten) |
-preset | Schwierigkeit: z. B. casual, easy, normal, hard, hardcore, immersive, hammer |
Schritt 4: Ports freigeben
Valheim nutzt den angegebenen Port und den nächsthöheren – beim Standard also 2456 und 2457 (UDP):
sudo ufw allow 2456:2457/udp sudo ufw status
Spieler verbinden sich im Spiel über Join Game → Join IP mit DEINE-SERVER-IP:2456. Bei öffentlichen Servern taucht er zusätzlich in der Community-Liste auf – das kann nach dem Start einige Minuten dauern.
-crossplay läuft die Verbindung über PlayFab-Relay-Server statt direkt über Steam. Dann ist keine Portfreigabe nötig und Spieler können auch per Join-Code beitreten. Die Verbindung über eine lokale IP geht in diesem Modus nicht. Spieler auf Xbox können keine Mods verwenden.Schritt 5: Als systemd-Dienst betreiben
Damit der Server nach einem Neustart automatisch hochfährt und sauber speichert, richtest du einen Dienst ein. Valheim speichert beim Beenden über SIGINT (wie Strg+C) – deshalb KillSignal=SIGINT:
[Unit] Description=Valheim Dedicated Server After=network-online.target Wants=network-online.target [Service] Type=simple User=valheim WorkingDirectory=/home/valheim/server ExecStart=/home/valheim/server/start_valheim.sh KillSignal=SIGINT TimeoutStopSec=120 Restart=on-failure RestartSec=30 [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload sudo systemctl enable --now valheim sudo journalctl -u valheim -f # Log live verfolgen
Schritt 6: Admins festlegen
Die Berechtigungsdateien liegen im Speicherordner ~/.config/unity3d/IronGate/Valheim/ des valheim-Benutzers:
adminlist.txt– Admins, dürfen in der Konsole (F5) z. B.kickundbanverwendenbannedlist.txt– gesperrte Spielerpermittedlist.txt– Whitelist. Achtung: Sobald hier jemand steht, kommen alle anderen nicht mehr rein.
Pro Zeile steht eine ID. Aktuelle Versionen erwarten das Format Plattform_ID, für Steam-Spieler also z. B. Steam_76561198… (die SteamID64). Die genaue Schreibweise findest du im Server-Log beim Verbinden oder im Spiel mit F2. Nach Änderungen den Server neu starten.
Schritt 7: Mods mit BepInEx
Fast alle Valheim-Mods setzen auf BepInEx, genauer auf das angepasste Paket BepInExPack_Valheim von Thunderstore.
- Server stoppen und ein Backup machen (siehe Schritt 8).
- BepInExPack_Valheim herunterladen und in einen separaten Ordner entpacken.
- Den Inhalt des Ordners
BepInExPack_Valheimins Server-Verzeichnis/home/valheim/serverkopieren. - In
start_server_bepinex.shdieselben Parameter wie in deinem Startskript eintragen,chmod u+x start_server_bepinex.shausführen und im systemd-DienstExecStartauf dieses Skript umstellen. - Server starten. Erscheinen BepInEx-Meldungen im Log, hat es geklappt – dabei werden die Ordner
BepInEx/pluginsundBepInEx/configangelegt. - Mod-DLLs nach
BepInEx/plugins/kopieren, neu starten, Einstellungen inBepInEx/config/anpassen.
Schritt 8: Welt sichern
Eine Welt besteht aus zwei Dateien mit dem Weltnamen: Midgard.db (die eigentliche Welt) und Midgard.fwl (Metadaten wie der Seed). Beide liegen in:
/home/valheim/.config/unity3d/IronGate/Valheim/worlds_local/
Valheim legt dort mit -backups automatisch einige Sicherungen an – die liegen aber auf demselben Server. Sichere zusätzlich extern, z. B. mit einem täglichen Cronjob:
# Täglich 05:00: Welt als Archiv sichern, 14 Tage aufheben 0 5 * * * tar czf /home/valheim/backups/world-$(date +\%F).tar.gz -C /home/valheim/.config/unity3d/IronGate/Valheim worlds_local && find /home/valheim/backups -name 'world-*.tar.gz' -mtime +14 -delete
mkdir -p /home/valheim/backups
Lade die Archive regelmäßig auf deinen PC oder einen Speicherdienst herunter, z. B. per scp oder rsync. Zum Wiederherstellen: Server stoppen, beide Dateien zurückkopieren, starten.
Eigene Welt hochladen: Eine Welt aus deinem lokalen Spiel liegt unter Windows in %USERPROFILE%\AppData\LocalLow\IronGate\Valheim\worlds_local. Kopiere .db und .fwl in den Ordner auf dem Server und setze -world auf genau diesen Namen.
Ein KVM-Server für deinen Valheim-Server
Valheim bieten wir nicht als fertiges Gameserver-Paket an. Mit einem KVM-Server von AvantaHost hast du aber vollen Root-Zugriff und eigene Ressourcen – genau das, was diese Anleitung voraussetzt.
KVM-Server ansehen