So hostest du einen Rust Dedicated Server
Betreib deinen eigenen Rust-Server mit der Kartengröße, den Wipe-Tagen und den Regeln, die du willst. Das Serverprogramm von Facepunch ist kostenlos und läuft unter Windows und Linux.
Was du brauchst
Einen PC mit Windows oder Linux, der läuft, solange gespielt wird, dazu SteamCMD, das kostenlose Kommandozeilen-Tool von Valve für Steam-Server. Der Rust-Server ist die Steam-App 258550, 6,1 GB mit anonymem Login: Der Server-PC braucht weder Rust noch einen Steam-Account.
Jeder Spieler braucht sein eigenes Rust auf Steam. Für den Server nennt Facepunch mindestens 12 GB freien RAM und 15 GB Speicherplatz, am besten auf einer SSD; große Karten brauchen bei beidem mehr.
Zum Vergleich: Auf unserem Test-PC pendelte sich eine 1000-m-Welt ohne Spieler bei etwa 2,8 GB RAM ein und war nach 3 Minuten 18 Sekunden bereit. Eine Karte in voller Größe braucht länger und mehr.
Zum Spielen braucht es einen offenen Port, UDP 28015. Die Serverliste und die Rust+-Handy-App nutzen zwei weitere, siehe Ports und Firewall.
Geprüft mit dem Rust-Server-Build vom 22. Oktober 2026 (Protokoll 2635.289.1).
Server installieren
1. Lade SteamCMD von Valve herunter und entpacke es nach C:\steamcmd.
2. Öffne PowerShell oder die Eingabeaufforderung und lade den Server nach C:\rust-server herunter:
C:\steamcmd\steamcmd.exe +force_install_dir C:\rust-server +login anonymous +app_update 258550 validate +quit3. Die Startzeile von Rust ist lang, also leg sie in einer Datei ab. Speichere das hier als C:\rust-server\start-server.bat und doppelklicke darauf:
cd /d "%~dp0"
RustDedicated.exe -batchmode +server.identity main +server.port 28015 +server.queryport 28017 +rcon.port 28016 +rcon.password "YOUR-ADMIN-PASSWORD" +rcon.web 1 +app.port 28082 +server.hostname "YOUR-SERVER-NAME" +server.maxplayers 60 +server.worldsize 3500 +server.seed 90817 -logfile server-log.txtDas Laden dauert ein paar Minuten. Spieler können beitreten, sobald das Fenster Server startup complete ausgibt.
Wir haben diese Schritte unter Ubuntu 24.04 getestet. SteamCMD von Valve braucht die 32-Bit-GCC-Bibliothek (lib32gcc-s1); ohne sie bricht steamcmd.sh sofort ab.
sudo apt update
sudo apt install lib32gcc-s1 curl screen
mkdir -p ~/steamcmd && cd ~/steamcmd
curl -sSL https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz | tar xz
./steamcmd.sh +force_install_dir ~/rust-server +login anonymous +app_update 258550 validate +quitStarte den Server in einer screen-Sitzung, damit er weiterläuft, wenn du dich abmeldest:
cd ~/rust-server
export LD_LIBRARY_PATH=~/rust-server:~/rust-server/RustDedicated_Data/Plugins/x86_64
screen -S rust ./RustDedicated -batchmode +server.identity main +server.port 28015 +server.queryport 28017 +rcon.port 28016 +rcon.password "YOUR-ADMIN-PASSWORD" +rcon.web 1 +app.port 28082 +server.hostname "YOUR-SERVER-NAME" +server.maxplayers 60 +server.worldsize 3500 +server.seed 90817 -logfile server-log.txtLass die export-Zeile drin. Der Server lädt Steams steamclient.so nur dann aus seinem eigenen Ordner, wenn dieser Ordner in LD_LIBRARY_PATH steht. Ohne sie hat unserer die Karte gebaut und sich dann mit Failed to load module steamclient.so beendet.
Mit Strg+A und dann D verlässt du die Sitzung; screen -r rust holt sie zurück. Die Linux-Konsole nimmt keine eingetippten Befehle an, nutz für Admin-Aufgaben also RCON (siehe Admin).
Facepunch veröffentlicht kein Docker-Image. Unser Test hat die Linux-Schritte oben als root in einem einfachen ubuntu:24.04-Container ausgeführt, export-Zeile inklusive.
Die Startzeile
Jedes Paar aus +name und Wert in der Startzeile setzt eine Konsolenvariable (Convar), bevor die Welt lädt. Lässt du eins weg, nimmt der Server seinen Standardwert:
| Option | Standard | Funktion |
|---|---|---|
-batchmode | Startet den Server ohne Grafik. Immer mit angeben. | |
+server.identity | my_server_identity | Name des Ordners unter server/, der Spielstand und Einstellungen dieses Servers enthält. Eine zweite Identity ergibt einen zweiten, getrennten Server aus derselben Installation. |
+server.port | 28015 | Spielport, UDP. Darüber verbinden sich die Spieler. |
+server.queryport | 28016 | UDP-Port, den die Serverliste nutzt. Er darf nicht der Spielport sein. |
+rcon.port | 28015 | Remote-Konsole, TCP. |
+rcon.password | (keins) | Passwort für die Remote-Konsole. Wähl selbst ein langes. |
+rcon.web | 1 steht für WebSocket-RCON, die Variante, die Facepunch empfiehlt und die seine Webkonsole nutzt. | |
+app.port | 28082 | TCP-Port der Rust+-Begleit-App, 10000 oder höher. |
+server.hostname | My Untitled Rust Server | Name in der Serverliste. |
+server.maxplayers | 500 | Höchstzahl gleichzeitig verbundener Spieler. |
+server.worldsize | 4500 | Kartengröße, 1000 bis 6000. Größere Karten laden langsamer und brauchen mehr RAM. |
+server.seed | 1337 | Zahl (0 bis 2147483647), aus der die Karte generiert wird. |
-logfile | Schreibt die Konsolenausgabe zusätzlich in eine Datei. | |
Standardwerte, wie unser Testserver sie im Log und über RCON gemeldet hat. Ohne +server.seed baut jeder Server dieselbe Karte mit Seed 1337.
Servereinstellungen
Einstellungen, die jeden Neustart überleben sollen, kommen in server.cfg, in server\main\cfg im Serverordner (main ist deine server.identity). Schreib eine Convar pro Zeile, ohne das +.
Der erste Start legt den Ordner cfg mit users.cfg, bans.cfg und serverauto.cfg an, einer Datei, die der Server selbst schreibt. server.cfg gibt es erst, wenn du sie anlegst.
server.tags biweekly,softcore,EU
server.description "YOUR-SERVER-DESCRIPTION"
server.url "https://YOUR-WEBSITE"
server.headerimage "https://YOUR-WEBSITE/header.png"
server.pve false
decay.scale 0.5Der Server liest server.cfg bei jedem Start. In unserem Test behielt eine Convar, die dort und in der Startzeile stand, den Wert aus der Startzeile; die übrigen Zeilen von server.cfg griffen. Der Server schreibt selbst nie in server.cfg.
| Convar | Standard | Funktion |
|---|---|---|
server.description | No server description has been provided. | Text auf dem Bildschirm, den Spieler vor dem Beitreten sehen. |
server.url | (leer) | Link zur Website auf diesem Bildschirm. |
server.headerimage | (leer) | Link zum Bannerbild auf diesem Bildschirm. |
server.tags | (leer) | Filter-Tags für die Serverliste, durch Kommas getrennt. |
server.pve | False | PvE-Modus. Auf true gesetzt, kommt auch der Tag pve dazu. |
decay.scale | 1 | Multiplikator dafür, wie schnell Gebäude verfallen. |
server.saveinterval | 600 | Sekunden zwischen automatischen Speicherungen. |
Tags helfen Spielern beim Filtern der Liste. Wähl höchstens einen Wipe-Tag (weekly, biweekly, monthly), einen Stil-Tag (vanilla, softcore, hardcore) und eine Region: NA, SA, EU, WA, EA, OC oder AF.
Dazu kommen pve, roleplay, creative, minigame, training, battlefield, broyale, builds, tut und premium. Zwei Tags aus einer Gruppe können den Server aus gefilterten Suchen werfen.
Den aktuellen Wert einer Convar siehst du, wenn du nur ihren Namen in die Serverkonsole oder über RCON eingibst.
Admin
Rust kennt zwei Ränge: owner und moderator. Du vergibst sie in der Serverkonsole oder über RCON, mit der 17-stelligen SteamID64 des Spielers. Der Befehl status listet alle Spieler online mit ihrer ID auf:
ownerid YOUR-STEAMID64 "YOUR-NAME"
moderatorid A-FRIENDS-STEAMID64 "A-FRIENDS-NAME"Danach verbindet sich der Spieler neu. Beide Befehle schreiben den Rang sofort in cfg/users.cfg; bei uns standen die zwei Zeilen schon drin, bevor server.writecfg lief. removeowner und removemoderator nehmen einen Rang wieder weg.
Im Spiel öffnen Admins die Konsole mit F1 und geben dort Befehle ein.
| Befehl | Funktion |
|---|---|
status | Zeigt die Spieler online mit ihrer SteamID64. |
say <text> | Schickt eine Nachricht an alle im Chat. |
kick <player> <reason> | Wirft einen Spieler vom Server. |
ban <player> <reason> | Bannt einen Spieler, der online ist. |
banid <SteamID64> <name> <reason> | Bannt per ID, auch Spieler, die offline sind. |
unban <SteamID64> | Hebt einen Bann auf. |
server.save | Speichert die Welt sofort. |
server.writecfg | Schreibt Admins und Banns in den Ordner cfg. |
quit | Speichert und stoppt den Server. |
Für Admin-Arbeit von einem anderen PC aus verbindet sich die Webkonsole von Facepunch unter facepunch.github.io/webrcon mit deinem RCON-Passwort zum RCON-Port. Die Seite läuft über unverschlüsseltes HTTP.
Ports und Firewall
Spieler erreichen das Spiel über UDP 28015. Die Serverliste liest die Serverdaten über den Query-Port, und die Rust+-App spricht per TCP mit dem Server. Mit der Startzeile oben sind das drei Ports: UDP 28015, UDP 28017 und TCP 28082.
Ohne +server.queryport liegt der Port für die Serverliste eins über dem größeren von Spielport und RCON-Port. Unser Testserver ohne rcon.port hat der Liste auf UDP 28016 geantwortet.
Lass sie durch die Windows-Firewall, in PowerShell als Administrator:
New-NetFirewallRule -DisplayName "Rust server (UDP)" -Direction Inbound -Protocol UDP -LocalPort 28015,28017 -Action Allow
New-NetFirewallRule -DisplayName "Rust server (Rust+)" -Direction Inbound -Protocol TCP -LocalPort 28082 -Action AllowLeite im Router dieselben drei Ports an den Server-PC weiter und gib diesem PC eine feste lokale IP. Wähl für jede Regel UDP oder TCP statt einer Einstellung für beides. RCON (TCP 28016) musst du nur weiterleiten, wenn du den Server von außerhalb verwaltest.
Rust+-Begleit-App
Rust+ koppelt Handys über app.port mit dem Server. Ohne +app.port nutzte unser Testserver TCP 28082. Der Port muss 10000 oder höher sein, und eine Änderung braucht einen Neustart.
Beim Start prüft der Server, ob Rust+ ihn von außen erreicht. Schlägt das fehl, wird Rust+ abgeschaltet; unser Testserver ohne offene Ports meldete Rust+ companion server connectivity test failed. Der Server muss außerdem companion-rust.facepunch.com erreichen.
Zeigt Rust+ die falsche Adresse, setz app.publicip auf YOUR-SERVER-IP. Um Rust+ abzuschalten, schreib +app.port 1- in die Startzeile; das Minus steht dort hinter der 1.
Die Datei companion.id im Identity-Ordner ist die Rust+-Identität des Servers. Lösch sie nie und gib sie keinem anderen Server: Alle Spieler müssten neu koppeln, und eine gelöschte Datei lässt sich nicht wiederherstellen.
Dem Server beitreten
Drück im Hauptmenü von Rust F1 und gib ein:
client.connect YOUR-SERVER-IP:28015Im selben Netzwerk wie der Server nimmst du stattdessen seine lokale IP-Adresse (ipconfig zeigt sie an). Sobald der Query-Port offen ist, steht der Server auch im Serverbrowser unter Community, oder unter Modded, wenn er Plugins nutzt, die das Spiel verändern.
Spielstände, Wipes und Updates
Alles, was ein Server speichert, liegt in server\main. Nach einem Start und einem Speichern lag bei uns:
| Datei | Inhalt |
|---|---|
proceduralmap.1000.90817.289.sav | Die Welt: Gebäude, Items und alles Platzierte. 289 kommt aus der Protokollnummer. |
….sav.1 | Der vorherige Spielstand. Der Server behält zwei ältere Kopien (server.savebackupcount 2). |
proceduralmap.1000.90817.289.map | Die generierte Karte, benannt nach Größe, Seed und Protokoll. |
.navmesh, _occlusion_3.dat | Daten, die der Server aus der Karte für KI-Wege und Sichtbarkeit erzeugt. |
player.blueprints.18.db | Blaupausen, die Spieler gelernt haben. |
player.deaths, .identities, .states | Spielerdaten, je eine .db-Datei. |
player.tokens.db | Rust+-Kopplungen. |
clans.289.db, relationship.289.db | Clans und Beziehungen zwischen Spielern. |
sv.files.289.db | Bilder auf Schildern und anderen bemalbaren Items. |
companion.id | Die Rust+-Identität des Servers. |
cfg/ | users.cfg, bans.cfg, serverauto.cfg und deine server.cfg. |
*.db-wal | Neue Änderungen an der .db-Datei daneben. Kopier beide zusammen. |
Für ein Backup führst du server.save aus, stoppst den Server und kopierst den ganzen Identity-Ordner samt den -wal-Dateien. Spiel ihn wegen companion.id nur auf demselben Server zurück.
Wipes
Ein Wipe setzt einen Server auf null. Das monatliche Update von Facepunch erhöht die Protokollnummer in den Spielstandnamen, also erstellt der Server von selbst eine neue Karte: Das ist der Forced Wipe. Benenn keine alte .sav um, um das zu umgehen.
Um die Karte selbst zu wipen, stopp den Server und lösch die .sav- und .map-Dateien, oder ändere server.seed. Für einen Blaupausen-Wipe löschst du gleichzeitig auch player.blueprints.
Der Wipe-Countdown im Spiel steht standardmäßig auf Donnerstag 19:00 Uhr Londoner Zeit. Ändern kannst du ihn mit wipetimer.wipeDayofWeek (0 ist Sonntag, 4 Donnerstag), wipetimer.wipeHourofDay und wipetimer.wipeTimezone.
Updates
Der Rust-Server aktualisiert sich nicht selbst. Stopp ihn nach einem Spielpatch und führ die SteamCMD-Zeile aus dem Installationsschritt erneut aus: Spielstand und Ordner cfg bleiben erhalten. Bis dahin können Spieler mit dem neuen Build nicht beitreten.
Plugins und Mods
Plugins laufen auf einem Community-Framework, Oxide (uMod) oder Carbon. Facepunch dokumentiert beide, entwickelt aber keins. Für Oxide stoppst du den Server, entpackst den Rust-Build von umod.org über den Serverordner und startest neu. Plugins kommen nach oxide/plugins.
Jedes SteamCMD-Update überschreibt die Dateien von Oxide, also installier Oxide nach jedem Update neu. Oxide bringt meist kurz nach einem Rust-Patch einen passenden Build heraus.
Facepunch will Server, deren Plugins das Gameplay ändern oder Oberflächen hinzufügen (Gather-Rates, Kits, Infopanels), unter Modded sehen. Admin-Tools, Anti-Cheat, Chat-Kosmetik und geänderte Vanilla-Convars dürfen in Community bleiben. Bei Regelverstößen fliegt der Server ggf. aus der Liste.
Häufige Probleme
Freunde können sich nicht verbinden
Warte auf Server startup complete. Prüf, ob UDP 28015 an die richtige lokale IP weitergeleitet und in der Firewall freigegeben ist. Aus deinem eigenen Netzwerk verbindest du dich stattdessen über die lokale IP.
Der Server taucht nicht in der Serverliste auf
Leite den Query-Port weiter (UDP 28017 mit unserer Startzeile) und halte ihn vom Spielport getrennt. Ein Server, der noch lädt, wird noch nicht gelistet.
Eine Einstellung in server.cfg wirkt nicht
Prüf die Startzeile. Steht eine Convar an beiden Stellen, gewinnt der Wert aus der Startzeile; auf unserem Testserver wurden maxplayers und hostname aus server.cfg deshalb ignoriert. Setz jede Convar nur an einer Stelle.
Spieler bekommen die Meldung, dass der Server ein Update braucht
Rust hat einen Patch bekommen, der Server nicht. Stopp ihn, führ die SteamCMD-Zeile erneut aus und installier danach Oxide oder Carbon neu, falls du sie nutzt.
Plugins funktionieren nach einem Update nicht mehr
SteamCMD hat die Dateien von Oxide durch die normalen Spieldateien ersetzt. Installier den neuesten Oxide-Build erneut.
Rust+ lässt sich nicht koppeln
app.port muss 10000 oder höher sein und als TCP weitergeleitet werden. Schau im Log nach dem Rust+-Check beim Start, setz app.publicip, wenn die Adresse falsch ist, und lass companion.id, wo sie ist.
Der Server stürzt beim Laden der Karte ab
Ihm fehlt Arbeitsspeicher. Facepunch verlangt 12 GB freien RAM; eine kleinere server.worldsize braucht weniger.
SteamCMD bricht vor dem Download ab
In der Zeile fehlt +login anonymous. Füg es vor +app_update ein. Ohne das endete unser SteamCMD mit Failed to request app info update.
Der Linux-Server beendet sich mit Failed to load module steamclient.so
Führ die export-Zeile aus dem Startschritt in derselben Shell vor ./RustDedicated aus, damit der Server die steamclient.so in seinem eigenen Ordner findet.
Fragen
Muss ich Rust besitzen, um einen Rust-Server zu hosten?
Nein. SteamCMD lädt den Server mit einem anonymen Login herunter. Jeder Spieler braucht Rust auf Steam.
Welchen Port muss ich für einen Rust-Server weiterleiten?
UDP 28015 zum Spielen. Dazu UDP 28017, um in der Serverliste zu erscheinen, und TCP 28082 für Rust+, mit der Startzeile auf dieser Seite.
Wie viel RAM braucht ein Rust-Server?
Facepunch verlangt mindestens 12 GB freien RAM. Unsere kleine 1000-m-Testkarte brauchte ohne Spieler etwa 2,8 GB; größere Karten und mehr Spieler brauchen mehr.
Wie mache ich mich zum Admin auf meinem Rust-Server?
Führ ownerid mit deiner 17-stelligen SteamID64 und einem Namen in der Serverkonsole oder über RCON aus und tritt neu bei. Im Spiel liegt die Konsole auf F1.
Kann ich ein Passwort für einen Rust-Server setzen?
In Vanilla-Rust nicht: Ein Beitrittspasswort gibt es nicht. Auf unserem Testserver listete find password nur RCON-Einstellungen. Um einzuschränken, wer beitreten darf, brauchst du ein Plugin.
Wann wipen Rust-Server?
Facepunch erzwingt mit dem monatlichen Update einen Karten-Wipe, meist am ersten Donnerstag im Monat. Dazwischen wipst du, wann du willst, indem du den Spielstand löschst.
Kann ich einen Rust-Server unter Linux betreiben?
Ja. Den Server gibt es auch für Linux. Wir haben ihn unter Ubuntu 24.04 getestet.
Wikily Servers hostet Rust
Ab 10,99 € im Monat

