Setting up a Rust server looks intimidating at first, but it’s really just a handful of SteamCMD commands. Here’s the process for Windows, Linux, and macOS.
1. Install SteamCMD
SteamCMD is a command-line version of the Steam client, used to install dedicated servers for games like Rust.
Windows: Create a folder at C:\steamcmd, download SteamCMD for Windows, and extract it there.
Linux: Create a dedicated user first (run as root):
useradd -m steam cd /home/steam
Then install the package for your distro:
# Ubuntu/Debian sudo apt install steamcmd # 64-bit systems also need multiverse/i386 support: sudo add-apt-repository multiverse sudo dpkg --add-architecture i386 sudo apt update sudo apt install lib32gcc1 steamcmd # RHEL/CentOS yum install steamcmd
macOS:
mkdir ~/Steam && cd ~/Steam curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_osx.tar.gz" | tar zxvf -
2. Launch SteamCMD
# Windows cd C:\steamcmd steamcmd # Linux cd ~ steamcmd # macOS cd ~/steamcmd ./steamcmd.sh
3. Install the Rust server
Once SteamCMD updates and drops you at the Steam> prompt, log in and download the server files (adjust the install path for your OS):
login anonymous force_install_dir "c:\rustserver\" app_update 258550 quit
This installs a default vanilla Rust server. Save these commands as a .bat or .sh script so you can rerun them whenever the game updates.
4. Run and configure the server
On Windows, a typical launch script (RunServer.bat) looks like this, edit the values to configure your server:
C:\steamcmd\steamcmd.exe +login anonymous +force_install_dir c:\rustserver\ +app_update 258550 +quit RustDedicated.exe -batchmode +server.port 28015 +server.level "Procedural Map" +server.seed 1234 +server.worldsize 4000 +server.maxplayers 10 +server.hostname "Your Server Name" +server.description "Description shown on server connection window." +rcon.port 28016 +rcon.password letmein +rcon.web 1
The settings you’ll most commonly adjust:
| Parameter | Default | Notes |
|---|---|---|
| server.port | 28015 | Port the server listens on |
| server.hostname | none set | Name shown in the server browser |
| rcon.port | 28016 | Port for the remote console service |
| rcon.password | none set | Alphanumeric password for RCon access |
| server.maxplayers | 10 | Maximum concurrent players (up to 2000) |
| server.worldsize | 3000 | Map size in square meters (1000 to 6000) |
| server.seed | 50000 | Base seed used to generate the map |
| server.identity | none set | Instance name, useful if running multiple servers from one install |
Make sure whatever port you choose isn’t already in use by another service (port 80, for example, is commonly taken by web servers). If you’re running multiple Rust instances, give each one its own server.port and rcon.port.
RCon and moderation
RCon (Remote Console) handles admin actions: granting moderator or admin status, spawning items, and more. You can connect with a GUI-based RCon tool, or use the in-game F1 console.
To ban a player from the in-game console, press F1 and run:
ban "name" "reason"
The reason is optional and gets logged to cfg/bans.cfg for future reference.
Rust servers are resource-hungry, especially with a large world size and player count. A dedicated server or a high-tier Windows VPS keeps things running smoothly as your player base grows.